{ "version": 3, "sources": ["src/app/core/services/permission.service.ts"], "sourcesContent": ["import { Injectable } from '@angular/core';\nimport { EAccessProfile } from 'src/app/shared/enums/access-profile.enum';\nimport { AuthStore } from 'src/app/shared/store/auth.store';\nimport { BasicUtils } from 'src/app/shared/utils/basic.utils';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PermissionService {\n constructor(private readonly authStore: AuthStore) {}\n\n get isSpaceToBe(): boolean {\n return !!this.authStore?.authSnapshot?.espacoSer;\n }\n\n hasPermission(profiles: EAccessProfile[]): boolean {\n if (BasicUtils.isEmptyObj(this.authStore?.authSnapshot)) {\n return false;\n }\n\n const { perfisAcesso } = this.authStore.authSnapshot;\n return (\n perfisAcesso.length > 0 &&\n perfisAcesso.some((p) => profiles.includes(p.id))\n );\n }\n\n featuresPermission(features?: string[]): string[] {\n const { features: authFeatures } = this.authStore.authSnapshot || {};\n\n if (!features?.length) {\n return authFeatures || [];\n }\n\n return (\n (authFeatures?.length > 0 &&\n authFeatures?.filter((f) => features.includes(f))) ||\n []\n );\n }\n}\n"], "mappings": ";;;;;;;;;;;;AAQM,IAAO,qBAAP,MAAO,mBAAiB;EAC5B,YAA6B,WAAoB;AAApB,SAAA,YAAA;EAAuB;EAEpD,IAAI,cAAW;AACb,WAAO,CAAC,CAAC,KAAK,WAAW,cAAc;EACzC;EAEA,cAAc,UAA0B;AACtC,QAAI,WAAW,WAAW,KAAK,WAAW,YAAY,GAAG;AACvD,aAAO;IACT;AAEA,UAAM,EAAE,aAAY,IAAK,KAAK,UAAU;AACxC,WACE,aAAa,SAAS,KACtB,aAAa,KAAK,CAAC,MAAM,SAAS,SAAS,EAAE,EAAE,CAAC;EAEpD;EAEA,mBAAmB,UAAmB;AACpC,UAAM,EAAE,UAAU,aAAY,IAAK,KAAK,UAAU,gBAAgB,CAAA;AAElE,QAAI,CAAC,UAAU,QAAQ;AACrB,aAAO,gBAAgB,CAAA;IACzB;AAEA,WACG,cAAc,SAAS,KACtB,cAAc,OAAO,CAAC,MAAM,SAAS,SAAS,CAAC,CAAC,KAClD,CAAA;EAEJ;;;mCA/BW,oBAAiB,mBAAA,SAAA,CAAA;AAAA;sFAAjB,oBAAiB,SAAjB,mBAAiB,WAAA,YAFhB,OAAM,CAAA;AAEd,IAAO,oBAAP;", "names": [] }