From f34ba86dcf04d4666399d0b0e689879a4f826151 Mon Sep 17 00:00:00 2001 From: sumeyyeKurtulus Date: Mon, 28 Oct 2024 08:05:46 +0300 Subject: [PATCH] update: guards and resolvers with the injection cycle --- .../account/src/lib/guards/extensions.guard.ts | 11 +++++------ .../account/src/lib/resolvers/extensions.resolver.ts | 10 ++++------ .../identity/src/lib/guards/extensions.guard.ts | 11 +++++------ .../identity/src/lib/resolvers/extensions.resolver.ts | 10 ++++------ .../src/lib/guards/extensions.guard.ts | 11 +++++------ .../src/lib/resolvers/extensions.resolver.ts | 10 ++++------ 6 files changed, 27 insertions(+), 36 deletions(-) diff --git a/npm/ng-packs/packages/account/src/lib/guards/extensions.guard.ts b/npm/ng-packs/packages/account/src/lib/guards/extensions.guard.ts index a67db6c7b9..7e0254d7b4 100644 --- a/npm/ng-packs/packages/account/src/lib/guards/extensions.guard.ts +++ b/npm/ng-packs/packages/account/src/lib/guards/extensions.guard.ts @@ -1,7 +1,7 @@ -import { Injectable, inject } from '@angular/core'; +import { Injectable, Injector, inject } from '@angular/core'; import { Observable } from 'rxjs'; import { tap, map } from 'rxjs/operators'; -import { ConfigStateService, IAbpGuard, PermissionService } from '@abp/ng.core'; +import { IAbpGuard } from '@abp/ng.core'; import { ExtensionsService, getObjectExtensionEntitiesFromStore, @@ -20,8 +20,7 @@ import { eAccountComponents } from '../enums/components'; */ @Injectable() export class AccountExtensionsGuard implements IAbpGuard { - protected readonly configState = inject(ConfigStateService); - protected readonly permmission = inject(PermissionService); + protected readonly injector = inject(Injector); protected readonly extensions = inject(ExtensionsService); canActivate(): Observable { @@ -29,11 +28,11 @@ export class AccountExtensionsGuard implements IAbpGuard { const editFormContributors = inject(ACCOUNT_EDIT_FORM_PROP_CONTRIBUTORS, config) || {}; - return getObjectExtensionEntitiesFromStore(this.configState, 'Identity').pipe( + return getObjectExtensionEntitiesFromStore(this.injector, 'Identity').pipe( map(entities => ({ [eAccountComponents.PersonalSettings]: entities.User, })), - mapEntitiesToContributors(this.configState, this.permmission, 'AbpIdentity'), + mapEntitiesToContributors(this.injector, 'AbpIdentity'), tap(objectExtensionContributors => { mergeWithDefaultProps( this.extensions.editFormProps, diff --git a/npm/ng-packs/packages/account/src/lib/resolvers/extensions.resolver.ts b/npm/ng-packs/packages/account/src/lib/resolvers/extensions.resolver.ts index e744e98442..623de9f49c 100644 --- a/npm/ng-packs/packages/account/src/lib/resolvers/extensions.resolver.ts +++ b/npm/ng-packs/packages/account/src/lib/resolvers/extensions.resolver.ts @@ -1,7 +1,6 @@ -import { inject } from '@angular/core'; +import { inject, Injector } from '@angular/core'; import { ResolveFn } from '@angular/router'; import { map, tap } from 'rxjs'; -import { ConfigStateService, PermissionService } from '@abp/ng.core'; import { ExtensionsService, getObjectExtensionEntitiesFromStore, @@ -12,19 +11,18 @@ import { eAccountComponents } from '../enums'; import { ACCOUNT_EDIT_FORM_PROP_CONTRIBUTORS, DEFAULT_ACCOUNT_FORM_PROPS } from '../tokens'; export const accountExtensionsResolver: ResolveFn = () => { - const configState = inject(ConfigStateService); - const permission = inject(PermissionService); + const injector = inject(Injector); const extensions = inject(ExtensionsService); const config = { optional: true }; const editFormContributors = inject(ACCOUNT_EDIT_FORM_PROP_CONTRIBUTORS, config) || {}; - return getObjectExtensionEntitiesFromStore(configState, 'Identity').pipe( + return getObjectExtensionEntitiesFromStore(injector, 'Identity').pipe( map(entities => ({ [eAccountComponents.PersonalSettings]: entities.User, })), - mapEntitiesToContributors(configState, permission, 'AbpIdentity'), + mapEntitiesToContributors(injector, 'AbpIdentity'), tap(objectExtensionContributors => { mergeWithDefaultProps( extensions.editFormProps, diff --git a/npm/ng-packs/packages/identity/src/lib/guards/extensions.guard.ts b/npm/ng-packs/packages/identity/src/lib/guards/extensions.guard.ts index 5d78bba9fb..5b18b126d5 100644 --- a/npm/ng-packs/packages/identity/src/lib/guards/extensions.guard.ts +++ b/npm/ng-packs/packages/identity/src/lib/guards/extensions.guard.ts @@ -5,8 +5,8 @@ import { mergeWithDefaultActions, mergeWithDefaultProps, } from '@abp/ng.components/extensible'; -import { ConfigStateService, IAbpGuard, PermissionService } from '@abp/ng.core'; -import { Injectable, inject } from '@angular/core'; +import { IAbpGuard } from '@abp/ng.core'; +import { Injectable, Injector, inject } from '@angular/core'; import { Observable } from 'rxjs'; import { map, tap } from 'rxjs/operators'; @@ -30,8 +30,7 @@ import { */ @Injectable() export class IdentityExtensionsGuard implements IAbpGuard { - protected readonly configState = inject(ConfigStateService); - protected readonly permission = inject(PermissionService); + protected readonly injector = inject(Injector); protected readonly extensions = inject(ExtensionsService); canActivate(): Observable { @@ -43,12 +42,12 @@ export class IdentityExtensionsGuard implements IAbpGuard { const createFormContributors = inject(IDENTITY_CREATE_FORM_PROP_CONTRIBUTORS, config) || {}; const editFormContributors = inject(IDENTITY_EDIT_FORM_PROP_CONTRIBUTORS, config) || {}; - return getObjectExtensionEntitiesFromStore(this.configState, 'Identity').pipe( + return getObjectExtensionEntitiesFromStore(this.injector, 'Identity').pipe( map(entities => ({ [eIdentityComponents.Roles]: entities.Role, [eIdentityComponents.Users]: entities.User, })), - mapEntitiesToContributors(this.configState, this.permission, 'AbpIdentity'), + mapEntitiesToContributors(this.injector, 'AbpIdentity'), tap(objectExtensionContributors => { mergeWithDefaultActions( this.extensions.entityActions, diff --git a/npm/ng-packs/packages/identity/src/lib/resolvers/extensions.resolver.ts b/npm/ng-packs/packages/identity/src/lib/resolvers/extensions.resolver.ts index 812a63d3f7..7dac7979cb 100644 --- a/npm/ng-packs/packages/identity/src/lib/resolvers/extensions.resolver.ts +++ b/npm/ng-packs/packages/identity/src/lib/resolvers/extensions.resolver.ts @@ -5,8 +5,7 @@ import { mergeWithDefaultActions, mergeWithDefaultProps, } from '@abp/ng.components/extensible'; -import { ConfigStateService, PermissionService } from '@abp/ng.core'; -import { inject } from '@angular/core'; +import { inject, Injector } from '@angular/core'; import { ResolveFn } from '@angular/router'; import { map, tap } from 'rxjs'; import { eIdentityComponents } from '../enums'; @@ -24,8 +23,6 @@ import { } from '../tokens'; export const identityExtensionsResolver: ResolveFn = () => { - const configState = inject(ConfigStateService); - const permission = inject(PermissionService); const extensions = inject(ExtensionsService); const config = { optional: true }; @@ -36,12 +33,13 @@ export const identityExtensionsResolver: ResolveFn = () => { const createFormContributors = inject(IDENTITY_CREATE_FORM_PROP_CONTRIBUTORS, config) || {}; const editFormContributors = inject(IDENTITY_EDIT_FORM_PROP_CONTRIBUTORS, config) || {}; - return getObjectExtensionEntitiesFromStore(configState, 'Identity').pipe( + const injector = inject(Injector); + return getObjectExtensionEntitiesFromStore(injector, 'Identity').pipe( map(entities => ({ [eIdentityComponents.Roles]: entities.Role, [eIdentityComponents.Users]: entities.User, })), - mapEntitiesToContributors(configState, permission, 'AbpIdentity'), + mapEntitiesToContributors(injector, 'AbpIdentity'), tap(objectExtensionContributors => { mergeWithDefaultActions( extensions.entityActions, diff --git a/npm/ng-packs/packages/tenant-management/src/lib/guards/extensions.guard.ts b/npm/ng-packs/packages/tenant-management/src/lib/guards/extensions.guard.ts index 0b140f8de8..5d61aa01ae 100644 --- a/npm/ng-packs/packages/tenant-management/src/lib/guards/extensions.guard.ts +++ b/npm/ng-packs/packages/tenant-management/src/lib/guards/extensions.guard.ts @@ -5,8 +5,8 @@ import { mergeWithDefaultActions, mergeWithDefaultProps, } from '@abp/ng.components/extensible'; -import { ConfigStateService, IAbpGuard, PermissionService } from '@abp/ng.core'; -import { Injectable, inject } from '@angular/core'; +import { IAbpGuard } from '@abp/ng.core'; +import { Injectable, Injector, inject } from '@angular/core'; import { Observable } from 'rxjs'; import { map, tap } from 'rxjs/operators'; @@ -30,8 +30,7 @@ import { */ @Injectable() export class TenantManagementExtensionsGuard implements IAbpGuard { - protected readonly configState = inject(ConfigStateService); - protected readonly permission = inject(PermissionService); + protected readonly injector = inject(Injector); protected readonly extensions = inject(ExtensionsService); canActivate(): Observable { @@ -45,11 +44,11 @@ export class TenantManagementExtensionsGuard implements IAbpGuard { const editFormContributors = inject(TENANT_MANAGEMENT_EDIT_FORM_PROP_CONTRIBUTORS, config) || {}; - return getObjectExtensionEntitiesFromStore(this.configState, 'TenantManagement').pipe( + return getObjectExtensionEntitiesFromStore(this.injector, 'TenantManagement').pipe( map(entities => ({ [eTenantManagementComponents.Tenants]: entities.Tenant, })), - mapEntitiesToContributors(this.configState, this.permission, 'TenantManagement'), + mapEntitiesToContributors(this.injector, 'TenantManagement'), tap(objectExtensionContributors => { mergeWithDefaultActions( this.extensions.entityActions, diff --git a/npm/ng-packs/packages/tenant-management/src/lib/resolvers/extensions.resolver.ts b/npm/ng-packs/packages/tenant-management/src/lib/resolvers/extensions.resolver.ts index 98e3f34aa6..0f4fc190a3 100644 --- a/npm/ng-packs/packages/tenant-management/src/lib/resolvers/extensions.resolver.ts +++ b/npm/ng-packs/packages/tenant-management/src/lib/resolvers/extensions.resolver.ts @@ -5,8 +5,7 @@ import { mergeWithDefaultActions, mergeWithDefaultProps, } from '@abp/ng.components/extensible'; -import { ConfigStateService, PermissionService } from '@abp/ng.core'; -import { inject } from '@angular/core'; +import { inject, Injector } from '@angular/core'; import { ResolveFn } from '@angular/router'; import { map, tap } from 'rxjs'; import { eTenantManagementComponents } from '../enums'; @@ -24,8 +23,7 @@ import { } from '../tokens'; export const tenantManagementExtensionsResolver: ResolveFn = () => { - const configState = inject(ConfigStateService); - const permission = inject(PermissionService); + const injector = inject(Injector); const extensions = inject(ExtensionsService); const config = { optional: true }; @@ -37,11 +35,11 @@ export const tenantManagementExtensionsResolver: ResolveFn = () => { inject(TENANT_MANAGEMENT_CREATE_FORM_PROP_CONTRIBUTORS, config) || {}; const editFormContributors = inject(TENANT_MANAGEMENT_EDIT_FORM_PROP_CONTRIBUTORS, config) || {}; - return getObjectExtensionEntitiesFromStore(configState, 'TenantManagement').pipe( + return getObjectExtensionEntitiesFromStore(injector, 'TenantManagement').pipe( map(entities => ({ [eTenantManagementComponents.Tenants]: entities.Tenant, })), - mapEntitiesToContributors(configState, permission, 'TenantManagement'), + mapEntitiesToContributors(injector, 'TenantManagement'), tap(objectExtensionContributors => { mergeWithDefaultActions( extensions.entityActions,