From aa6a7589374eb2d076336631e5184912c69e1afd Mon Sep 17 00:00:00 2001 From: Mahmut Gundogdu Date: Thu, 11 Aug 2022 14:49:28 +0300 Subject: [PATCH] Add Conditional visibility on Delete action of identity/User.component --- .../src/lib/defaults/default-users-entity-actions.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/npm/ng-packs/packages/identity/src/lib/defaults/default-users-entity-actions.ts b/npm/ng-packs/packages/identity/src/lib/defaults/default-users-entity-actions.ts index 0bd21c571b..8f6e3ebcc7 100644 --- a/npm/ng-packs/packages/identity/src/lib/defaults/default-users-entity-actions.ts +++ b/npm/ng-packs/packages/identity/src/lib/defaults/default-users-entity-actions.ts @@ -1,6 +1,7 @@ -import { IdentityUserDto } from '@abp/ng.identity/proxy'; +import {IdentityUserDto} from '@abp/ng.identity/proxy'; import { EntityAction } from '@abp/ng.theme.shared/extensions'; import { UsersComponent } from '../components/users/users.component'; +import {ConfigStateService, CurrentUserDto} from "@abp/ng.core"; export const DEFAULT_USERS_ENTITY_ACTIONS = EntityAction.createMany([ { @@ -18,13 +19,18 @@ export const DEFAULT_USERS_ENTITY_ACTIONS = EntityAction.createMany { const component = data.getInjected(UsersComponent); component.delete(data.record.id, data.record.name || data.record.userName); }, + visible: data => { + const userName = data.record.userName; + const configStateService = data.getInjected(ConfigStateService) + const currentUser = configStateService.getOne("currentUser") as CurrentUserDto; + return userName !== currentUser.userName; + }, permission: 'AbpIdentity.Users.Delete', }, ]);