{"version":3,"file":"ngx-check-permission.mjs","sources":["../../../projects/ngx-check-permission/src/lib/ngx-check-permission.service.ts","../../../projects/ngx-check-permission/src/lib/ngx-check-permission.component.ts","../../../projects/ngx-check-permission/src/public-api.ts","../../../projects/ngx-check-permission/src/ngx-check-permission.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n  providedIn: 'root',\n})\nexport class NgxCheckPermissionService {\n  constructor() { }\n  private permissionsNames = [\n    'geolocation',\n    'notifications',\n    'push',\n    'midi',\n    'camera',\n    'microphone',\n    'speaker',\n    'device-info',\n    'background-fetch',\n    'background-sync',\n    'bluetooth',\n    'persistent-storage',\n    'ambient-light-sensor',\n    'accelerometer',\n    'gyroscope',\n    'magnetometer',\n    'clipboard',\n    'display-capture',\n    'nfc',\n  ];\n\n  public async getAllPermissions() {\n    const allPermissions: any = [];\n    // We use Promise.all to wait until all the permission queries are resolved\n    await Promise.all(\n      this.permissionsNames.map(async (permissionName: any) => {\n        try {\n          let permission;\n          switch (permissionName) {\n            case 'push':\n              // Not necessary but right now Chrome only supports push messages with  notifications\n              permission = await navigator.permissions.query({\n                name: permissionName,\n              });\n              break;\n            default:\n              permission = await navigator.permissions.query({\n                name: permissionName,\n              });\n          }\n          allPermissions.push({ permissionName, state: permission.state });\n        } catch (e: any) {\n          allPermissions.push({\n            permissionName,\n            state: 'error',\n            errorMessage: e.toString(),\n          });\n        }\n      })\n    );\n    return allPermissions;\n  }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n    selector: 'lib-ngx-check-permission',\n    template: `\n    <p>\n      ngx-check-permission works!\n    </p>\n  `,\n    styles: [],\n    standalone: true\n})\nexport class NgxCheckPermissionComponent {\n\n}\n","/*\n * Public API Surface of ngx-check-permission\n */\n\nexport * from './lib/ngx-check-permission.service';\nexport * from './lib/ngx-check-permission.component';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAKa,yBAAyB,CAAA;AACpC,IAAA,WAAA,GAAA;AACQ,QAAA,IAAA,CAAA,gBAAgB,GAAG;YACzB,aAAa;YACb,eAAe;YACf,MAAM;YACN,MAAM;YACN,QAAQ;YACR,YAAY;YACZ,SAAS;YACT,aAAa;YACb,kBAAkB;YAClB,iBAAiB;YACjB,WAAW;YACX,oBAAoB;YACpB,sBAAsB;YACtB,eAAe;YACf,WAAW;YACX,cAAc;YACd,WAAW;YACX,iBAAiB;YACjB,KAAK;SACN;IArBe;AAuBT,IAAA,MAAM,iBAAiB,GAAA;QAC5B,MAAM,cAAc,GAAQ,EAAE;;AAE9B,QAAA,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,cAAmB,KAAI;AACtD,YAAA,IAAI;AACF,gBAAA,IAAI,UAAU;gBACd,QAAQ,cAAc;AACpB,oBAAA,KAAK,MAAM;;AAET,wBAAA,UAAU,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC;AAC7C,4BAAA,IAAI,EAAE,cAAc;AACrB,yBAAA,CAAC;wBACF;AACF,oBAAA;AACE,wBAAA,UAAU,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC;AAC7C,4BAAA,IAAI,EAAE,cAAc;AACrB,yBAAA,CAAC;;AAEN,gBAAA,cAAc,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC;YAClE;YAAE,OAAO,CAAM,EAAE;gBACf,cAAc,CAAC,IAAI,CAAC;oBAClB,cAAc;AACd,oBAAA,KAAK,EAAE,OAAO;AACd,oBAAA,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE;AAC3B,iBAAA,CAAC;YACJ;QACF,CAAC,CAAC,CACH;AACD,QAAA,OAAO,cAAc;IACvB;+GAtDW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yBAAyB,cAFxB,MAAM,EAAA,CAAA,CAAA;;4FAEP,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAHrC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MCQY,2BAA2B,CAAA;+GAA3B,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAR1B;;;;AAIX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;4FAIU,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAVvC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,0BAA0B,EAAA,QAAA,EAC1B;;;;AAIX,EAAA,CAAA,EAAA,UAAA,EAEa,IAAI,EAAA;;;ACVpB;;AAEG;;ACFH;;AAEG;;;;"}