From 183b4a7058dfb70f7e48007707e6ef68dde27d09 Mon Sep 17 00:00:00 2001 From: muhammedaltug Date: Tue, 2 Feb 2021 17:40:01 +0300 Subject: [PATCH] Permission service should filter granted policies from list of policy resolve #7572 --- .../core/src/lib/services/permission.service.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/npm/ng-packs/packages/core/src/lib/services/permission.service.ts b/npm/ng-packs/packages/core/src/lib/services/permission.service.ts index c549c5a7a8..af6a8e3d46 100644 --- a/npm/ng-packs/packages/core/src/lib/services/permission.service.ts +++ b/npm/ng-packs/packages/core/src/lib/services/permission.service.ts @@ -19,6 +19,17 @@ export class PermissionService { return this.isPolicyGranted(key, policies); } + filterGrantedPolicies(policyKeys: Array) { + const policies = this.getSnapshot(); + return policyKeys.filter(key => this.isPolicyGranted(key, policies)); + } + + filterGrantedPolicies$(policyKeys: Array) { + return this.getStream().pipe( + map(policies => policyKeys.filter(key => this.isPolicyGranted(key, policies))), + ); + } + protected isPolicyGranted(key: string, grantedPolicies: Record) { if (!key) return true;