@ -81,7 +81,7 @@ export class PermissionManagementComponent
} ) ;
} ) ;
} ) ;
} ) ;
} else {
} else {
this . selectedGroup = null ;
this . setSelectedGroup ( null ) ;
this . _visible = false ;
this . _visible = false ;
this . visibleChange . emit ( false ) ;
this . visibleChange . emit ( false ) ;
}
}
@ -110,10 +110,22 @@ export class PermissionManagementComponent
modalBusy = false ;
modalBusy = false ;
selectedGroupPermissions : PermissionWithStyle [ ] = [ ] ;
trackByFn : TrackByFunction < PermissionGroupDto > = ( _ , item ) = > item . name ;
trackByFn : TrackByFunction < PermissionGroupDto > = ( _ , item ) = > item . name ;
get selectedGroupPermissions ( ) : PermissionWithStyle [ ] {
constructor ( protected service : PermissionsService , protected configState : ConfigStateService ) { }
if ( ! this . selectedGroup ) return [ ] ;
getChecked ( name : string ) {
return ( this . permissions . find ( per = > per . name === name ) || { isGranted : false } ) . isGranted ;
}
setSelectedGroup ( group : PermissionGroupDto ) {
this . selectedGroup = group ;
if ( ! this . selectedGroup ) {
this . selectedGroupPermissions = [ ] ;
return ;
}
const margin = ` margin- ${
const margin = ` margin- ${
( document . body . dir as LocaleDirection ) === 'rtl' ? 'right' : 'left'
( document . body . dir as LocaleDirection ) === 'rtl' ? 'right' : 'left'
@ -123,7 +135,7 @@ export class PermissionManagementComponent
group = > group . name === this . selectedGroup . name ,
group = > group . name === this . selectedGroup . name ,
) . permissions ;
) . permissions ;
return permissions . map (
this . selectedGroupPermissions = permissions . map (
permission = >
permission = >
( {
( {
. . . permission ,
. . . permission ,
@ -133,12 +145,6 @@ export class PermissionManagementComponent
) ;
) ;
}
}
constructor ( protected service : PermissionsService , protected configState : ConfigStateService ) { }
getChecked ( name : string ) {
return ( this . permissions . find ( per = > per . name === name ) || { isGranted : false } ) . isGranted ;
}
setDisabled ( permissions : PermissionGrantInfoDto [ ] ) {
setDisabled ( permissions : PermissionGrantInfoDto [ ] ) {
if ( permissions . length ) {
if ( permissions . length ) {
this . disableSelectAllTab = permissions . every (
this . disableSelectAllTab = permissions . every (
@ -248,7 +254,7 @@ export class PermissionManagementComponent
onChangeGroup ( group : PermissionGroupDto ) {
onChangeGroup ( group : PermissionGroupDto ) {
this . setDisabled ( group . permissions ) ;
this . setDisabled ( group . permissions ) ;
this . selectedGroup = group ;
this . setSelectedGroup ( group ) ;
this . setTabCheckboxState ( ) ;
this . setTabCheckboxState ( ) ;
}
}
@ -291,8 +297,8 @@ export class PermissionManagementComponent
return this . service . get ( this . providerName , this . providerKey ) . pipe (
return this . service . get ( this . providerName , this . providerKey ) . pipe (
tap ( ( permissionRes : GetPermissionListResultDto ) = > {
tap ( ( permissionRes : GetPermissionListResultDto ) = > {
this . data = permissionRes ;
this . data = permissionRes ;
this . selectedGroup = permissionRes . groups [ 0 ] ;
this . permissions = getPermissions ( permissionRes . groups ) ;
this . permissions = getPermissions ( permissionRes . groups ) ;
this . setSelectedGroup ( permissionRes . groups [ 0 ] ) ;
this . disabledSelectAllInAllTabs = this . permissions . every (
this . disabledSelectAllInAllTabs = this . permissions . every (
per = >
per = >
per . isGranted &&
per . isGranted &&