diff --git a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts index 53779cd867..34c12bc99c 100644 --- a/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts +++ b/npm/ng-packs/packages/permission-management/src/lib/components/permission-management.component.ts @@ -153,8 +153,8 @@ export class PermissionManagementComponent this.permissions = this.permissions.map(per => { if (clickedPermission.name === per.name) { return { ...per, isGranted: !per.isGranted }; - } else if (clickedPermission.name === per.parentName) { - return { ...per, isGranted: !clickedPermission.isGranted }; + } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) { + return { ...per, isGranted: false }; } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) { return { ...per, isGranted: true }; } @@ -166,7 +166,7 @@ export class PermissionManagementComponent if(childrens.length > 0 && childrens.every(x => !x.isGranted)){ return { ...per, isGranted: false }; } - return per + return per }); this.setTabCheckboxState(); this.setGrantCheckboxState();