{"version":3,"sources":["jsdelivr-header.js","/projects/ngx-check-permission/src/lib/ngx-check-permission.service.ts","/projects/ngx-check-permission/src/lib/ngx-check-permission.component.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,8HCDa,MAAA,EACX,WAAA,GACQ,KAAA,iBAAmB,CACzB,cACA,gBACA,OACA,OACA,SACA,aACA,UACA,cACA,mBACA,kBACA,YACA,qBACA,uBACA,gBACA,YACA,eACA,YACA,kBACA,MApBe,CAuBV,uBAAM,GACX,MAAM,EAAsB,GA4B5B,aA1BM,QAAQ,IACZ,KAAK,iBAAiB,KAAI,MAAO,IAC/B,IACE,IAAI,EASA,QAAmB,UAAU,YAAY,MAAM,CAC7C,KAAM,IAGZ,EAAe,KAAK,CAAE,iBAAgB,MAAO,EAAW,OACzD,CAAC,MAAO,GACP,EAAe,KAAK,CAClB,iBACA,MAAO,QACP,aAAc,EAAE,YAEnB,MAGE,CACR,QAtDU,KAAA,KAAA,EAAA,oBAAA,WAAA,SAAA,QAAA,SAAA,SAAA,EAAA,KAAA,EAAyB,KAAA,GAAA,OAAA,EAAA,gBAAA,YAAA,QAAzB,KAAA,MAAA,EAAA,uBAAA,WAAA,SAAA,QAAA,SAAA,SAAA,EAAA,KAAA,EAFC,WAAA,QAAM,E,iFAEP,EAAyB,WAAA,E,KAHrC,EAAW,KAAA,EACV,WAAY,W,wBCSD,MAAA,SAAA,KAAA,KAAA,EAAA,oBAAA,WAAA,SAAA,QAAA,SAAA,SAAA,EAAA,KAAA,EAA2B,KAAA,GAAA,OAAA,EAAA,gBAAA,WAAA,QAA3B,KAAA,KAAA,EAAA,sBAAA,WAAA,SAAA,QAAA,SAAA,KAAA,EARC,cAAA,EAAA,SAAA,2BAAA,SAAA,EAAA,SAAA,6DAIX,UAAA,K,iFAIU,EAA2B,WAAA,E,KAVvC,EACa,KAAA,EAAA,SAAA,2BACA,SAAA,6DAIX,YAEa,e","file":"/npm/ngx-check-permission@3.0.13/fesm2022/ngx-check-permission.mjs/+esm","sourceRoot":"","sourcesContent":["/**\n * Bundled by jsDelivr using Rollup v2.79.2 and Terser v5.39.0.\n * Original file: /npm/ngx-check-permission@3.0.13/fesm2022/ngx-check-permission.mjs\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","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"]}