diff --git a/npm/ng-packs/packages/theme-shared/extensions/src/lib/components/extensible-table/extensible-table.component.html b/npm/ng-packs/packages/theme-shared/extensions/src/lib/components/extensible-table/extensible-table.component.html index ebbece2277..81e2845ac0 100644 --- a/npm/ng-packs/packages/theme-shared/extensions/src/lib/components/extensible-table/extensible-table.component.html +++ b/npm/ng-packs/packages/theme-shared/extensions/src/lib/components/extensible-table/extensible-table.component.html @@ -1,6 +1,6 @@ implements OnChanges { readonly trackByFn: TrackByFunction> = (_, item) => item.name; + hasAtLeastOnePermittedAction: boolean; + constructor( @Inject(LOCALE_ID) private locale: string, private config: ConfigStateService, @@ -75,8 +78,14 @@ export class ExtensibleTableComponent implements OnChanges { const extensions = injector.get(ExtensionsService); const name = injector.get(EXTENSIONS_IDENTIFIER); this.propList = extensions.entityProps.get(name).props; - this.actionList = (extensions['entityActions'].get(name) - .actions as unknown) as EntityActionList; + this.actionList = extensions['entityActions'].get(name) + .actions as unknown as EntityActionList; + + const permissionService = injector.get(PermissionService); + this.hasAtLeastOnePermittedAction = + permissionService.filterItemsByPolicy( + this.actionList.toArray().map(action => ({ requiredPolicy: action.permission })), + ).length > 0; this.setColumnWidths(DEFAULT_ACTIONS_COLUMN_WIDTH); }