diff --git a/.eslintrc.yml b/.eslintrc.yml index 1be81f940..872329d62 100644 --- a/.eslintrc.yml +++ b/.eslintrc.yml @@ -20,6 +20,7 @@ globals: 'atob': readonly 'btoa': readonly 'Blob': readonly + 'crypto': readonly overrides: - files: test/**/* diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 94fdeb543..0300f88a8 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,3 +1,3 @@ * @are @raipubnub @mohitpubnub @parfeon -.travis/* @parfeon @are @raipubnub -README.md @techwritermat +.github/* @parfeon @are @raipubnub @mohitpubnub +README.md @techwritermat @kazydek diff --git a/.github/workflows/commands-handler.yml b/.github/workflows/commands-handler.yml index e6257403d..e5196c1be 100644 --- a/.github/workflows/commands-handler.yml +++ b/.github/workflows/commands-handler.yml @@ -7,7 +7,7 @@ on: jobs: process: name: Process command - if: ${{ github.event.issue.pull_request && startsWith(github.event.comment.body, '@client-engineering-bot ') }} + if: ${{ github.event.issue.pull_request && endsWith(github.repository, '-private') != true && startsWith(github.event.comment.body, '@client-engineering-bot ') }} runs-on: ubuntu-latest steps: - name: Checkout repository @@ -16,13 +16,12 @@ jobs: uses: actions/checkout@v2 with: repository: pubnub/client-engineering-deployment-tools - ref: github-actions + ref: v1 token: ${{ secrets.GH_TOKEN }} - path: ".github/.release/actions" - - name: Run changelogs actions - uses: "./.github/.release/actions/actions/commands" + path: .github/.release/actions + - name: Process changelog entries + uses: ./.github/.release/actions/actions/commands with: token: ${{ secrets.GH_TOKEN }} listener: client-engineering-bot - publisher-name: Serhii Mamontov - publisher-email: parfeon@me.com + jira-api-key: ${{ secrets.JIRA_API_KEY }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 71b4cfcd5..201e29f29 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,16 +1,16 @@ -name: Automated project release +name: Automated product release on: pull_request: branches: [ master ] types: [ closed ] + jobs: check-release: name: Check release required runs-on: ubuntu-latest - # Uncomment this to run job only for merge (not PR close). -# if: ${{ github.event.pull_request.merged }} + if: ${{ github.event.pull_request.merged && endsWith(github.repository, '-private') != true }} outputs: release: ${{ steps.check.outputs.ready }} steps: @@ -18,12 +18,12 @@ jobs: uses: actions/checkout@v2 with: repository: pubnub/client-engineering-deployment-tools - ref: github-actions + ref: v1 token: ${{ secrets.GH_TOKEN }} - path: ".github/.release/actions" + path: .github/.release/actions - id: check name: Check pre-release completed - uses: "./.github/.release/actions/actions/checks/release" + uses: ./.github/.release/actions/actions/checks/release with: token: ${{ secrets.GH_TOKEN }} publish: @@ -41,9 +41,30 @@ jobs: uses: actions/checkout@v2 with: repository: pubnub/client-engineering-deployment-tools - ref: github-actions + ref: v1 + token: ${{ secrets.GH_TOKEN }} + path: .github/.release/actions + - name: Publish to S3 + uses: ./.github/.release/actions/actions/services/aws + with: + token: ${{ secrets.GH_TOKEN }} + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + content-type: application/javascript + content-encoding: gzip + acl: public-read + local-path: upload/gzip/*.js + remote-path: pubnub/sdk/javascript + - name: Publish to NPM + uses: ./.github/.release/actions/actions/services/npm + with: + token: ${{ secrets.GH_TOKEN }} + npm-token: ${{ secrets.NPM_TOKEN }} + check-ownership: false + - name: Create Release + uses: ./.github/.release/actions/actions/services/github-release + with: token: ${{ secrets.GH_TOKEN }} - path: ".github/.release/actions" - - name: Run release actions - # Intentional fail, because credentials not specified. - uses: "./.github/.release/actions/actions/services/npm" + artifacts-folder: upload/normal/ + jira-api-key: ${{ secrets.JIRA_API_KEY }} + last-service: true diff --git a/.github/workflows/release/pre-github-release-publish.sh b/.github/workflows/release/pre-github-release-publish.sh new file mode 100644 index 000000000..4e0fe80ff --- /dev/null +++ b/.github/workflows/release/pre-github-release-publish.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +set -e + +# Check whether previous builds already generated artifacts or not. +if ! [[ -d "$(pwd)/upload" ]]; then + npm ci + gulp compile +fi \ No newline at end of file diff --git a/.github/workflows/release/pre-publish.js b/.github/workflows/release/pre-publish.js deleted file mode 100644 index afcee9204..000000000 --- a/.github/workflows/release/pre-publish.js +++ /dev/null @@ -1 +0,0 @@ -console.log('>>>> Hello from JS') \ No newline at end of file diff --git a/.github/workflows/release/pre-publish.sh b/.github/workflows/release/pre-publish.sh old mode 100644 new mode 100755 index 02e707c1c..c161b6cd3 --- a/.github/workflows/release/pre-publish.sh +++ b/.github/workflows/release/pre-publish.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash set -e -echo "Hello from bash $(date)!" -echo "Hello from bash $(date)!" > "./generated.txt" \ No newline at end of file +npm ci +gulp compile \ No newline at end of file diff --git a/.github/workflows/release/pre-s3-publish.sh b/.github/workflows/release/pre-s3-publish.sh new file mode 100755 index 000000000..4e0fe80ff --- /dev/null +++ b/.github/workflows/release/pre-s3-publish.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +set -e + +# Check whether previous builds already generated artifacts or not. +if ! [[ -d "$(pwd)/upload" ]]; then + npm ci + gulp compile +fi \ No newline at end of file diff --git a/.github/workflows/release/products.json b/.github/workflows/release/products.json deleted file mode 100644 index 71b2c7429..000000000 --- a/.github/workflows/release/products.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "project-1": { - "path": "project1", - "name": "Monorepo demo" - } -} \ No newline at end of file diff --git a/.github/workflows/release/versions.json b/.github/workflows/release/versions.json index bdb8e5de5..83d23bc99 100644 --- a/.github/workflows/release/versions.json +++ b/.github/workflows/release/versions.json @@ -1,26 +1,42 @@ { - "README.md": [ + ".pubnub.yml": [ + { + "pattern": "^version: \"(v?(\\d+\\.?){2,}([a-zA-Z0-9-]+(\\.?\\d+)?)?)\"$", + "clearedPrefix": true, + "clearedSuffix": false + }, + { "pattern": "\/refs\/tags\/(v?(\\d+\\.?){2,}([a-zA-Z0-9-]+(\\.?\\d+)?)?)\\.zip", "cleared": false }, + { "pattern": "\/releases\/download\/(v?(\\d+\\.?){2,}([a-zA-Z0-9-]+(\\.?\\d+)?)?)\/", "cleared": false }, { - "pattern": "sdk\/javascript\/pubnub\\.((\\d+\\.?){2,})(.min)?\\.js$", - "cleared": true + "pattern": "\/releases\/download\/.+\/pubnub\\.(v?(\\d+\\.?){2,}([a-zA-Z0-9-]+(\\.?\\d+)?)?)\\.js$", + "clearedPrefix": true, + "clearedSuffix": false } ], - "src/core/components/config.js": [ + "package.json": [ { - "pattern": "^\\s{2,}return '((\\d+\\.?){2,})';$", - "cleared": false + "pattern": "^\\s{2,}\"version\": \"(v?(\\d+\\.?){2,}([a-zA-Z0-9-]+(\\.?\\d+)?)?)\",$", + "clearedPrefix": true, + "clearedSuffix": false } ], - ".pubnub.yml": [ + "src/core/components/config.js": [ { - "pattern": "^version: \"(.+)\"$", - "cleared": false + "pattern": "^\\s{2,}return '(v?(\\.?\\d+){2,}([a-zA-Z0-9-]+(\\.?\\d+)?)?)';$", + "clearedPrefix": true, + "clearedSuffix": false } ], - "package.json": [ + "README.md": [ + { + "pattern": "javascript/pubnub.(v?(\\.?\\d+){2,}([a-zA-Z0-9-]+(\\.?\\d+)?)?).js$", + "clearedPrefix": true, + "clearedSuffix": false + }, { - "pattern": "^\\s{2,}\"version\": \"(.+)\",$", - "cleared": true + "pattern": "javascript/pubnub.(v?(\\.?\\d+){2,}([a-zA-Z0-9-]+(\\.?\\d+)?)?).min.js$", + "clearedPrefix": true, + "clearedSuffix": false } ] } diff --git a/.github/workflows/validate-pubnub-yml.yml b/.github/workflows/validate-pubnub-yml.yml new file mode 100644 index 000000000..5963a0ff8 --- /dev/null +++ b/.github/workflows/validate-pubnub-yml.yml @@ -0,0 +1,24 @@ +name: validate-pubnub-yml + +# Controls when the action will run. Workflow runs when manually triggered using the UI +# or API. +on: [push] + +jobs: + build: + name: Validate PubNub yml + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Use Node.js + uses: actions/setup-node@v1 + with: + node-version: '12.x' + - name: Install dependencies + run: | + npm install ajv@6.12.6 + npm install yaml@1.10.0 + npm install node-fetch@2.6.1 + npm install chalk@2.4.2 + - name: Validate + run: GITHUB_TOKEN=${{ secrets.GH_TOKEN }} node ./.github/workflows/validate-yml.js diff --git a/.github/workflows/validate-yml.js b/.github/workflows/validate-yml.js new file mode 100644 index 000000000..b69ea465c --- /dev/null +++ b/.github/workflows/validate-yml.js @@ -0,0 +1,94 @@ +const YAML = require('yaml') +const Ajv = require('ajv'); +const fetch = require('node-fetch'); +const fs = require('fs'); +const chalk = require('chalk'); + +const ghToken = process.env.GITHUB_TOKEN; +const ghHeaders = {'User-Agent': 'sdk-bot', 'Authorization': 'token ' + ghToken,'Accept': 'application/vnd.github.v3.raw'}; + +const sdkReposJSONBranch = "develop"; +let sdkReposJSONPath = "http://api.github.com/repos/pubnub/documentation-resources/contents/website-common/tools/build/sdk-repos.json?ref=" + sdkReposJSONBranch; +startExecution(sdkReposJSONPath); + +async function startExecution(sdkReposJSONPath){ + var sdkRepos = await requestGetFromGithub(sdkReposJSONPath); + var sdkReposAndFeatureMappingArray = parseReposAndFeatureMapping(sdkRepos); + var schemaText = await requestGetFromGithub(sdkReposAndFeatureMappingArray[2]); + + schema = JSON.parse(schemaText); + var yaml = fs.readFileSync(".pubnub.yml", 'utf8'); + + if(yaml != null){ + yml = YAML.parse(yaml); + var ajv = new Ajv({schemaId: 'id', "verbose":true, "allErrors": true}); + const validate = ajv.compile(schema); + const valid = validate(yml); + if (validate.errors!= null) { + console.log(chalk.cyan("===================================")); + console.log(chalk.red(yml["version"] + " validation errors...")); + console.log(chalk.cyan("===================================")); + console.log(validate.errors); + console.log(chalk.cyan("===================================")); + var result = {code:1, repo: yml["version"], msg: "validation errors"}; + printResult(result); + process.exit(1); + } + else { + var result = {code: 0, repo: yml["version"], msg: "validation pass"}; + printResult(result); + } + } else { + var result = {code:1, repo: "yml null", msg: "validation errors"}; + printResult(result); + process.exit(1); + } +} + +function printResult(result){ + var str = result.repo + ", " + result.msg; + if(result.code === 0){ + console.log(chalk.green(str) + ", Code: " + result.code); + } else { + console.log(chalk.red(str) + ", Code: " + result.code); + } +} + +async function requestGetFromGithub(url){ + try { + const response = await fetch(url, { + headers: ghHeaders, + method: 'get', + }); + if(response.status == 200){ + const json = await response.text(); + return json; + } else { + console.error(chalk.red("res.status: " + response.status + "\n URL: " + url)); + return null; + } + + } catch (error) { + console.error(chalk.red("requestGetFromGithub: " + error + "\n URL: " + url)); + return null; + } +} + +function parseReposAndFeatureMapping(body){ + if(body != null){ + var sdkRepos = JSON.parse(body); + var locations = sdkRepos["locations"]; + if(locations!=null){ + var sdkURLs = locations["sdks"]; + var featureMappingURL = locations["featureMapping"]; + var pubnubYAMLSchemaURL = locations["pubnubYAMLSchema"]; + return [sdkURLs, featureMappingURL, pubnubYAMLSchemaURL]; + } else { + console.log(chalk.red("response locations null")); + return null; + } + } else { + console.log(chalk.red("response body null")); + return null; + } +} diff --git a/.gitignore b/.gitignore index cbbf2bf79..486bdfd07 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,12 @@ coverage/ *.iml dist/web/stats.json dist/titanium/stats.json +dist/contract +dist/cucumber + +# GitHub Actions # +################## +.github/.release +release-artifacts-* + +.vscode diff --git a/.npmignore b/.npmignore index 2a58602b7..da6f71716 100644 --- a/.npmignore +++ b/.npmignore @@ -10,3 +10,7 @@ coverage/ .travis .babelrc + +.github +release-artifacts-* +resources/* diff --git a/.nycrc.yml b/.nycrc.yml deleted file mode 100644 index b143657b9..000000000 --- a/.nycrc.yml +++ /dev/null @@ -1,5 +0,0 @@ -report-dir: coverage -reporter: ["json", "lcov", "text"] -all: true - -include: src/**/*.js diff --git a/.pubnub.yml b/.pubnub.yml index aa704ee66..7bf894ca1 100644 --- a/.pubnub.yml +++ b/.pubnub.yml @@ -1,5 +1,57 @@ --- changelog: + - date: 2022-01-12 + version: v5.0.0 + changes: + - type: improvement + text: "BREAKING CHANGES: `uuid` is required parameter in PubNub constructor." + - date: 2021-12-16 + version: v4.37.0 + changes: + - type: feature + text: "Add revoke token feature." + - date: 2021-12-09 + version: v4.36.0 + changes: + - type: bug + text: "Remove isomorphic-webcrypto polyfill for web Add buffer polyfill to react native." + - date: 2021-12-02 + version: v4.35.0 + changes: + - type: feature + text: "Allows to specify multiple origins in the config, which enables domain sharding for custom origins." + - date: 2021-12-01 + version: v4.34.2 + changes: + - type: bug + text: "Fix listener callback is invoked multiple times." + - date: 2021-11-19 + version: v4.34.1 + changes: + - type: bug + text: "Update `.npmignore` and excluded resources from from NPM package." + - date: 2021-11-19 + version: v4.34.0 + changes: + - type: feature + text: "Upgrade superagent." + - + changes: + - + text: "Fixes issue of performing file publish message retry according to `fileUploadPublishRetryLimit` setting of PubNub instance." + type: bug + date: 2021-10-18 + version: v4.33.1 + - + changes: + - + text: "Added support for Objects v2 in PAM v3 api." + type: feature + - + text: "Fixes issue related to file decryption when cipherkey is provided in method." + type: bug + date: 2021-08-31 + version: v4.33.0 - changes: - @@ -668,7 +720,7 @@ changelog: - changes: - - text: "downgrade superagent to v2; add new entry point for react native." + text: "downgrade superagent to v2; add a new entry point for react native." type: improvement date: 2017-02-07 version: v4.4.3 @@ -750,7 +802,7 @@ changelog: - changes: - - text: "Fixes on encoding of apostraphes." + text: "Fixes on encoding of apostrophes." type: improvement date: 2016-11-01 version: v4.2.3 @@ -804,7 +856,7 @@ changelog: - changes: - - text: "Propogate status events to the status callback on subscribe operations." + text: "Propagate status events to the status callback on subscribe operations." type: improvement date: 2016-10-05 version: v4.0.13 @@ -915,15 +967,13 @@ changelog: - text: "New iteration of JS / Node SDK family" type: feature + date: 2016-08-01 version: v4.0.0 features: access: - - ACCESS-GRANT - - ACCESS-SECRET-KEY-ALL-ACCESS - - ACCESS-GRANT-MANAGE - - ACCESS-GRANT-DELETE - - ACCESS-TOKEN-MANAGEMENT - - ACCESS-OBJECTS-V2-MANAGEMENT + - ACCESS-GRANT-TOKEN + - ACCESS-PARSE-TOKEN + - ACCESS-SET-TOKEN channel-groups: - CHANNEL-GROUPS-ADD-CHANNELS - CHANNEL-GROUPS-REMOVE-CHANNELS @@ -1017,7 +1067,7 @@ features: - FILES-DOWNLOAD-FILE time: - TIME-TIME - others: + others: - TELEMETRY - CREATE-PUSH-PAYLOAD files: @@ -1035,7 +1085,6 @@ supported-platforms: - "Safari 10 and up" - "Mozilla Firefox 51 and up" - "Google Chrome 56 and up" - - "Opera 41 and up" - "IE 9 and up (include a Promise polyfill for pubnub >= 4.29.0)" - "Microsoft Edge 38 and up" version: "Pubnub Javascript for Web" @@ -1047,4 +1096,3862 @@ supported-platforms: - "Ubuntu 14.04 and up" - "Windows 7 and up" version: "Pubnub Javascript for Node" -version: "4.32.1" +version: "5.0.0" +sdks: + - + full-name: PubNub Javascript SDK + short-name: Javascript + artifacts: + - + artifact-type: api-client + language: Javascript + tier: 1 + tags: + - Web + source-repository: https://github.com/pubnub/javascript + documentation: https://www.pubnub.com/docs/sdks/javascript + distributions: + - + distribution-type: source + distribution-repository: GitHub release + package-name: pubnub.js + location: https://github.com/pubnub/javascript/archive/refs/tags/v5.0.0.zip + requires: + - + name: "agentkeepalive" + min-version: "3.5.2" + license: "MIT" + license-url: "https://github.com/node-modules/agentkeepalive/blob/HEAD/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/agentkeepalive" + is-required: "Required" + - + name: "agent-base" + min-version: "6.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-agent-base#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/agent-base" + is-required: "Required" + - + name: "ast-types" + min-version: "0.13.4" + license: "MIT" + license-url: "https://github.com/benjamn/ast-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ast-types" + is-required: "Required" + - + name: "asynckit" + min-version: "0.4.0" + license: "MIT" + license-url: "https://github.com/alexindigo/asynckit/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asynckit" + is-required: "Required" + - + name: "bytes" + min-version: "3.1.0" + license: "MIT" + license-url: "https://github.com/visionmedia/bytes.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/bytes" + is-required: "Required" + - + name: "call-bind" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/ljharb/call-bind/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/call-bind" + is-required: "Required" + - + name: "cbor-js" + min-version: "0.1.0" + license: "MIT" + license-url: "https://github.com/paroga/cbor-js/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-js" + is-required: "Required" + - + name: "cbor-sync" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/PelionIoT/cbor-sync/blob/master/LICENSE.txt" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-sync" + is-required: "Required" + - + name: "combined-stream" + min-version: "1.0.8" + license: "MIT" + license-url: "https://github.com/felixge/node-combined-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/combined-stream" + is-required: "Required" + - + name: "component-emitter" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/component/emitter/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/component-emitter" + is-required: "Required" + - + name: "cookiejar" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/bmeck/node-cookiejar/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/cookiejar" + is-required: "Required" + - + name: "core-util-is" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/isaacs/core-util-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/core-util-is" + is-required: "Required" + - + name: "data-uri-to-buffer" + min-version: "3.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-data-uri-to-buffer#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/data-uri-to-buffer" + is-required: "Required" + - + name: "debug" + min-version: "3.2.7" + license: "MIT" + license-url: "https://github.com/visionmedia/debug/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/debug" + is-required: "Required" + - + name: "deep-is" + min-version: "0.1.3" + license: "MIT" + license-url: "https://github.com/thlorenz/deep-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/deep-is" + is-required: "Required" + - + name: "degenerator" + min-version: "2.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-degenerator#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/degenerator" + is-required: "Required" + - + name: "delayed-stream" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/felixge/node-delayed-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/delayed-stream" + is-required: "Required" + - + name: "depd" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/dougwilson/nodejs-depd/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/depd" + is-required: "Required" + - + name: "escodegen" + min-version: "1.14.3" + license: "BSD2" + license-url: "https://github.com/estools/escodegen/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/escodegen" + is-required: "Required" + - + name: "esprima" + min-version: "4.0.1" + license: "BSD2" + license-url: "https://github.com/jquery/esprima/blob/main/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esprima" + is-required: "Required" + - + name: "estraverse" + min-version: "4.3.0" + license: "BSD2" + license-url: "https://github.com/estools/estraverse/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/estraverse" + is-required: "Required" + - + name: "esutils" + min-version: "2.0.3" + license: "BSD2" + license-url: "https://github.com/estools/esutils/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esutils" + is-required: "Required" + - + name: "extend" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/justmoon/node-extend/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/extend" + is-required: "Required" + - + name: "fast-levenshtein" + min-version: "2.0.6" + license: "MIT" + license-url: "https://github.com/hiddentao/fast-levenshtein/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fast-levenshtein" + is-required: "Required" + - + name: "file-uri-to-path" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/file-uri-to-path/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/file-uri-to-path" + is-required: "Required" + - + name: "form-data" + min-version: "2.5.1" + license: "MIT" + license-url: "https://github.com/form-data/form-data/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/form-data" + is-required: "Required" + - + name: "formidable" + min-version: "1.2.2" + license: "MIT" + license-url: "https://github.com/node-formidable/formidable/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/formidable" + is-required: "Required" + - + name: "fs-extra" + min-version: "8.1.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-fs-extra/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fs-extra" + is-required: "Required" + - + name: "ftp" + min-version: "0.3.10" + license: "MIT" + license-url: "https://github.com/mscdex/node-ftp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ftp" + is-required: "Required" + - + name: "function-bind" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/Raynos/function-bind/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/function-bind" + is-required: "Required" + - + name: "get-intrinsic" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/ljharb/get-intrinsic/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-intrinsic" + is-required: "Required" + - + name: "get-uri" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-get-uri#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-uri" + is-required: "Required" + - + name: "graceful-fs" + min-version: "4.2.6" + license: "ISC" + license-url: "https://github.com/isaacs/node-graceful-fs/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/graceful-fs" + is-required: "Required" + - + name: "has" + min-version: "1.0.3" + license: "MIT" + license-url: "https://github.com/tarruda/has/blob/master/LICENSE-MIT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has" + is-required: "Required" + - + name: "has-symbols" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/inspect-js/has-symbols/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has-symbols" + is-required: "Required" + - + name: "http-errors" + min-version: "1.7.3" + license: "MIT" + license-url: "https://github.com/jshttp/http-errors/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-errors" + is-required: "Required" + - + name: "http-proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-http-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-proxy-agent" + is-required: "Required" + - + name: "humanize-ms" + min-version: "1.2.1" + license: "MIT" + license-url: "https://github.com/node-modules/humanize-ms/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/humanize-ms" + is-required: "Required" + - + name: "iconv-lite" + min-version: "0.4.24" + license: "MIT" + license-url: "https://github.com/ashtuchkin/iconv-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/iconv-lite" + is-required: "Required" + - + name: "inherits" + min-version: "2.0.4" + license: "ISC" + license-url: "https://github.com/isaacs/inherits/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/inherits" + is-required: "Required" + - + name: "ip" + min-version: "1.1.5" + license: "MIT" + license-url: "https://github.com/indutny/node-ip#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ip" + is-required: "Required" + - + name: "isarray" + min-version: "0.0.1" + license: "MIT" + license-url: "https://github.com/juliangruber/isarray/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/isarray" + is-required: "Required" + - + name: "jsonfile" + min-version: "4.0.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-jsonfile/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/jsonfile" + is-required: "Required" + - + name: "levn" + min-version: "0.3.0" + license: "MIT" + license-url: "https://github.com/gkz/levn/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/levn" + is-required: "Required" + - + name: "lil-uuid" + min-version: "0.1.1" + license: "MIT" + license-url: "https://github.com/lil-js/uuid/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/lil-uuid" + is-required: "Required" + - + name: "lru-cache" + min-version: "5.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/node-lru-cache/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/lru-cache" + is-required: "Required" + - + name: "methods" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/jshttp/methods/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/methods" + is-required: "Required" + - + name: "mime" + min-version: "1.6.0" + license: "MIT" + license-url: "https://github.com/broofa/mime/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime" + is-required: "Required" + - + name: "mime-db" + min-version: "1.47.0" + license: "MIT" + license-url: "https://github.com/jshttp/mime-db/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-db" + is-required: "Required" + - + name: "mime-types" + min-version: "2.1.30" + license: "MIT" + license-url: "https://github.com/jshttp/mime-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-types" + is-required: "Required" + - + name: "ms" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/vercel/ms/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ms" + is-required: "Required" + - + name: "netmask" + min-version: "2.0.2" + license: "MIT" + license-url: "https://github.com/rs/node-netmask#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/netmask" + is-required: "Required" + - + name: "object-inspect" + min-version: "1.9.0" + license: "MIT" + license-url: "https://github.com/inspect-js/object-inspect/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/object-inspect" + is-required: "Required" + - + name: "optionator" + min-version: "0.8.3" + license: "MIT" + license-url: "https://github.com/gkz/optionator/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/optionator" + is-required: "Required" + - + name: "pac-proxy-agent" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-proxy-agent" + is-required: "Required" + - + name: "pac-resolver" + min-version: "4.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-resolver#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-resolver" + is-required: "Required" + - + name: "prelude-ls" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/gkz/prelude-ls/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/prelude-ls" + is-required: "Required" + - + name: "process-nextick-args" + min-version: "2.0.1" + license: "MIT" + license-url: "https://github.com/calvinmetcalf/process-nextick-args/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/process-nextick-args" + is-required: "Required" + - + name: "proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-agent" + is-required: "Required" + - + name: "proxy-from-env" + min-version: "1.1.0" + license: "MIT" + license-url: "https://github.com/Rob--W/proxy-from-env/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-from-env" + is-required: "Required" + - + name: "qs" + min-version: "6.10.1" + license: "BSD3" + license-url: "https://github.com/ljharb/qs/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/qs" + is-required: "Required" + - + name: "raw-body" + min-version: "2.4.1" + license: "MIT" + license-url: "https://github.com/stream-utils/raw-body/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/raw-body" + is-required: "Required" + - + name: "readable-stream" + min-version: "1.1.14" + license: "MIT" + license-url: "https://github.com/nodejs/readable-stream/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/readable-stream" + is-required: "Required" + - + name: "safer-buffer" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/ChALkeR/safer-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/safer-buffer" + is-required: "Required" + - + name: "setprototypeof" + min-version: "1.1.1" + license: "ISC" + license-url: "https://github.com/wesleytodd/setprototypeof/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/setprototypeof" + is-required: "Required" + - + name: "side-channel" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/ljharb/side-channel/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/side-channel" + is-required: "Required" + - + name: "smart-buffer" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/smart-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/smart-buffer" + is-required: "Required" + - + name: "socks" + min-version: "2.6.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/socks/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks" + is-required: "Required" + - + name: "socks-proxy-agent" + min-version: "5.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-socks-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks-proxy-agent" + is-required: "Required" + - + name: "source-map" + min-version: "0.6.1" + license: "BSD3" + license-url: "https://github.com/mozilla/source-map/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/source-map" + is-required: "Required" + - + name: "statuses" + min-version: "1.5.0" + license: "MIT" + license-url: "https://github.com/jshttp/statuses/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/statuses" + is-required: "Required" + - + name: "string_decoder" + min-version: "0.10.31" + license: "MIT" + license-url: "https://github.com/nodejs/string_decoder/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/string_decoder" + is-required: "Required" + - + name: "superagent" + min-version: "3.8.1" + license: "MIT" + license-url: "https://github.com/visionmedia/superagent/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent" + is-required: "Required" + - + name: "superagent-proxy" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/superagent-proxy#license" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent-proxy" + is-required: "Required" + - + name: "toidentifier" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/component/toidentifier/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/toidentifier" + is-required: "Required" + - + name: "@tootallnate/once" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/once/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@tootallnate/once" + is-required: "Required" + - + name: "type-check" + min-version: "0.3.2" + license: "MIT" + license-url: "https://github.com/gkz/type-check/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/type-check" + is-required: "Required" + - + name: "universalify" + min-version: "0.1.2" + license: "MIT" + license-url: "https://github.com/RyanZim/universalify/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/universalify" + is-required: "Required" + - + name: "unpipe" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/stream-utils/unpipe/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/unpipe" + is-required: "Required" + - + name: "util-deprecate" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/util-deprecate/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/util-deprecate" + is-required: "Required" + - + name: "word-wrap" + min-version: "1.2.3" + license: "MIT" + license-url: "https://github.com/jonschlinkert/word-wrap/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/word-wrap" + is-required: "Required" + - + name: "xregexp" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/slevithan/xregexp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/xregexp" + is-required: "Required" + - + name: "yallist" + min-version: "3.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/yallist/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/yallist" + is-required: "Required" + - + name: "isomorphic-webcrypto" + min-version: "2.3.6" + license: "MIT" + license-url: "https://github.com/kevlened/isomorphic-webcrypto/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/isomorphic-webcrypto" + is-required: "Required" + - + name: "@peculiar/webcrypto" + min-version: "1.0.22" + license: "MIT" + license-url: "https://github.com/PeculiarVentures/webcrypto/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@peculiar/webcrypto" + is-required: "Required" + - + name: "asmcrypto.js" + min-version: "0.22.0" + license: "MIT" + license-url: "https://github.com/asmcrypto/asmcrypto.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asmcrypto.js" + is-required: "Required" + - + name: "b64-lite" + min-version: "1.3.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64-lite" + is-required: "Required" + - + name: "b64u-lite" + min-version: "1.0.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64u-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64u-lite" + is-required: "Required" + - + name: "msrcrypto" + min-version: "1.5.6" + license: "Apache20" + license-url: "https://github.com/kevlened/msrCrypto/blob/master/LICENSE.TXT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/msrcrypto" + is-required: "Required" + - + name: "str2buf" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/kevlened/str2buf/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/str2buf" + is-required: "Required" + - + name: "webcrypto-shim" + min-version: "0.1.4" + license: "MIT" + license-url: "https://github.com/vibornoff/webcrypto-shim/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/webcrypto-shim" + is-required: "Required" + supported-platforms: + supported-browsers: + minimun-supported-version: + - Chrome iOS 86.0.4240 + - Chrome Android 86.0.4240 + - Chrome Linux 86.0.4240 + - Chrome macOS 86.0.4240 + - Chrome Windows 86.0.4240 + - Firefox Linux desktop 83.0 (x64) + - Firefox Linux desktop 83.0 (IA-32) + - Firefox iOS 29.0 + - Firefox Windows 83.0 (IA-32) + - Firefox Windows 83.0 (x64) + - Firefox Windows 83.0 (ARM64) + - Firefox macOS 83.0 + - Firefox Android 83.0 (x64) + - Firefox Android 83.0 (ARM64) + - Firefox Android 83.0 (IA-32 and ARMv7) + - Firefox OpenBSD 83.0 (IA-32,x64,ARM64) + - Microsoft Edge 87.0.664.60" + - Safari 13.0 + - + artifact-type: library + language: Javascript + tier: 1 + tags: + - Web + source-repository: https://github.com/pubnub/javascript + documentation: https://www.pubnub.com/docs/sdks/javascript + distributions: + - + distribution-type: library + distribution-repository: GitHub release + package-name: pubnub.js + location: https://github.com/pubnub/javascript/releases/download/v5.0.0/pubnub.5.0.0.js + requires: + - + name: "agentkeepalive" + min-version: "3.5.2" + license: "MIT" + license-url: "https://github.com/node-modules/agentkeepalive/blob/HEAD/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/agentkeepalive" + is-required: "Required" + - + name: "agent-base" + min-version: "6.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-agent-base#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/agent-base" + is-required: "Required" + - + name: "ast-types" + min-version: "0.13.4" + license: "MIT" + license-url: "https://github.com/benjamn/ast-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ast-types" + is-required: "Required" + - + name: "asynckit" + min-version: "0.4.0" + license: "MIT" + license-url: "https://github.com/alexindigo/asynckit/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asynckit" + is-required: "Required" + - + name: "bytes" + min-version: "3.1.0" + license: "MIT" + license-url: "https://github.com/visionmedia/bytes.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/bytes" + is-required: "Required" + - + name: "call-bind" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/ljharb/call-bind/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/call-bind" + is-required: "Required" + - + name: "cbor-js" + min-version: "0.1.0" + license: "MIT" + license-url: "https://github.com/paroga/cbor-js/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-js" + is-required: "Required" + - + name: "cbor-sync" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/PelionIoT/cbor-sync/blob/master/LICENSE.txt" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-sync" + is-required: "Required" + - + name: "combined-stream" + min-version: "1.0.8" + license: "MIT" + license-url: "https://github.com/felixge/node-combined-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/combined-stream" + is-required: "Required" + - + name: "component-emitter" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/component/emitter/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/component-emitter" + is-required: "Required" + - + name: "cookiejar" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/bmeck/node-cookiejar/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/cookiejar" + is-required: "Required" + - + name: "core-util-is" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/isaacs/core-util-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/core-util-is" + is-required: "Required" + - + name: "data-uri-to-buffer" + min-version: "3.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-data-uri-to-buffer#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/data-uri-to-buffer" + is-required: "Required" + - + name: "debug" + min-version: "3.2.7" + license: "MIT" + license-url: "https://github.com/visionmedia/debug/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/debug" + is-required: "Required" + - + name: "deep-is" + min-version: "0.1.3" + license: "MIT" + license-url: "https://github.com/thlorenz/deep-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/deep-is" + is-required: "Required" + - + name: "degenerator" + min-version: "2.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-degenerator#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/degenerator" + is-required: "Required" + - + name: "delayed-stream" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/felixge/node-delayed-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/delayed-stream" + is-required: "Required" + - + name: "depd" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/dougwilson/nodejs-depd/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/depd" + is-required: "Required" + - + name: "escodegen" + min-version: "1.14.3" + license: "BSD2" + license-url: "https://github.com/estools/escodegen/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/escodegen" + is-required: "Required" + - + name: "esprima" + min-version: "4.0.1" + license: "BSD2" + license-url: "https://github.com/jquery/esprima/blob/main/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esprima" + is-required: "Required" + - + name: "estraverse" + min-version: "4.3.0" + license: "BSD2" + license-url: "https://github.com/estools/estraverse/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/estraverse" + is-required: "Required" + - + name: "esutils" + min-version: "2.0.3" + license: "BSD2" + license-url: "https://github.com/estools/esutils/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esutils" + is-required: "Required" + - + name: "extend" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/justmoon/node-extend/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/extend" + is-required: "Required" + - + name: "fast-levenshtein" + min-version: "2.0.6" + license: "MIT" + license-url: "https://github.com/hiddentao/fast-levenshtein/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fast-levenshtein" + is-required: "Required" + - + name: "file-uri-to-path" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/file-uri-to-path/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/file-uri-to-path" + is-required: "Required" + - + name: "form-data" + min-version: "2.5.1" + license: "MIT" + license-url: "https://github.com/form-data/form-data/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/form-data" + is-required: "Required" + - + name: "formidable" + min-version: "1.2.2" + license: "MIT" + license-url: "https://github.com/node-formidable/formidable/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/formidable" + is-required: "Required" + - + name: "fs-extra" + min-version: "8.1.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-fs-extra/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fs-extra" + is-required: "Required" + - + name: "ftp" + min-version: "0.3.10" + license: "MIT" + license-url: "https://github.com/mscdex/node-ftp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ftp" + is-required: "Required" + - + name: "function-bind" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/Raynos/function-bind/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/function-bind" + is-required: "Required" + - + name: "get-intrinsic" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/ljharb/get-intrinsic/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-intrinsic" + is-required: "Required" + - + name: "get-uri" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-get-uri#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-uri" + is-required: "Required" + - + name: "graceful-fs" + min-version: "4.2.6" + license: "ISC" + license-url: "https://github.com/isaacs/node-graceful-fs/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/graceful-fs" + is-required: "Required" + - + name: "has" + min-version: "1.0.3" + license: "MIT" + license-url: "https://github.com/tarruda/has/blob/master/LICENSE-MIT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has" + is-required: "Required" + - + name: "has-symbols" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/inspect-js/has-symbols/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has-symbols" + is-required: "Required" + - + name: "http-errors" + min-version: "1.7.3" + license: "MIT" + license-url: "https://github.com/jshttp/http-errors/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-errors" + is-required: "Required" + - + name: "http-proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-http-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-proxy-agent" + is-required: "Required" + - + name: "humanize-ms" + min-version: "1.2.1" + license: "MIT" + license-url: "https://github.com/node-modules/humanize-ms/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/humanize-ms" + is-required: "Required" + - + name: "iconv-lite" + min-version: "0.4.24" + license: "MIT" + license-url: "https://github.com/ashtuchkin/iconv-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/iconv-lite" + is-required: "Required" + - + name: "inherits" + min-version: "2.0.4" + license: "ISC" + license-url: "https://github.com/isaacs/inherits/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/inherits" + is-required: "Required" + - + name: "ip" + min-version: "1.1.5" + license: "MIT" + license-url: "https://github.com/indutny/node-ip#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ip" + is-required: "Required" + - + name: "isarray" + min-version: "0.0.1" + license: "MIT" + license-url: "https://github.com/juliangruber/isarray/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/isarray" + is-required: "Required" + - + name: "jsonfile" + min-version: "4.0.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-jsonfile/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/jsonfile" + is-required: "Required" + - + name: "levn" + min-version: "0.3.0" + license: "MIT" + license-url: "https://github.com/gkz/levn/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/levn" + is-required: "Required" + - + name: "lil-uuid" + min-version: "0.1.1" + license: "MIT" + license-url: "https://github.com/lil-js/uuid/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/lil-uuid" + is-required: "Required" + - + name: "lru-cache" + min-version: "5.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/node-lru-cache/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/lru-cache" + is-required: "Required" + - + name: "methods" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/jshttp/methods/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/methods" + is-required: "Required" + - + name: "mime" + min-version: "1.6.0" + license: "MIT" + license-url: "https://github.com/broofa/mime/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime" + is-required: "Required" + - + name: "mime-db" + min-version: "1.47.0" + license: "MIT" + license-url: "https://github.com/jshttp/mime-db/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-db" + is-required: "Required" + - + name: "mime-types" + min-version: "2.1.30" + license: "MIT" + license-url: "https://github.com/jshttp/mime-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-types" + is-required: "Required" + - + name: "ms" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/vercel/ms/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ms" + is-required: "Required" + - + name: "netmask" + min-version: "2.0.2" + license: "MIT" + license-url: "https://github.com/rs/node-netmask#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/netmask" + is-required: "Required" + - + name: "object-inspect" + min-version: "1.9.0" + license: "MIT" + license-url: "https://github.com/inspect-js/object-inspect/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/object-inspect" + is-required: "Required" + - + name: "optionator" + min-version: "0.8.3" + license: "MIT" + license-url: "https://github.com/gkz/optionator/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/optionator" + is-required: "Required" + - + name: "pac-proxy-agent" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-proxy-agent" + is-required: "Required" + - + name: "pac-resolver" + min-version: "4.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-resolver#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-resolver" + is-required: "Required" + - + name: "prelude-ls" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/gkz/prelude-ls/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/prelude-ls" + is-required: "Required" + - + name: "process-nextick-args" + min-version: "2.0.1" + license: "MIT" + license-url: "https://github.com/calvinmetcalf/process-nextick-args/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/process-nextick-args" + is-required: "Required" + - + name: "proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-agent" + is-required: "Required" + - + name: "proxy-from-env" + min-version: "1.1.0" + license: "MIT" + license-url: "https://github.com/Rob--W/proxy-from-env/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-from-env" + is-required: "Required" + - + name: "qs" + min-version: "6.10.1" + license: "BSD3" + license-url: "https://github.com/ljharb/qs/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/qs" + is-required: "Required" + - + name: "raw-body" + min-version: "2.4.1" + license: "MIT" + license-url: "https://github.com/stream-utils/raw-body/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/raw-body" + is-required: "Required" + - + name: "readable-stream" + min-version: "1.1.14" + license: "MIT" + license-url: "https://github.com/nodejs/readable-stream/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/readable-stream" + is-required: "Required" + - + name: "safer-buffer" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/ChALkeR/safer-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/safer-buffer" + is-required: "Required" + - + name: "setprototypeof" + min-version: "1.1.1" + license: "ISC" + license-url: "https://github.com/wesleytodd/setprototypeof/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/setprototypeof" + is-required: "Required" + - + name: "side-channel" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/ljharb/side-channel/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/side-channel" + is-required: "Required" + - + name: "smart-buffer" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/smart-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/smart-buffer" + is-required: "Required" + - + name: "socks" + min-version: "2.6.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/socks/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks" + is-required: "Required" + - + name: "socks-proxy-agent" + min-version: "5.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-socks-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks-proxy-agent" + is-required: "Required" + - + name: "source-map" + min-version: "0.6.1" + license: "BSD3" + license-url: "https://github.com/mozilla/source-map/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/source-map" + is-required: "Required" + - + name: "statuses" + min-version: "1.5.0" + license: "MIT" + license-url: "https://github.com/jshttp/statuses/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/statuses" + is-required: "Required" + - + name: "string_decoder" + min-version: "0.10.31" + license: "MIT" + license-url: "https://github.com/nodejs/string_decoder/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/string_decoder" + is-required: "Required" + - + name: "superagent" + min-version: "3.8.1" + license: "MIT" + license-url: "https://github.com/visionmedia/superagent/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent" + is-required: "Required" + - + name: "superagent-proxy" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/superagent-proxy#license" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent-proxy" + is-required: "Required" + - + name: "toidentifier" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/component/toidentifier/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/toidentifier" + is-required: "Required" + - + name: "@tootallnate/once" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/once/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@tootallnate/once" + is-required: "Required" + - + name: "type-check" + min-version: "0.3.2" + license: "MIT" + license-url: "https://github.com/gkz/type-check/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/type-check" + is-required: "Required" + - + name: "universalify" + min-version: "0.1.2" + license: "MIT" + license-url: "https://github.com/RyanZim/universalify/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/universalify" + is-required: "Required" + - + name: "unpipe" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/stream-utils/unpipe/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/unpipe" + is-required: "Required" + - + name: "util-deprecate" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/util-deprecate/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/util-deprecate" + is-required: "Required" + - + name: "word-wrap" + min-version: "1.2.3" + license: "MIT" + license-url: "https://github.com/jonschlinkert/word-wrap/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/word-wrap" + is-required: "Required" + - + name: "xregexp" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/slevithan/xregexp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/xregexp" + is-required: "Required" + - + name: "yallist" + min-version: "3.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/yallist/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/yallist" + is-required: "Required" + - + name: "isomorphic-webcrypto" + min-version: "2.3.6" + license: "MIT" + license-url: "https://github.com/kevlened/isomorphic-webcrypto/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/isomorphic-webcrypto" + is-required: "Required" + - + name: "@peculiar/webcrypto" + min-version: "1.0.22" + license: "MIT" + license-url: "https://github.com/PeculiarVentures/webcrypto/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@peculiar/webcrypto" + is-required: "Required" + - + name: "asmcrypto.js" + min-version: "0.22.0" + license: "MIT" + license-url: "https://github.com/asmcrypto/asmcrypto.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asmcrypto.js" + is-required: "Required" + - + name: "b64-lite" + min-version: "1.3.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64-lite" + is-required: "Required" + - + name: "b64u-lite" + min-version: "1.0.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64u-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64u-lite" + is-required: "Required" + - + name: "msrcrypto" + min-version: "1.5.6" + license: "Apache20" + license-url: "https://github.com/kevlened/msrCrypto/blob/master/LICENSE.TXT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/msrcrypto" + is-required: "Required" + - + name: "str2buf" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/kevlened/str2buf/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/str2buf" + is-required: "Required" + - + name: "webcrypto-shim" + min-version: "0.1.4" + license: "MIT" + license-url: "https://github.com/vibornoff/webcrypto-shim/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/webcrypto-shim" + is-required: "Required" + supported-platforms: + supported-browsers: + minimun-supported-version: + - Chrome iOS 86.0.4240 + - Chrome Android 86.0.4240 + - Chrome Linux 86.0.4240 + - Chrome macOS 86.0.4240 + - Chrome Windows 86.0.4240 + - Firefox Linux desktop 83.0 (x64) + - Firefox Linux desktop 83.0 (IA-32) + - Firefox iOS 29.0 + - Firefox Windows 83.0 (IA-32) + - Firefox Windows 83.0 (x64) + - Firefox Windows 83.0 (ARM64) + - Firefox macOS 83.0 + - Firefox Android 83.0 (x64) + - Firefox Android 83.0 (ARM64) + - Firefox Android 83.0 (IA-32 and ARMv7) + - Firefox OpenBSD 83.0 (IA-32,x64,ARM64) + - Microsoft Edge 87.0.664.60" + - Safari 13.0 + - + distribution-type: library + distribution-repository: CDN + package-name: pubnub.js + location: https://cdn.pubnub.com/sdk/javascript/pubnub.js + requires: + - + name: "agentkeepalive" + min-version: "3.5.2" + license: "MIT" + license-url: "https://github.com/node-modules/agentkeepalive/blob/HEAD/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/agentkeepalive" + is-required: "Required" + - + name: "agent-base" + min-version: "6.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-agent-base#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/agent-base" + is-required: "Required" + - + name: "ast-types" + min-version: "0.13.4" + license: "MIT" + license-url: "https://github.com/benjamn/ast-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ast-types" + is-required: "Required" + - + name: "asynckit" + min-version: "0.4.0" + license: "MIT" + license-url: "https://github.com/alexindigo/asynckit/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asynckit" + is-required: "Required" + - + name: "bytes" + min-version: "3.1.0" + license: "MIT" + license-url: "https://github.com/visionmedia/bytes.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/bytes" + is-required: "Required" + - + name: "call-bind" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/ljharb/call-bind/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/call-bind" + is-required: "Required" + - + name: "cbor-js" + min-version: "0.1.0" + license: "MIT" + license-url: "https://github.com/paroga/cbor-js/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-js" + is-required: "Required" + - + name: "cbor-sync" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/PelionIoT/cbor-sync/blob/master/LICENSE.txt" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-sync" + is-required: "Required" + - + name: "combined-stream" + min-version: "1.0.8" + license: "MIT" + license-url: "https://github.com/felixge/node-combined-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/combined-stream" + is-required: "Required" + - + name: "component-emitter" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/component/emitter/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/component-emitter" + is-required: "Required" + - + name: "cookiejar" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/bmeck/node-cookiejar/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/cookiejar" + is-required: "Required" + - + name: "core-util-is" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/isaacs/core-util-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/core-util-is" + is-required: "Required" + - + name: "data-uri-to-buffer" + min-version: "3.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-data-uri-to-buffer#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/data-uri-to-buffer" + is-required: "Required" + - + name: "debug" + min-version: "3.2.7" + license: "MIT" + license-url: "https://github.com/visionmedia/debug/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/debug" + is-required: "Required" + - + name: "deep-is" + min-version: "0.1.3" + license: "MIT" + license-url: "https://github.com/thlorenz/deep-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/deep-is" + is-required: "Required" + - + name: "degenerator" + min-version: "2.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-degenerator#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/degenerator" + is-required: "Required" + - + name: "delayed-stream" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/felixge/node-delayed-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/delayed-stream" + is-required: "Required" + - + name: "depd" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/dougwilson/nodejs-depd/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/depd" + is-required: "Required" + - + name: "escodegen" + min-version: "1.14.3" + license: "BSD2" + license-url: "https://github.com/estools/escodegen/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/escodegen" + is-required: "Required" + - + name: "esprima" + min-version: "4.0.1" + license: "BSD2" + license-url: "https://github.com/jquery/esprima/blob/main/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esprima" + is-required: "Required" + - + name: "estraverse" + min-version: "4.3.0" + license: "BSD2" + license-url: "https://github.com/estools/estraverse/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/estraverse" + is-required: "Required" + - + name: "esutils" + min-version: "2.0.3" + license: "BSD2" + license-url: "https://github.com/estools/esutils/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esutils" + is-required: "Required" + - + name: "extend" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/justmoon/node-extend/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/extend" + is-required: "Required" + - + name: "fast-levenshtein" + min-version: "2.0.6" + license: "MIT" + license-url: "https://github.com/hiddentao/fast-levenshtein/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fast-levenshtein" + is-required: "Required" + - + name: "file-uri-to-path" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/file-uri-to-path/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/file-uri-to-path" + is-required: "Required" + - + name: "form-data" + min-version: "2.5.1" + license: "MIT" + license-url: "https://github.com/form-data/form-data/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/form-data" + is-required: "Required" + - + name: "formidable" + min-version: "1.2.2" + license: "MIT" + license-url: "https://github.com/node-formidable/formidable/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/formidable" + is-required: "Required" + - + name: "fs-extra" + min-version: "8.1.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-fs-extra/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fs-extra" + is-required: "Required" + - + name: "ftp" + min-version: "0.3.10" + license: "MIT" + license-url: "https://github.com/mscdex/node-ftp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ftp" + is-required: "Required" + - + name: "function-bind" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/Raynos/function-bind/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/function-bind" + is-required: "Required" + - + name: "get-intrinsic" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/ljharb/get-intrinsic/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-intrinsic" + is-required: "Required" + - + name: "get-uri" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-get-uri#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-uri" + is-required: "Required" + - + name: "graceful-fs" + min-version: "4.2.6" + license: "ISC" + license-url: "https://github.com/isaacs/node-graceful-fs/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/graceful-fs" + is-required: "Required" + - + name: "has" + min-version: "1.0.3" + license: "MIT" + license-url: "https://github.com/tarruda/has/blob/master/LICENSE-MIT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has" + is-required: "Required" + - + name: "has-symbols" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/inspect-js/has-symbols/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has-symbols" + is-required: "Required" + - + name: "http-errors" + min-version: "1.7.3" + license: "MIT" + license-url: "https://github.com/jshttp/http-errors/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-errors" + is-required: "Required" + - + name: "http-proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-http-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-proxy-agent" + is-required: "Required" + - + name: "humanize-ms" + min-version: "1.2.1" + license: "MIT" + license-url: "https://github.com/node-modules/humanize-ms/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/humanize-ms" + is-required: "Required" + - + name: "iconv-lite" + min-version: "0.4.24" + license: "MIT" + license-url: "https://github.com/ashtuchkin/iconv-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/iconv-lite" + is-required: "Required" + - + name: "inherits" + min-version: "2.0.4" + license: "ISC" + license-url: "https://github.com/isaacs/inherits/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/inherits" + is-required: "Required" + - + name: "ip" + min-version: "1.1.5" + license: "MIT" + license-url: "https://github.com/indutny/node-ip#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ip" + is-required: "Required" + - + name: "isarray" + min-version: "0.0.1" + license: "MIT" + license-url: "https://github.com/juliangruber/isarray/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/isarray" + is-required: "Required" + - + name: "jsonfile" + min-version: "4.0.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-jsonfile/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/jsonfile" + is-required: "Required" + - + name: "levn" + min-version: "0.3.0" + license: "MIT" + license-url: "https://github.com/gkz/levn/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/levn" + is-required: "Required" + - + name: "lil-uuid" + min-version: "0.1.1" + license: "MIT" + license-url: "https://github.com/lil-js/uuid/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/lil-uuid" + is-required: "Required" + - + name: "lru-cache" + min-version: "5.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/node-lru-cache/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/lru-cache" + is-required: "Required" + - + name: "methods" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/jshttp/methods/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/methods" + is-required: "Required" + - + name: "mime" + min-version: "1.6.0" + license: "MIT" + license-url: "https://github.com/broofa/mime/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime" + is-required: "Required" + - + name: "mime-db" + min-version: "1.47.0" + license: "MIT" + license-url: "https://github.com/jshttp/mime-db/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-db" + is-required: "Required" + - + name: "mime-types" + min-version: "2.1.30" + license: "MIT" + license-url: "https://github.com/jshttp/mime-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-types" + is-required: "Required" + - + name: "ms" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/vercel/ms/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ms" + is-required: "Required" + - + name: "netmask" + min-version: "2.0.2" + license: "MIT" + license-url: "https://github.com/rs/node-netmask#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/netmask" + is-required: "Required" + - + name: "object-inspect" + min-version: "1.9.0" + license: "MIT" + license-url: "https://github.com/inspect-js/object-inspect/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/object-inspect" + is-required: "Required" + - + name: "optionator" + min-version: "0.8.3" + license: "MIT" + license-url: "https://github.com/gkz/optionator/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/optionator" + is-required: "Required" + - + name: "pac-proxy-agent" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-proxy-agent" + is-required: "Required" + - + name: "pac-resolver" + min-version: "4.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-resolver#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-resolver" + is-required: "Required" + - + name: "prelude-ls" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/gkz/prelude-ls/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/prelude-ls" + is-required: "Required" + - + name: "process-nextick-args" + min-version: "2.0.1" + license: "MIT" + license-url: "https://github.com/calvinmetcalf/process-nextick-args/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/process-nextick-args" + is-required: "Required" + - + name: "proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-agent" + is-required: "Required" + - + name: "proxy-from-env" + min-version: "1.1.0" + license: "MIT" + license-url: "https://github.com/Rob--W/proxy-from-env/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-from-env" + is-required: "Required" + - + name: "qs" + min-version: "6.10.1" + license: "BSD3" + license-url: "https://github.com/ljharb/qs/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/qs" + is-required: "Required" + - + name: "raw-body" + min-version: "2.4.1" + license: "MIT" + license-url: "https://github.com/stream-utils/raw-body/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/raw-body" + is-required: "Required" + - + name: "readable-stream" + min-version: "1.1.14" + license: "MIT" + license-url: "https://github.com/nodejs/readable-stream/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/readable-stream" + is-required: "Required" + - + name: "safer-buffer" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/ChALkeR/safer-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/safer-buffer" + is-required: "Required" + - + name: "setprototypeof" + min-version: "1.1.1" + license: "ISC" + license-url: "https://github.com/wesleytodd/setprototypeof/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/setprototypeof" + is-required: "Required" + - + name: "side-channel" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/ljharb/side-channel/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/side-channel" + is-required: "Required" + - + name: "smart-buffer" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/smart-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/smart-buffer" + is-required: "Required" + - + name: "socks" + min-version: "2.6.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/socks/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks" + is-required: "Required" + - + name: "socks-proxy-agent" + min-version: "5.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-socks-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks-proxy-agent" + is-required: "Required" + - + name: "source-map" + min-version: "0.6.1" + license: "BSD3" + license-url: "https://github.com/mozilla/source-map/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/source-map" + is-required: "Required" + - + name: "statuses" + min-version: "1.5.0" + license: "MIT" + license-url: "https://github.com/jshttp/statuses/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/statuses" + is-required: "Required" + - + name: "string_decoder" + min-version: "0.10.31" + license: "MIT" + license-url: "https://github.com/nodejs/string_decoder/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/string_decoder" + is-required: "Required" + - + name: "superagent" + min-version: "3.8.1" + license: "MIT" + license-url: "https://github.com/visionmedia/superagent/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent" + is-required: "Required" + - + name: "superagent-proxy" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/superagent-proxy#license" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent-proxy" + is-required: "Required" + - + name: "toidentifier" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/component/toidentifier/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/toidentifier" + is-required: "Required" + - + name: "@tootallnate/once" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/once/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@tootallnate/once" + is-required: "Required" + - + name: "type-check" + min-version: "0.3.2" + license: "MIT" + license-url: "https://github.com/gkz/type-check/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/type-check" + is-required: "Required" + - + name: "universalify" + min-version: "0.1.2" + license: "MIT" + license-url: "https://github.com/RyanZim/universalify/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/universalify" + is-required: "Required" + - + name: "unpipe" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/stream-utils/unpipe/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/unpipe" + is-required: "Required" + - + name: "util-deprecate" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/util-deprecate/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/util-deprecate" + is-required: "Required" + - + name: "word-wrap" + min-version: "1.2.3" + license: "MIT" + license-url: "https://github.com/jonschlinkert/word-wrap/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/word-wrap" + is-required: "Required" + - + name: "xregexp" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/slevithan/xregexp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/xregexp" + is-required: "Required" + - + name: "yallist" + min-version: "3.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/yallist/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/yallist" + is-required: "Required" + - + name: "isomorphic-webcrypto" + min-version: "2.3.6" + license: "MIT" + license-url: "https://github.com/kevlened/isomorphic-webcrypto/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/isomorphic-webcrypto" + is-required: "Required" + - + name: "@peculiar/webcrypto" + min-version: "1.0.22" + license: "MIT" + license-url: "https://github.com/PeculiarVentures/webcrypto/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@peculiar/webcrypto" + is-required: "Required" + - + name: "asmcrypto.js" + min-version: "0.22.0" + license: "MIT" + license-url: "https://github.com/asmcrypto/asmcrypto.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asmcrypto.js" + is-required: "Required" + - + name: "b64-lite" + min-version: "1.3.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64-lite" + is-required: "Required" + - + name: "b64u-lite" + min-version: "1.0.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64u-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64u-lite" + is-required: "Required" + - + name: "msrcrypto" + min-version: "1.5.6" + license: "Apache20" + license-url: "https://github.com/kevlened/msrCrypto/blob/master/LICENSE.TXT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/msrcrypto" + is-required: "Required" + - + name: "str2buf" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/kevlened/str2buf/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/str2buf" + is-required: "Required" + - + name: "webcrypto-shim" + min-version: "0.1.4" + license: "MIT" + license-url: "https://github.com/vibornoff/webcrypto-shim/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/webcrypto-shim" + is-required: "Required" + supported-platforms: + supported-browsers: + minimun-supported-version: + - Chrome iOS 86.0.4240 + - Chrome Android 86.0.4240 + - Chrome Linux 86.0.4240 + - Chrome macOS 86.0.4240 + - Chrome Windows 86.0.4240 + - Firefox Linux desktop 83.0 (x64) + - Firefox Linux desktop 83.0 (IA-32) + - Firefox iOS 29.0 + - Firefox Windows 83.0 (IA-32) + - Firefox Windows 83.0 (x64) + - Firefox Windows 83.0 (ARM64) + - Firefox macOS 83.0 + - Firefox Android 83.0 (x64) + - Firefox Android 83.0 (ARM64) + - Firefox Android 83.0 (IA-32 and ARMv7) + - Firefox OpenBSD 83.0 (IA-32,x64,ARM64) + - Microsoft Edge 87.0.664.60" + - Safari 13.0 + - + full-name: PubNub Javascript Node.js SDK + short-name: NodeJs + artifacts: + - + artifact-type: package + language: Javascript + tier: 1 + tags: + - Server + source-repository: https://github.com/pubnub/javascript + documentation: https://www.pubnub.com/docs/sdks/javascript/nodejs + distributions: + - + distribution-type: package + distribution-repository: npm + package-name: pubnub + location: https://www.npmjs.com/package/pubnub + requires: + - + name: "Node.js" + min-version: "8.x and above" + license: "MIT" + license-url: "https://github.com/nodejs/node/blob/master/LICENSE" + location: "Should be installed on computer" + location-url: "https://nodejs.org/en/download/" + is-required: "Required" + - + name: "agentkeepalive" + min-version: "3.5.2" + license: "MIT" + license-url: "https://github.com/node-modules/agentkeepalive/blob/HEAD/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/agentkeepalive" + is-required: "Required" + - + name: "agent-base" + min-version: "6.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-agent-base#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/agent-base" + is-required: "Required" + - + name: "ast-types" + min-version: "0.13.4" + license: "MIT" + license-url: "https://github.com/benjamn/ast-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ast-types" + is-required: "Required" + - + name: "asynckit" + min-version: "0.4.0" + license: "MIT" + license-url: "https://github.com/alexindigo/asynckit/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asynckit" + is-required: "Required" + - + name: "bytes" + min-version: "3.1.0" + license: "MIT" + license-url: "https://github.com/visionmedia/bytes.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/bytes" + is-required: "Required" + - + name: "call-bind" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/ljharb/call-bind/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/call-bind" + is-required: "Required" + - + name: "cbor-js" + min-version: "0.1.0" + license: "MIT" + license-url: "https://github.com/paroga/cbor-js/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-js" + is-required: "Required" + - + name: "cbor-sync" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/PelionIoT/cbor-sync/blob/master/LICENSE.txt" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-sync" + is-required: "Required" + - + name: "combined-stream" + min-version: "1.0.8" + license: "MIT" + license-url: "https://github.com/felixge/node-combined-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/combined-stream" + is-required: "Required" + - + name: "component-emitter" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/component/emitter/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/component-emitter" + is-required: "Required" + - + name: "cookiejar" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/bmeck/node-cookiejar/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/cookiejar" + is-required: "Required" + - + name: "core-util-is" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/isaacs/core-util-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/core-util-is" + is-required: "Required" + - + name: "data-uri-to-buffer" + min-version: "3.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-data-uri-to-buffer#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/data-uri-to-buffer" + is-required: "Required" + - + name: "debug" + min-version: "3.2.7" + license: "MIT" + license-url: "https://github.com/visionmedia/debug/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/debug" + is-required: "Required" + - + name: "deep-is" + min-version: "0.1.3" + license: "MIT" + license-url: "https://github.com/thlorenz/deep-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/deep-is" + is-required: "Required" + - + name: "degenerator" + min-version: "2.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-degenerator#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/degenerator" + is-required: "Required" + - + name: "delayed-stream" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/felixge/node-delayed-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/delayed-stream" + is-required: "Required" + - + name: "depd" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/dougwilson/nodejs-depd/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/depd" + is-required: "Required" + - + name: "escodegen" + min-version: "1.14.3" + license: "BSD2" + license-url: "https://github.com/estools/escodegen/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/escodegen" + is-required: "Required" + - + name: "esprima" + min-version: "4.0.1" + license: "BSD2" + license-url: "https://github.com/jquery/esprima/blob/main/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esprima" + is-required: "Required" + - + name: "estraverse" + min-version: "4.3.0" + license: "BSD2" + license-url: "https://github.com/estools/estraverse/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/estraverse" + is-required: "Required" + - + name: "esutils" + min-version: "2.0.3" + license: "BSD2" + license-url: "https://github.com/estools/esutils/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esutils" + is-required: "Required" + - + name: "extend" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/justmoon/node-extend/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/extend" + is-required: "Required" + - + name: "fast-levenshtein" + min-version: "2.0.6" + license: "MIT" + license-url: "https://github.com/hiddentao/fast-levenshtein/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fast-levenshtein" + is-required: "Required" + - + name: "file-uri-to-path" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/file-uri-to-path/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/file-uri-to-path" + is-required: "Required" + - + name: "form-data" + min-version: "2.5.1" + license: "MIT" + license-url: "https://github.com/form-data/form-data/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/form-data" + is-required: "Required" + - + name: "formidable" + min-version: "1.2.2" + license: "MIT" + license-url: "https://github.com/node-formidable/formidable/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/formidable" + is-required: "Required" + - + name: "fs-extra" + min-version: "8.1.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-fs-extra/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fs-extra" + is-required: "Required" + - + name: "ftp" + min-version: "0.3.10" + license: "MIT" + license-url: "https://github.com/mscdex/node-ftp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ftp" + is-required: "Required" + - + name: "function-bind" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/Raynos/function-bind/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/function-bind" + is-required: "Required" + - + name: "get-intrinsic" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/ljharb/get-intrinsic/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-intrinsic" + is-required: "Required" + - + name: "get-uri" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-get-uri#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-uri" + is-required: "Required" + - + name: "graceful-fs" + min-version: "4.2.6" + license: "ISC" + license-url: "https://github.com/isaacs/node-graceful-fs/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/graceful-fs" + is-required: "Required" + - + name: "has" + min-version: "1.0.3" + license: "MIT" + license-url: "https://github.com/tarruda/has/blob/master/LICENSE-MIT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has" + is-required: "Required" + - + name: "has-symbols" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/inspect-js/has-symbols/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has-symbols" + is-required: "Required" + - + name: "http-errors" + min-version: "1.7.3" + license: "MIT" + license-url: "https://github.com/jshttp/http-errors/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-errors" + is-required: "Required" + - + name: "http-proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-http-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-proxy-agent" + is-required: "Required" + - + name: "humanize-ms" + min-version: "1.2.1" + license: "MIT" + license-url: "https://github.com/node-modules/humanize-ms/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/humanize-ms" + is-required: "Required" + - + name: "iconv-lite" + min-version: "0.4.24" + license: "MIT" + license-url: "https://github.com/ashtuchkin/iconv-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/iconv-lite" + is-required: "Required" + - + name: "inherits" + min-version: "2.0.4" + license: "ISC" + license-url: "https://github.com/isaacs/inherits/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/inherits" + is-required: "Required" + - + name: "ip" + min-version: "1.1.5" + license: "MIT" + license-url: "https://github.com/indutny/node-ip#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ip" + is-required: "Required" + - + name: "isarray" + min-version: "0.0.1" + license: "MIT" + license-url: "https://github.com/juliangruber/isarray/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/isarray" + is-required: "Required" + - + name: "jsonfile" + min-version: "4.0.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-jsonfile/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/jsonfile" + is-required: "Required" + - + name: "levn" + min-version: "0.3.0" + license: "MIT" + license-url: "https://github.com/gkz/levn/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/levn" + is-required: "Required" + - + name: "lil-uuid" + min-version: "0.1.1" + license: "MIT" + license-url: "https://github.com/lil-js/uuid/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/lil-uuid" + is-required: "Required" + - + name: "lru-cache" + min-version: "5.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/node-lru-cache/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/lru-cache" + is-required: "Required" + - + name: "methods" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/jshttp/methods/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/methods" + is-required: "Required" + - + name: "mime" + min-version: "1.6.0" + license: "MIT" + license-url: "https://github.com/broofa/mime/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime" + is-required: "Required" + - + name: "mime-db" + min-version: "1.47.0" + license: "MIT" + license-url: "https://github.com/jshttp/mime-db/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-db" + is-required: "Required" + - + name: "mime-types" + min-version: "2.1.30" + license: "MIT" + license-url: "https://github.com/jshttp/mime-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-types" + is-required: "Required" + - + name: "ms" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/vercel/ms/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ms" + is-required: "Required" + - + name: "netmask" + min-version: "2.0.2" + license: "MIT" + license-url: "https://github.com/rs/node-netmask#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/netmask" + is-required: "Required" + - + name: "object-inspect" + min-version: "1.9.0" + license: "MIT" + license-url: "https://github.com/inspect-js/object-inspect/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/object-inspect" + is-required: "Required" + - + name: "optionator" + min-version: "0.8.3" + license: "MIT" + license-url: "https://github.com/gkz/optionator/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/optionator" + is-required: "Required" + - + name: "pac-proxy-agent" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-proxy-agent" + is-required: "Required" + - + name: "pac-resolver" + min-version: "4.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-resolver#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-resolver" + is-required: "Required" + - + name: "prelude-ls" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/gkz/prelude-ls/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/prelude-ls" + is-required: "Required" + - + name: "process-nextick-args" + min-version: "2.0.1" + license: "MIT" + license-url: "https://github.com/calvinmetcalf/process-nextick-args/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/process-nextick-args" + is-required: "Required" + - + name: "proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-agent" + is-required: "Required" + - + name: "proxy-from-env" + min-version: "1.1.0" + license: "MIT" + license-url: "https://github.com/Rob--W/proxy-from-env/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-from-env" + is-required: "Required" + - + name: "qs" + min-version: "6.10.1" + license: "BSD3" + license-url: "https://github.com/ljharb/qs/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/qs" + is-required: "Required" + - + name: "raw-body" + min-version: "2.4.1" + license: "MIT" + license-url: "https://github.com/stream-utils/raw-body/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/raw-body" + is-required: "Required" + - + name: "readable-stream" + min-version: "1.1.14" + license: "MIT" + license-url: "https://github.com/nodejs/readable-stream/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/readable-stream" + is-required: "Required" + - + name: "safer-buffer" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/ChALkeR/safer-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/safer-buffer" + is-required: "Required" + - + name: "setprototypeof" + min-version: "1.1.1" + license: "ISC" + license-url: "https://github.com/wesleytodd/setprototypeof/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/setprototypeof" + is-required: "Required" + - + name: "side-channel" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/ljharb/side-channel/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/side-channel" + is-required: "Required" + - + name: "smart-buffer" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/smart-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/smart-buffer" + is-required: "Required" + - + name: "socks" + min-version: "2.6.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/socks/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks" + is-required: "Required" + - + name: "socks-proxy-agent" + min-version: "5.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-socks-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks-proxy-agent" + is-required: "Required" + - + name: "source-map" + min-version: "0.6.1" + license: "BSD3" + license-url: "https://github.com/mozilla/source-map/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/source-map" + is-required: "Required" + - + name: "statuses" + min-version: "1.5.0" + license: "MIT" + license-url: "https://github.com/jshttp/statuses/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/statuses" + is-required: "Required" + - + name: "string_decoder" + min-version: "0.10.31" + license: "MIT" + license-url: "https://github.com/nodejs/string_decoder/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/string_decoder" + is-required: "Required" + - + name: "superagent" + min-version: "3.8.1" + license: "MIT" + license-url: "https://github.com/visionmedia/superagent/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent" + is-required: "Required" + - + name: "superagent-proxy" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/superagent-proxy#license" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent-proxy" + is-required: "Required" + - + name: "toidentifier" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/component/toidentifier/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/toidentifier" + is-required: "Required" + - + name: "@tootallnate/once" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/once/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@tootallnate/once" + is-required: "Required" + - + name: "type-check" + min-version: "0.3.2" + license: "MIT" + license-url: "https://github.com/gkz/type-check/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/type-check" + is-required: "Required" + - + name: "universalify" + min-version: "0.1.2" + license: "MIT" + license-url: "https://github.com/RyanZim/universalify/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/universalify" + is-required: "Required" + - + name: "unpipe" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/stream-utils/unpipe/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/unpipe" + is-required: "Required" + - + name: "util-deprecate" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/util-deprecate/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/util-deprecate" + is-required: "Required" + - + name: "word-wrap" + min-version: "1.2.3" + license: "MIT" + license-url: "https://github.com/jonschlinkert/word-wrap/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/word-wrap" + is-required: "Required" + - + name: "xregexp" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/slevithan/xregexp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/xregexp" + is-required: "Required" + - + name: "yallist" + min-version: "3.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/yallist/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/yallist" + is-required: "Required" + - + name: "isomorphic-webcrypto" + min-version: "2.3.6" + license: "MIT" + license-url: "https://github.com/kevlened/isomorphic-webcrypto/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/isomorphic-webcrypto" + is-required: "Required" + - + name: "@peculiar/webcrypto" + min-version: "1.0.22" + license: "MIT" + license-url: "https://github.com/PeculiarVentures/webcrypto/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@peculiar/webcrypto" + is-required: "Required" + - + name: "asmcrypto.js" + min-version: "0.22.0" + license: "MIT" + license-url: "https://github.com/asmcrypto/asmcrypto.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asmcrypto.js" + is-required: "Required" + - + name: "b64-lite" + min-version: "1.3.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64-lite" + is-required: "Required" + - + name: "b64u-lite" + min-version: "1.0.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64u-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64u-lite" + is-required: "Required" + - + name: "msrcrypto" + min-version: "1.5.6" + license: "Apache20" + license-url: "https://github.com/kevlened/msrCrypto/blob/master/LICENSE.TXT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/msrcrypto" + is-required: "Required" + - + name: "str2buf" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/kevlened/str2buf/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/str2buf" + is-required: "Required" + - + name: "webcrypto-shim" + min-version: "0.1.4" + license: "MIT" + license-url: "https://github.com/vibornoff/webcrypto-shim/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/webcrypto-shim" + is-required: "Required" + supported-platforms: + supported-operating-systems: + macOS: + target-architecture: + - arm64 + - x86_64 + minimum-os-version: + - macOS 10.12 + maximum-os-version: + - macOS 11.4 + runtime-version: + - Node.js 8 + Windows: + target-architecture: + - x86-64 + minimum-os-version: + - Windows 7 Professional + - Windows 7 Enterprise + - Windows 7 Ultimate + maximum-os-version: + - Windows 10 Enterprise + runtime-version: + - Node.js 8 + Linux: + target-architecture: + - x86-64 + minimum-os-version: + - Ubuntu 14.04 LTS + maximum-os-version: + - Ubuntu 20.04 LTS + runtime-version: + - Node.js 8 + - + artifact-type: api-client + language: Javascript + tier: 1 + tags: + - Server + source-repository: https://github.com/pubnub/javascript + documentation: https://www.pubnub.com/docs/sdks/javascript/nodejs + distributions: + - + distribution-type: source + distribution-repository: GitHub + package-name: PubNub NodeJS SDK + location: https://github.com/pubnub/javascript + requires: + - + name: "Node.js" + min-version: "8.x and above" + license: "MIT" + license-url: "https://github.com/nodejs/node/blob/master/LICENSE" + location: "Should be installed on computer" + location-url: "https://nodejs.org/en/download/" + is-required: "Required" + - + name: "agentkeepalive" + min-version: "3.5.2" + license: "MIT" + license-url: "https://github.com/node-modules/agentkeepalive/blob/HEAD/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/agentkeepalive" + is-required: "Required" + - + name: "agent-base" + min-version: "6.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-agent-base#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/agent-base" + is-required: "Required" + - + name: "ast-types" + min-version: "0.13.4" + license: "MIT" + license-url: "https://github.com/benjamn/ast-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ast-types" + is-required: "Required" + - + name: "asynckit" + min-version: "0.4.0" + license: "MIT" + license-url: "https://github.com/alexindigo/asynckit/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asynckit" + is-required: "Required" + - + name: "bytes" + min-version: "3.1.0" + license: "MIT" + license-url: "https://github.com/visionmedia/bytes.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/bytes" + is-required: "Required" + - + name: "call-bind" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/ljharb/call-bind/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/call-bind" + is-required: "Required" + - + name: "cbor-js" + min-version: "0.1.0" + license: "MIT" + license-url: "https://github.com/paroga/cbor-js/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-js" + is-required: "Required" + - + name: "cbor-sync" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/PelionIoT/cbor-sync/blob/master/LICENSE.txt" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/cbor-sync" + is-required: "Required" + - + name: "combined-stream" + min-version: "1.0.8" + license: "MIT" + license-url: "https://github.com/felixge/node-combined-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/combined-stream" + is-required: "Required" + - + name: "component-emitter" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/component/emitter/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/component-emitter" + is-required: "Required" + - + name: "cookiejar" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/bmeck/node-cookiejar/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/cookiejar" + is-required: "Required" + - + name: "core-util-is" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/isaacs/core-util-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/core-util-is" + is-required: "Required" + - + name: "data-uri-to-buffer" + min-version: "3.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-data-uri-to-buffer#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/data-uri-to-buffer" + is-required: "Required" + - + name: "debug" + min-version: "3.2.7" + license: "MIT" + license-url: "https://github.com/visionmedia/debug/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/debug" + is-required: "Required" + - + name: "deep-is" + min-version: "0.1.3" + license: "MIT" + license-url: "https://github.com/thlorenz/deep-is/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/deep-is" + is-required: "Required" + - + name: "degenerator" + min-version: "2.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-degenerator#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/degenerator" + is-required: "Required" + - + name: "delayed-stream" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/felixge/node-delayed-stream/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/delayed-stream" + is-required: "Required" + - + name: "depd" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/dougwilson/nodejs-depd/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/depd" + is-required: "Required" + - + name: "escodegen" + min-version: "1.14.3" + license: "BSD2" + license-url: "https://github.com/estools/escodegen/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/escodegen" + is-required: "Required" + - + name: "esprima" + min-version: "4.0.1" + license: "BSD2" + license-url: "https://github.com/jquery/esprima/blob/main/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esprima" + is-required: "Required" + - + name: "estraverse" + min-version: "4.3.0" + license: "BSD2" + license-url: "https://github.com/estools/estraverse/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/estraverse" + is-required: "Required" + - + name: "esutils" + min-version: "2.0.3" + license: "BSD2" + license-url: "https://github.com/estools/esutils/blob/master/LICENSE.BSD" + location: "Transitive" + location-url: "https://www.npmjs.com/package/esutils" + is-required: "Required" + - + name: "extend" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/justmoon/node-extend/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/extend" + is-required: "Required" + - + name: "fast-levenshtein" + min-version: "2.0.6" + license: "MIT" + license-url: "https://github.com/hiddentao/fast-levenshtein/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fast-levenshtein" + is-required: "Required" + - + name: "file-uri-to-path" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/file-uri-to-path/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/file-uri-to-path" + is-required: "Required" + - + name: "form-data" + min-version: "2.5.1" + license: "MIT" + license-url: "https://github.com/form-data/form-data/blob/master/License" + location: "Transitive" + location-url: "https://www.npmjs.com/package/form-data" + is-required: "Required" + - + name: "formidable" + min-version: "1.2.2" + license: "MIT" + license-url: "https://github.com/node-formidable/formidable/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/formidable" + is-required: "Required" + - + name: "fs-extra" + min-version: "8.1.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-fs-extra/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/fs-extra" + is-required: "Required" + - + name: "ftp" + min-version: "0.3.10" + license: "MIT" + license-url: "https://github.com/mscdex/node-ftp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ftp" + is-required: "Required" + - + name: "function-bind" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/Raynos/function-bind/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/function-bind" + is-required: "Required" + - + name: "get-intrinsic" + min-version: "1.1.1" + license: "MIT" + license-url: "https://github.com/ljharb/get-intrinsic/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-intrinsic" + is-required: "Required" + - + name: "get-uri" + min-version: "3.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-get-uri#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/get-uri" + is-required: "Required" + - + name: "graceful-fs" + min-version: "4.2.6" + license: "ISC" + license-url: "https://github.com/isaacs/node-graceful-fs/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/graceful-fs" + is-required: "Required" + - + name: "has" + min-version: "1.0.3" + license: "MIT" + license-url: "https://github.com/tarruda/has/blob/master/LICENSE-MIT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has" + is-required: "Required" + - + name: "has-symbols" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/inspect-js/has-symbols/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/has-symbols" + is-required: "Required" + - + name: "http-errors" + min-version: "1.7.3" + license: "MIT" + license-url: "https://github.com/jshttp/http-errors/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-errors" + is-required: "Required" + - + name: "http-proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-http-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/http-proxy-agent" + is-required: "Required" + - + name: "humanize-ms" + min-version: "1.2.1" + license: "MIT" + license-url: "https://github.com/node-modules/humanize-ms/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/humanize-ms" + is-required: "Required" + - + name: "iconv-lite" + min-version: "0.4.24" + license: "MIT" + license-url: "https://github.com/ashtuchkin/iconv-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/iconv-lite" + is-required: "Required" + - + name: "inherits" + min-version: "2.0.4" + license: "ISC" + license-url: "https://github.com/isaacs/inherits/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/inherits" + is-required: "Required" + - + name: "ip" + min-version: "1.1.5" + license: "MIT" + license-url: "https://github.com/indutny/node-ip#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ip" + is-required: "Required" + - + name: "isarray" + min-version: "0.0.1" + license: "MIT" + license-url: "https://github.com/juliangruber/isarray/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/isarray" + is-required: "Required" + - + name: "jsonfile" + min-version: "4.0.0" + license: "MIT" + license-url: "https://github.com/jprichardson/node-jsonfile/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/jsonfile" + is-required: "Required" + - + name: "levn" + min-version: "0.3.0" + license: "MIT" + license-url: "https://github.com/gkz/levn/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/levn" + is-required: "Required" + - + name: "lil-uuid" + min-version: "0.1.1" + license: "MIT" + license-url: "https://github.com/lil-js/uuid/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/lil-uuid" + is-required: "Required" + - + name: "lru-cache" + min-version: "5.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/node-lru-cache/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/lru-cache" + is-required: "Required" + - + name: "methods" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/jshttp/methods/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/methods" + is-required: "Required" + - + name: "mime" + min-version: "1.6.0" + license: "MIT" + license-url: "https://github.com/broofa/mime/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime" + is-required: "Required" + - + name: "mime-db" + min-version: "1.47.0" + license: "MIT" + license-url: "https://github.com/jshttp/mime-db/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-db" + is-required: "Required" + - + name: "mime-types" + min-version: "2.1.30" + license: "MIT" + license-url: "https://github.com/jshttp/mime-types/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/mime-types" + is-required: "Required" + - + name: "ms" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/vercel/ms/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/ms" + is-required: "Required" + - + name: "netmask" + min-version: "2.0.2" + license: "MIT" + license-url: "https://github.com/rs/node-netmask#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/netmask" + is-required: "Required" + - + name: "object-inspect" + min-version: "1.9.0" + license: "MIT" + license-url: "https://github.com/inspect-js/object-inspect/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/object-inspect" + is-required: "Required" + - + name: "optionator" + min-version: "0.8.3" + license: "MIT" + license-url: "https://github.com/gkz/optionator/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/optionator" + is-required: "Required" + - + name: "pac-proxy-agent" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-proxy-agent" + is-required: "Required" + - + name: "pac-resolver" + min-version: "4.2.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-pac-resolver#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/pac-resolver" + is-required: "Required" + - + name: "prelude-ls" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/gkz/prelude-ls/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/prelude-ls" + is-required: "Required" + - + name: "process-nextick-args" + min-version: "2.0.1" + license: "MIT" + license-url: "https://github.com/calvinmetcalf/process-nextick-args/blob/master/license.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/process-nextick-args" + is-required: "Required" + - + name: "proxy-agent" + min-version: "4.0.1" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-agent" + is-required: "Required" + - + name: "proxy-from-env" + min-version: "1.1.0" + license: "MIT" + license-url: "https://github.com/Rob--W/proxy-from-env/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/proxy-from-env" + is-required: "Required" + - + name: "qs" + min-version: "6.10.1" + license: "BSD3" + license-url: "https://github.com/ljharb/qs/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/qs" + is-required: "Required" + - + name: "raw-body" + min-version: "2.4.1" + license: "MIT" + license-url: "https://github.com/stream-utils/raw-body/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/raw-body" + is-required: "Required" + - + name: "readable-stream" + min-version: "1.1.14" + license: "MIT" + license-url: "https://github.com/nodejs/readable-stream/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/readable-stream" + is-required: "Required" + - + name: "safer-buffer" + min-version: "2.1.2" + license: "MIT" + license-url: "https://github.com/ChALkeR/safer-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/safer-buffer" + is-required: "Required" + - + name: "setprototypeof" + min-version: "1.1.1" + license: "ISC" + license-url: "https://github.com/wesleytodd/setprototypeof/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/setprototypeof" + is-required: "Required" + - + name: "side-channel" + min-version: "1.0.4" + license: "MIT" + license-url: "https://github.com/ljharb/side-channel/blob/main/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/side-channel" + is-required: "Required" + - + name: "smart-buffer" + min-version: "4.1.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/smart-buffer/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/smart-buffer" + is-required: "Required" + - + name: "socks" + min-version: "2.6.0" + license: "MIT" + license-url: "https://github.com/JoshGlazebrook/socks/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks" + is-required: "Required" + - + name: "socks-proxy-agent" + min-version: "5.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/node-socks-proxy-agent#license" + location: "Transitive" + location-url: "https://www.npmjs.com/package/socks-proxy-agent" + is-required: "Required" + - + name: "source-map" + min-version: "0.6.1" + license: "BSD3" + license-url: "https://github.com/mozilla/source-map/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/source-map" + is-required: "Required" + - + name: "statuses" + min-version: "1.5.0" + license: "MIT" + license-url: "https://github.com/jshttp/statuses/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/statuses" + is-required: "Required" + - + name: "string_decoder" + min-version: "0.10.31" + license: "MIT" + license-url: "https://github.com/nodejs/string_decoder/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/string_decoder" + is-required: "Required" + - + name: "superagent" + min-version: "3.8.1" + license: "MIT" + license-url: "https://github.com/visionmedia/superagent/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent" + is-required: "Required" + - + name: "superagent-proxy" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/TooTallNate/superagent-proxy#license" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/superagent-proxy" + is-required: "Required" + - + name: "toidentifier" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/component/toidentifier/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/toidentifier" + is-required: "Required" + - + name: "@tootallnate/once" + min-version: "1.1.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/once/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@tootallnate/once" + is-required: "Required" + - + name: "type-check" + min-version: "0.3.2" + license: "MIT" + license-url: "https://github.com/gkz/type-check/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/type-check" + is-required: "Required" + - + name: "universalify" + min-version: "0.1.2" + license: "MIT" + license-url: "https://github.com/RyanZim/universalify/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/universalify" + is-required: "Required" + - + name: "unpipe" + min-version: "1.0.0" + license: "MIT" + license-url: "https://github.com/stream-utils/unpipe/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/unpipe" + is-required: "Required" + - + name: "util-deprecate" + min-version: "1.0.2" + license: "MIT" + license-url: "https://github.com/TooTallNate/util-deprecate/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/util-deprecate" + is-required: "Required" + - + name: "word-wrap" + min-version: "1.2.3" + license: "MIT" + license-url: "https://github.com/jonschlinkert/word-wrap/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/word-wrap" + is-required: "Required" + - + name: "xregexp" + min-version: "2.0.0" + license: "MIT" + license-url: "https://github.com/slevithan/xregexp/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/xregexp" + is-required: "Required" + - + name: "yallist" + min-version: "3.1.1" + license: "ISC" + license-url: "https://github.com/isaacs/yallist/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/yallist" + is-required: "Required" + - + name: "isomorphic-webcrypto" + min-version: "2.3.6" + license: "MIT" + license-url: "https://github.com/kevlened/isomorphic-webcrypto/blob/master/LICENSE" + location: "Shipped within library" + location-url: "https://www.npmjs.com/package/isomorphic-webcrypto" + is-required: "Required" + - + name: "@peculiar/webcrypto" + min-version: "1.0.22" + license: "MIT" + license-url: "https://github.com/PeculiarVentures/webcrypto/blob/master/LICENSE.md" + location: "Transitive" + location-url: "https://www.npmjs.com/package/@peculiar/webcrypto" + is-required: "Required" + - + name: "asmcrypto.js" + min-version: "0.22.0" + license: "MIT" + license-url: "https://github.com/asmcrypto/asmcrypto.js/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/asmcrypto.js" + is-required: "Required" + - + name: "b64-lite" + min-version: "1.3.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64-lite" + is-required: "Required" + - + name: "b64u-lite" + min-version: "1.0.1" + license: "MIT" + license-url: "https://github.com/kevlened/b64u-lite/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/b64u-lite" + is-required: "Required" + - + name: "msrcrypto" + min-version: "1.5.6" + license: "Apache20" + license-url: "https://github.com/kevlened/msrCrypto/blob/master/LICENSE.TXT" + location: "Transitive" + location-url: "https://www.npmjs.com/package/msrcrypto" + is-required: "Required" + - + name: "str2buf" + min-version: "1.3.0" + license: "MIT" + license-url: "https://github.com/kevlened/str2buf/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/str2buf" + is-required: "Required" + - + name: "webcrypto-shim" + min-version: "0.1.4" + license: "MIT" + license-url: "https://github.com/vibornoff/webcrypto-shim/blob/master/LICENSE" + location: "Transitive" + location-url: "https://www.npmjs.com/package/webcrypto-shim" + is-required: "Required" + supported-platforms: + supported-operating-systems: + macOS: + target-architecture: + - arm64 + - x86_64 + minimum-os-version: + - macOS 10.12 + maximum-os-version: + - macOS 11.4 + runtime-version: + - Node.js 8 + Windows: + target-architecture: + - x86-64 + minimum-os-version: + - Windows 7 Professional + - Windows 7 Enterprise + - Windows 7 Ultimate + maximum-os-version: + - Windows 10 Enterprise + runtime-version: + - Node.js 8 + Linux: + target-architecture: + - x86-64 + minimum-os-version: + - Ubuntu 14.04 LTS + maximum-os-version: + - Ubuntu 20.04 LTS + runtime-version: + - Node.js 8 diff --git a/.travis.yml b/.travis.yml index b167ad6d2..797846eed 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,7 +17,7 @@ stages: - name: "test" if: | type != pull_request - - name: "code coverage" + - name: "test pr branch" if: | type == pull_request @@ -33,10 +33,7 @@ jobs: - name: 'NodeJS 12' node_js: '12' script: gulp test - - stage: "code coverage" - name: 'Test & Code coverage' + - stage: "test pr branch" + name: 'NodeJS 12' node_js: '12' script: gulp test - after_success: - - npm install codecov codacy-coverage - - cat ./coverage/lcov.info | node_modules/.bin/codacy-coverage diff --git a/CHANGELOG.md b/CHANGELOG.md index c3b49ccc5..29018804a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,60 @@ +## v5.0.0 +January 12 2022 + +#### Modified +- BREAKING CHANGES: `uuid` is required parameter in PubNub constructor. + +## v4.37.0 +December 16 2021 + +#### Added +- Add revoke token feature. + +## v4.36.0 +December 09 2021 + +#### Fixed +- Remove isomorphic-webcrypto polyfill for web Add buffer polyfill to react native. Fixed the following issues reported by [@JakeOrel](https://github.com/JakeOrel): [#233](https://github.com/pubnub/javascript/issues/233). + +## v4.35.0 +December 02 2021 + +#### Added +- Allows to specify multiple origins in the config, which enables domain sharding for custom origins. + +## v4.34.2 +December 01 2021 + +#### Fixed +- Fix listener callback is invoked multiple times. Fixed the following issues reported by [@puopg](https://github.com/puopg): [#230](https://github.com/pubnub/javascript/issues/230). + +## v4.34.1 +November 19 2021 + +#### Fixed +- Update `.npmignore` and excluded resources from from NPM package. Fixed the following issues reported by [@ElridgeDMello](https://github.com/ElridgeDMello): [#228](https://github.com/pubnub/javascript/issues/228). + +## v4.34.0 +November 19 2021 + +#### Added +- Upgrade superagent. + +## [v4.33.1](https://github.com/pubnub/javascript/releases/tag/v4.33.1) +October-18-2021 + +[Full Changelog](https://github.com/pubnub/javascript/compare/v4.33.0...v4.33.1) + +- 🐛 Fixes issue of performing file publish message retry according to `fileUploadPublishRetryLimit` setting of PubNub instance. + +## [v4.33.0](https://github.com/pubnub/javascript/releases/tag/v4.33.0) +August-31-2021 + +[Full Changelog](https://github.com/pubnub/javascript/compare/v4.32.1...v4.33.0) + +- 🌟️ Added support for Objects v2 in PAM v3 api. +- 🐛 Fixes issue related to file decryption when cipherkey is provided in method. + ## [v4.32.1](https://github.com/pubnub/javascript/releases/tag/v4.32.1) May-26-2021 diff --git a/README.md b/README.md index 8b1705644..c9947e96a 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,6 @@ [![Build Status](https://travis-ci.com/pubnub/javascript.svg?branch=master)](https://travis-ci.com/pubnub/javascript) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/2859917905c549b8bfa27630ff276fce)](https://www.codacy.com/app/PubNub/javascript?utm_source=github.com&utm_medium=referral&utm_content=pubnub/javascript&utm_campaign=Badge_Grade) -[![Codacy Badge](https://api.codacy.com/project/badge/Coverage/2859917905c549b8bfa27630ff276fce)](https://www.codacy.com/app/PubNub/javascript?utm_source=github.com&utm_medium=referral&utm_content=pubnub/javascript&utm_campaign=Badge_Coverage) [![npm](https://img.shields.io/npm/v/pubnub.svg)]() [![Bower](https://img.shields.io/bower/v/pubnub.svg)]() [![Known Vulnerabilities](https://snyk.io/test/npm/pubnub/badge.svg)](https://snyk.io/test/npm/pubnub) @@ -23,8 +22,8 @@ You will need the publish and subscribe keys to authenticate your app. Get your npm install pubnub ``` * or download one of our builds from our CDN: - * https://cdn.pubnub.com/sdk/javascript/pubnub.4.32.1.js - * https://cdn.pubnub.com/sdk/javascript/pubnub.4.32.1.min.js + * https://cdn.pubnub.com/sdk/javascript/pubnub.5.0.0.js + * https://cdn.pubnub.com/sdk/javascript/pubnub.5.0.0.min.js 2. Configure your keys: @@ -50,7 +49,7 @@ pubnub.addListener({ // handle signals }, objects: (objectEvent) => { - // handle pbjects + // handle objects }, messageAction: function (ma) { // handle message actions diff --git a/dist/titanium/pubnub.js b/dist/titanium/pubnub.js index 5d72310c5..b016daac5 100644 --- a/dist/titanium/pubnub.js +++ b/dist/titanium/pubnub.js @@ -1,4 +1,4 @@ -/*! 4.32.1 / Consumer */ +/*! 5.0.0 / Consumer */ exports["PubNub"] = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache @@ -97,6 +97,7 @@ function _interopRequireDefault(obj) { } module.exports = _interopRequireDefault; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 1 */ @@ -165,7 +166,8 @@ var _default = { PNRemoveChannelsFromGroupOperation: 'PNRemoveChannelsFromGroupOperation', PNAccessManagerGrant: 'PNAccessManagerGrant', PNAccessManagerGrantToken: 'PNAccessManagerGrantToken', - PNAccessManagerAudit: 'PNAccessManagerAudit' + PNAccessManagerAudit: 'PNAccessManagerAudit', + PNAccessManagerRevokeToken: 'PNAccessManagerRevokeToken' }; exports["default"] = _default; module.exports = exports.default; @@ -273,6 +275,7 @@ function _defineProperty(obj, key, value) { } module.exports = _defineProperty; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 5 */ @@ -285,6 +288,7 @@ function _classCallCheck(instance, Constructor) { } module.exports = _classCallCheck; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 6 */ @@ -307,6 +311,7 @@ function _createClass(Constructor, protoProps, staticProps) { } module.exports = _createClass; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 7 */ @@ -319,16 +324,21 @@ function _typeof(obj) { module.exports = _typeof = function _typeof(obj) { return typeof obj; }; + + module.exports["default"] = module.exports, module.exports.__esModule = true; } else { module.exports = _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + module.exports["default"] = module.exports, module.exports.__esModule = true; } return _typeof(obj); } module.exports = _typeof; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 8 */ @@ -357,14 +367,20 @@ var _flow_interfaces = __webpack_require__(2); var PRESENCE_TIMEOUT_MINIMUM = 20; var PRESENCE_TIMEOUT_DEFAULT = 300; +var makeDefaultOrigins = function makeDefaultOrigins() { + return Array.from({ + length: 20 + }, function (_, i) { + return "ps".concat(i + 1, ".pndsn.com"); + }); +}; + var _default = function () { function _default(_ref) { var _setup$fileUploadPubl, _setup$useRandomIVs; - var setup = _ref.setup, - db = _ref.db; + var setup = _ref.setup; (0, _classCallCheck2["default"])(this, _default); - (0, _defineProperty2["default"])(this, "_db", void 0); (0, _defineProperty2["default"])(this, "subscribeKey", void 0); (0, _defineProperty2["default"])(this, "publishKey", void 0); (0, _defineProperty2["default"])(this, "secretKey", void 0); @@ -403,7 +419,6 @@ var _default = function () { (0, _defineProperty2["default"])(this, "fileUploadPublishRetryLimit", void 0); (0, _defineProperty2["default"])(this, "useRandomIVs", void 0); this._PNSDKSuffix = {}; - this._db = db; this.instanceId = "pn-".concat(_uuid["default"].createUUID()); this.secretKey = setup.secretKey || setup.secret_key; this.subscribeKey = setup.subscribeKey || setup.subscribe_key; @@ -414,7 +429,12 @@ var _default = function () { this.setAuthKey(setup.authKey); this.setCipherKey(setup.cipherKey); this.setFilterExpression(setup.filterExpression); - this.origin = setup.origin || 'ps.pndsn.com'; + + if (typeof setup.origin !== 'string' && !Array.isArray(setup.origin) && setup.origin !== undefined) { + throw new Error('Origin must be either undefined, a string or a list of strings.'); + } + + this.origin = setup.origin || makeDefaultOrigins(); this.secure = setup.ssl || false; this.restore = setup.restore || false; this.proxy = setup.proxy; @@ -453,7 +473,7 @@ var _default = function () { this.setHeartbeatInterval(setup.heartbeatInterval); } - this.setUUID(this._decideUUID(setup.uuid)); + this.setUUID(setup.uuid); } (0, _createClass2["default"])(_default, [{ @@ -481,7 +501,10 @@ var _default = function () { }, { key: "setUUID", value: function setUUID(val) { - if (this._db && this._db.set) this._db.set("".concat(this.subscribeKey, "uuid"), val); + if (!val || typeof val !== 'string' || val.trim().length === 0) { + throw new Error('Missing uuid parameter. Provide a valid string uuid'); + } + this.UUID = val; return this; } @@ -566,7 +589,7 @@ var _default = function () { }, { key: "getVersion", value: function getVersion() { - return '4.32.1'; + return '5.0.0'; } }, { key: "_addPnsdkSuffix", @@ -582,19 +605,6 @@ var _default = function () { return result + separator + _this._PNSDKSuffix[key]; }, ''); } - }, { - key: "_decideUUID", - value: function _decideUUID(providedUUID) { - if (providedUUID) { - return providedUUID; - } - - if (this._db && this._db.get && this._db.get("".concat(this.subscribeKey, "uuid"))) { - return this._db.get("".concat(this.subscribeKey, "uuid")); - } - - return "pn-".concat(_uuid["default"].createUUID()); - } }]); return _default; }(); @@ -606,19 +616,20 @@ module.exports = exports.default; /* 9 */ /***/ (function(module, exports, __webpack_require__) { -var arrayWithHoles = __webpack_require__(70); +var arrayWithHoles = __webpack_require__(69); -var iterableToArrayLimit = __webpack_require__(71); +var iterableToArrayLimit = __webpack_require__(70); -var unsupportedIterableToArray = __webpack_require__(72); +var unsupportedIterableToArray = __webpack_require__(71); -var nonIterableRest = __webpack_require__(74); +var nonIterableRest = __webpack_require__(73); function _slicedToArray(arr, i) { return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest(); } module.exports = _slicedToArray; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 10 */ @@ -654,10 +665,12 @@ function _getPrototypeOf(o) { module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; + module.exports["default"] = module.exports, module.exports.__esModule = true; return _getPrototypeOf(o); } module.exports = _getPrototypeOf; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 12 */ @@ -681,6 +694,7 @@ function _inherits(subClass, superClass) { } module.exports = _inherits; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 13 */ @@ -692,28 +706,33 @@ function _setPrototypeOf(o, p) { return o; }; + module.exports["default"] = module.exports, module.exports.__esModule = true; return _setPrototypeOf(o, p); } module.exports = _setPrototypeOf; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 14 */ /***/ (function(module, exports, __webpack_require__) { -var _typeof = __webpack_require__(7); +var _typeof = __webpack_require__(7)["default"]; var assertThisInitialized = __webpack_require__(17); function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; + } else if (call !== void 0) { + throw new TypeError("Derived constructors may only return object or undefined"); } return assertThisInitialized(self); } module.exports = _possibleConstructorReturn; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 15 */ @@ -729,7 +748,7 @@ Object.defineProperty(exports, "__esModule", { }); exports["default"] = void 0; -var _lilUuid = _interopRequireDefault(__webpack_require__(27)); +var _lilUuid = _interopRequireDefault(__webpack_require__(26)); var _default = { createUUID: function createUUID() { @@ -755,11 +774,11 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); +exports.PubNubError = void 0; exports.createValidationError = createValidationError; +exports["default"] = _default; exports.generatePNSDK = generatePNSDK; exports.signRequest = signRequest; -exports["default"] = _default; -exports.PubNubError = void 0; var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); @@ -771,7 +790,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(14) var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(11)); -var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(37)); +var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(36)); var _uuid = _interopRequireDefault(__webpack_require__(15)); @@ -785,13 +804,13 @@ var _operations = _interopRequireDefault(__webpack_require__(1)); var _categories = _interopRequireDefault(__webpack_require__(10)); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var PubNubError = function (_Error) { (0, _inherits2["default"])(PubNubError, _Error); @@ -838,16 +857,6 @@ function decideURL(endpoint, modules, incomingParams) { } } -function getAuthToken(endpoint, modules, incomingParams) { - var token; - - if (endpoint.getAuthToken) { - token = endpoint.getAuthToken(modules, incomingParams); - } - - return token; -} - function generatePNSDK(config) { if (config.sdkName) { return config.sdkName; @@ -928,7 +937,8 @@ function signRequest(modules, url, outgoingParams, incomingParams, endpoint) { function _default(modules, endpoint) { var networking = modules.networking, config = modules.config, - telemetryManager = modules.telemetryManager; + telemetryManager = modules.telemetryManager, + tokenManager = modules.tokenManager; var requestId = _uuid["default"].createUUID(); @@ -988,8 +998,7 @@ function _default(modules, endpoint) { } if (endpoint.isAuthSupported()) { - var token = getAuthToken(endpoint, modules, incomingParams); - var tokenOrKey = token || config.getAuthKey(); + var tokenOrKey = tokenManager.getToken() || config.getAuthKey(); if (tokenOrKey) { outgoingParams.auth = tokenOrKey; @@ -1090,6 +1099,7 @@ function _assertThisInitialized(self) { } module.exports = _assertThisInitialized; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 18 */ @@ -1113,7 +1123,7 @@ var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); var _config = _interopRequireDefault(__webpack_require__(8)); -var _hmacSha = _interopRequireDefault(__webpack_require__(28)); +var _hmacSha = _interopRequireDefault(__webpack_require__(27)); function bufferToWordArray(b) { var wa = []; @@ -1486,11 +1496,11 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; -exports.prepareParams = prepareParams; -exports.isAuthSupported = isAuthSupported; +exports.getURL = getURL; exports.handleResponse = handleResponse; +exports.isAuthSupported = isAuthSupported; +exports.prepareParams = prepareParams; exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -1530,7 +1540,7 @@ function validateParams() {} /* 21 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = __webpack_require__(65); +module.exports = __webpack_require__(64); /***/ }), @@ -1574,6 +1584,7 @@ function _asyncToGenerator(fn) { } module.exports = _asyncToGenerator; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 23 */ @@ -1613,7 +1624,7 @@ var _flow_interfaces = __webpack_require__(2); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var PubNub = function (_PubNubCore) { (0, _inherits2["default"])(PubNub, _PubNubCore); @@ -2283,10 +2294,10 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ "use strict"; -var _interopRequireWildcard = __webpack_require__(26); - var _interopRequireDefault = __webpack_require__(0); +var _typeof = __webpack_require__(7); + Object.defineProperty(exports, "__esModule", { value: true }); @@ -2302,139 +2313,141 @@ var _config = _interopRequireDefault(__webpack_require__(8)); var _index = _interopRequireDefault(__webpack_require__(18)); -var _subscription_manager = _interopRequireDefault(__webpack_require__(29)); +var _subscription_manager = _interopRequireDefault(__webpack_require__(28)); -var _telemetry_manager = _interopRequireDefault(__webpack_require__(32)); +var _telemetry_manager = _interopRequireDefault(__webpack_require__(31)); -var _push_payload = _interopRequireDefault(__webpack_require__(33)); +var _push_payload = _interopRequireDefault(__webpack_require__(32)); var _listener_manager = _interopRequireDefault(__webpack_require__(19)); -var _token_manager = _interopRequireDefault(__webpack_require__(36)); +var _token_manager = _interopRequireDefault(__webpack_require__(35)); var _endpoint = _interopRequireDefault(__webpack_require__(16)); var _utils = __webpack_require__(3); -var addChannelsChannelGroupConfig = _interopRequireWildcard(__webpack_require__(41)); +var addChannelsChannelGroupConfig = _interopRequireWildcard(__webpack_require__(40)); -var removeChannelsChannelGroupConfig = _interopRequireWildcard(__webpack_require__(42)); +var removeChannelsChannelGroupConfig = _interopRequireWildcard(__webpack_require__(41)); -var deleteChannelGroupConfig = _interopRequireWildcard(__webpack_require__(43)); +var deleteChannelGroupConfig = _interopRequireWildcard(__webpack_require__(42)); -var listChannelGroupsConfig = _interopRequireWildcard(__webpack_require__(44)); +var listChannelGroupsConfig = _interopRequireWildcard(__webpack_require__(43)); -var listChannelsInChannelGroupConfig = _interopRequireWildcard(__webpack_require__(45)); +var listChannelsInChannelGroupConfig = _interopRequireWildcard(__webpack_require__(44)); -var addPushChannelsConfig = _interopRequireWildcard(__webpack_require__(46)); +var addPushChannelsConfig = _interopRequireWildcard(__webpack_require__(45)); -var removePushChannelsConfig = _interopRequireWildcard(__webpack_require__(47)); +var removePushChannelsConfig = _interopRequireWildcard(__webpack_require__(46)); -var listPushChannelsConfig = _interopRequireWildcard(__webpack_require__(48)); +var listPushChannelsConfig = _interopRequireWildcard(__webpack_require__(47)); -var removeDevicePushConfig = _interopRequireWildcard(__webpack_require__(49)); +var removeDevicePushConfig = _interopRequireWildcard(__webpack_require__(48)); -var presenceLeaveEndpointConfig = _interopRequireWildcard(__webpack_require__(50)); +var presenceLeaveEndpointConfig = _interopRequireWildcard(__webpack_require__(49)); -var presenceWhereNowEndpointConfig = _interopRequireWildcard(__webpack_require__(51)); +var presenceWhereNowEndpointConfig = _interopRequireWildcard(__webpack_require__(50)); -var presenceHeartbeatEndpointConfig = _interopRequireWildcard(__webpack_require__(52)); +var presenceHeartbeatEndpointConfig = _interopRequireWildcard(__webpack_require__(51)); -var presenceGetStateConfig = _interopRequireWildcard(__webpack_require__(53)); +var presenceGetStateConfig = _interopRequireWildcard(__webpack_require__(52)); -var presenceSetStateConfig = _interopRequireWildcard(__webpack_require__(54)); +var presenceSetStateConfig = _interopRequireWildcard(__webpack_require__(53)); -var presenceHereNowConfig = _interopRequireWildcard(__webpack_require__(55)); +var presenceHereNowConfig = _interopRequireWildcard(__webpack_require__(54)); -var addMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(56)); +var addMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(55)); -var removeMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(57)); +var removeMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(56)); -var getMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(58)); +var getMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(57)); -var _file = __webpack_require__(59); +var _file = __webpack_require__(58); -var fileUploadTypes = _interopRequireWildcard(__webpack_require__(60)); +var fileUploadTypes = _interopRequireWildcard(__webpack_require__(59)); -var _list_files = _interopRequireDefault(__webpack_require__(61)); +var _list_files = _interopRequireDefault(__webpack_require__(60)); -var _generate_upload_url = _interopRequireDefault(__webpack_require__(62)); +var _generate_upload_url = _interopRequireDefault(__webpack_require__(61)); -var _publish_file = _interopRequireDefault(__webpack_require__(63)); +var _publish_file = _interopRequireDefault(__webpack_require__(62)); -var _send_file = _interopRequireDefault(__webpack_require__(64)); +var _send_file = _interopRequireDefault(__webpack_require__(63)); -var _get_file_url = _interopRequireDefault(__webpack_require__(66)); +var _get_file_url = _interopRequireDefault(__webpack_require__(65)); -var _download_file = _interopRequireDefault(__webpack_require__(67)); +var _download_file = _interopRequireDefault(__webpack_require__(66)); -var _delete_file = _interopRequireDefault(__webpack_require__(68)); +var _delete_file = _interopRequireDefault(__webpack_require__(67)); -var _get_all = _interopRequireDefault(__webpack_require__(69)); +var _get_all = _interopRequireDefault(__webpack_require__(68)); -var _get = _interopRequireDefault(__webpack_require__(75)); +var _get = _interopRequireDefault(__webpack_require__(74)); -var _set = _interopRequireDefault(__webpack_require__(76)); +var _set = _interopRequireDefault(__webpack_require__(75)); -var _remove = _interopRequireDefault(__webpack_require__(77)); +var _remove = _interopRequireDefault(__webpack_require__(76)); -var _get_all2 = _interopRequireDefault(__webpack_require__(78)); +var _get_all2 = _interopRequireDefault(__webpack_require__(77)); -var _get2 = _interopRequireDefault(__webpack_require__(79)); +var _get2 = _interopRequireDefault(__webpack_require__(78)); -var _set2 = _interopRequireDefault(__webpack_require__(80)); +var _set2 = _interopRequireDefault(__webpack_require__(79)); -var _remove2 = _interopRequireDefault(__webpack_require__(81)); +var _remove2 = _interopRequireDefault(__webpack_require__(80)); -var _get3 = _interopRequireDefault(__webpack_require__(82)); +var _get3 = _interopRequireDefault(__webpack_require__(81)); -var _set3 = _interopRequireDefault(__webpack_require__(83)); +var _set3 = _interopRequireDefault(__webpack_require__(82)); -var _get4 = _interopRequireDefault(__webpack_require__(84)); +var _get4 = _interopRequireDefault(__webpack_require__(83)); -var _set4 = _interopRequireDefault(__webpack_require__(85)); +var _set4 = _interopRequireDefault(__webpack_require__(84)); -var createUserEndpointConfig = _interopRequireWildcard(__webpack_require__(86)); +var createUserEndpointConfig = _interopRequireWildcard(__webpack_require__(85)); -var updateUserEndpointConfig = _interopRequireWildcard(__webpack_require__(87)); +var updateUserEndpointConfig = _interopRequireWildcard(__webpack_require__(86)); -var deleteUserEndpointConfig = _interopRequireWildcard(__webpack_require__(88)); +var deleteUserEndpointConfig = _interopRequireWildcard(__webpack_require__(87)); -var getUserEndpointConfig = _interopRequireWildcard(__webpack_require__(89)); +var getUserEndpointConfig = _interopRequireWildcard(__webpack_require__(88)); -var getUsersEndpointConfig = _interopRequireWildcard(__webpack_require__(90)); +var getUsersEndpointConfig = _interopRequireWildcard(__webpack_require__(89)); -var createSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(91)); +var createSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(90)); -var updateSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(92)); +var updateSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(91)); -var deleteSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(93)); +var deleteSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(92)); -var getSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(94)); +var getSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(93)); -var getSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(95)); +var getSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(94)); -var getMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(96)); +var getMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(95)); -var addMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(97)); +var addMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(96)); -var updateMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(98)); +var updateMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(97)); -var removeMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(99)); +var removeMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(98)); -var getMembershipsEndpointConfig = _interopRequireWildcard(__webpack_require__(100)); +var getMembershipsEndpointConfig = _interopRequireWildcard(__webpack_require__(99)); -var updateMembershipsEndpointConfig = _interopRequireWildcard(__webpack_require__(101)); +var updateMembershipsEndpointConfig = _interopRequireWildcard(__webpack_require__(100)); -var joinSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(102)); +var joinSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(101)); -var leaveSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(103)); +var leaveSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(102)); -var auditEndpointConfig = _interopRequireWildcard(__webpack_require__(104)); +var auditEndpointConfig = _interopRequireWildcard(__webpack_require__(103)); -var grantEndpointConfig = _interopRequireWildcard(__webpack_require__(105)); +var grantEndpointConfig = _interopRequireWildcard(__webpack_require__(104)); -var grantTokenEndpointConfig = _interopRequireWildcard(__webpack_require__(106)); +var grantTokenEndpointConfig = _interopRequireWildcard(__webpack_require__(105)); + +var _revoke_token = _interopRequireDefault(__webpack_require__(106)); var publishEndpointConfig = _interopRequireWildcard(__webpack_require__(107)); @@ -2460,7 +2473,11 @@ var _flow_interfaces = __webpack_require__(2); var _uuid = _interopRequireDefault(__webpack_require__(15)); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } + +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } @@ -2489,6 +2506,7 @@ var _default = function () { (0, _defineProperty2["default"])(this, "grant", void 0); (0, _defineProperty2["default"])(this, "grantToken", void 0); (0, _defineProperty2["default"])(this, "audit", void 0); + (0, _defineProperty2["default"])(this, "revokeToken", void 0); (0, _defineProperty2["default"])(this, "subscribe", void 0); (0, _defineProperty2["default"])(this, "signal", void 0); (0, _defineProperty2["default"])(this, "presence", void 0); @@ -2536,10 +2554,7 @@ var _default = function () { (0, _defineProperty2["default"])(this, "removeAllListeners", void 0); (0, _defineProperty2["default"])(this, "parseToken", void 0); (0, _defineProperty2["default"])(this, "setToken", void 0); - (0, _defineProperty2["default"])(this, "setTokens", void 0); (0, _defineProperty2["default"])(this, "getToken", void 0); - (0, _defineProperty2["default"])(this, "getTokens", void 0); - (0, _defineProperty2["default"])(this, "clearTokens", void 0); (0, _defineProperty2["default"])(this, "getAuthKey", void 0); (0, _defineProperty2["default"])(this, "setAuthKey", void 0); (0, _defineProperty2["default"])(this, "setCipherKey", void 0); @@ -2551,12 +2566,10 @@ var _default = function () { (0, _defineProperty2["default"])(this, "setProxy", void 0); (0, _defineProperty2["default"])(this, "encrypt", void 0); (0, _defineProperty2["default"])(this, "decrypt", void 0); - var db = setup.db, - networking = setup.networking, + var networking = setup.networking, cbor = setup.cbor; var config = this._config = new _config["default"]({ - setup: setup, - db: db + setup: setup }); var crypto = new _index["default"]({ config: config @@ -2615,10 +2628,7 @@ var _default = function () { this.removeAllListeners = listenerManager.removeAllListeners.bind(listenerManager); this.parseToken = tokenManager.parseToken.bind(tokenManager); this.setToken = tokenManager.setToken.bind(tokenManager); - this.setTokens = tokenManager.setTokens.bind(tokenManager); this.getToken = tokenManager.getToken.bind(tokenManager); - this.getTokens = tokenManager.getTokens.bind(tokenManager); - this.clearTokens = tokenManager.clearTokens.bind(tokenManager); this.channelGroups = { listGroups: _endpoint["default"].bind(this, modules, listChannelGroupsConfig), listChannels: _endpoint["default"].bind(this, modules, listChannelsInChannelGroupConfig), @@ -2639,6 +2649,7 @@ var _default = function () { this.grant = _endpoint["default"].bind(this, modules, grantEndpointConfig); this.grantToken = _endpoint["default"].bind(this, modules, grantTokenEndpointConfig); this.audit = _endpoint["default"].bind(this, modules, auditEndpointConfig); + this.revokeToken = _endpoint["default"].bind(this, modules, _revoke_token["default"]); this.publish = _endpoint["default"].bind(this, modules, publishEndpointConfig); this.fire = function (args, callback) { @@ -2825,66 +2836,6 @@ module.exports = exports.default; /* 26 */ /***/ (function(module, exports, __webpack_require__) { -var _typeof = __webpack_require__(7); - -function _getRequireWildcardCache() { - if (typeof WeakMap !== "function") return null; - var cache = new WeakMap(); - - _getRequireWildcardCache = function _getRequireWildcardCache() { - return cache; - }; - - return cache; -} - -function _interopRequireWildcard(obj) { - if (obj && obj.__esModule) { - return obj; - } - - if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { - return { - "default": obj - }; - } - - var cache = _getRequireWildcardCache(); - - if (cache && cache.has(obj)) { - return cache.get(obj); - } - - var newObj = {}; - var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; - - for (var key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) { - var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; - - if (desc && (desc.get || desc.set)) { - Object.defineProperty(newObj, key, desc); - } else { - newObj[key] = obj[key]; - } - } - } - - newObj["default"] = obj; - - if (cache) { - cache.set(obj, newObj); - } - - return newObj; -} - -module.exports = _interopRequireWildcard; - -/***/ }), -/* 27 */ -/***/ (function(module, exports, __webpack_require__) { - var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! lil-uuid - v0.1 - MIT License - https://github.com/lil-js/uuid */ (function (root, factory) { if (true) { @@ -2926,7 +2877,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ /***/ }), -/* 28 */ +/* 27 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3833,7 +3784,7 @@ CryptoJS.mode.ECB = function () { module.exports = CryptoJS; /***/ }), -/* 29 */ +/* 28 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3860,9 +3811,9 @@ var _config = _interopRequireDefault(__webpack_require__(8)); var _listener_manager = _interopRequireDefault(__webpack_require__(19)); -var _reconnection_manager = _interopRequireDefault(__webpack_require__(30)); +var _reconnection_manager = _interopRequireDefault(__webpack_require__(29)); -var _deduping_manager = _interopRequireDefault(__webpack_require__(31)); +var _deduping_manager = _interopRequireDefault(__webpack_require__(30)); var _utils = _interopRequireDefault(__webpack_require__(3)); @@ -4581,7 +4532,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 30 */ +/* 29 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4650,7 +4601,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 31 */ +/* 30 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4730,7 +4681,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 32 */ +/* 31 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4891,7 +4842,8 @@ var _default = function () { break; case _operations["default"].PNAccessManagerGrantToken: - operation = 'pam3'; + case _operations["default"].PNAccessManagerRevokeToken: + operation = 'pamv3'; break; default: @@ -4909,7 +4861,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 33 */ +/* 32 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4920,9 +4872,9 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); -exports["default"] = exports.FCMNotificationPayload = exports.MPNSNotificationPayload = exports.APNSNotificationPayload = void 0; +exports["default"] = exports.MPNSNotificationPayload = exports.FCMNotificationPayload = exports.APNSNotificationPayload = void 0; -var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(34)); +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(33)); var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(17)); @@ -4940,15 +4892,33 @@ var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); var _flow_interfaces = __webpack_require__(2); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +var _excluded = ["notification", "data"]; + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var BaseNotificationPayload = function () { + function BaseNotificationPayload(payload, title, body) { + (0, _classCallCheck2["default"])(this, BaseNotificationPayload); + (0, _defineProperty2["default"])(this, "_subtitle", void 0); + (0, _defineProperty2["default"])(this, "_payload", void 0); + (0, _defineProperty2["default"])(this, "_badge", void 0); + (0, _defineProperty2["default"])(this, "_sound", void 0); + (0, _defineProperty2["default"])(this, "_title", void 0); + (0, _defineProperty2["default"])(this, "_body", void 0); + this._payload = payload; + + this._setDefaultPayloadStructure(); + + this.title = title; + this.body = body; + } + (0, _createClass2["default"])(BaseNotificationPayload, [{ key: "payload", get: function get() { @@ -4979,25 +4949,7 @@ var BaseNotificationPayload = function () { set: function set(value) { this._sound = value; } - }]); - - function BaseNotificationPayload(payload, title, body) { - (0, _classCallCheck2["default"])(this, BaseNotificationPayload); - (0, _defineProperty2["default"])(this, "_subtitle", void 0); - (0, _defineProperty2["default"])(this, "_payload", void 0); - (0, _defineProperty2["default"])(this, "_badge", void 0); - (0, _defineProperty2["default"])(this, "_sound", void 0); - (0, _defineProperty2["default"])(this, "_title", void 0); - (0, _defineProperty2["default"])(this, "_body", void 0); - this._payload = payload; - - this._setDefaultPayloadStructure(); - - this.title = title; - this.body = body; - } - - (0, _createClass2["default"])(BaseNotificationPayload, [{ + }, { key: "_setDefaultPayloadStructure", value: function _setDefaultPayloadStructure() {} }, { @@ -5031,6 +4983,72 @@ var APNSNotificationPayload = function (_BaseNotificationPayl) { } (0, _createClass2["default"])(APNSNotificationPayload, [{ + key: "configurations", + set: function set(value) { + if (!value || !value.length) return; + this._configurations = value; + } + }, { + key: "notification", + get: function get() { + return this._payload.aps; + } + }, { + key: "title", + get: function get() { + return this._title; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.title = value; + this._title = value; + } + }, { + key: "subtitle", + get: function get() { + return this._subtitle; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.subtitle = value; + this._subtitle = value; + } + }, { + key: "body", + get: function get() { + return this._body; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.body = value; + this._body = value; + } + }, { + key: "badge", + get: function get() { + return this._badge; + }, + set: function set(value) { + if (value === undefined || value === null) return; + this._payload.aps.badge = value; + this._badge = value; + } + }, { + key: "sound", + get: function get() { + return this._sound; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.sound = value; + this._sound = value; + } + }, { + key: "silent", + set: function set(value) { + this._isSilent = value; + } + }, { key: "_setDefaultPayloadStructure", value: function _setDefaultPayloadStructure() { this._payload.aps = { @@ -5134,72 +5152,6 @@ var APNSNotificationPayload = function (_BaseNotificationPayl) { return objectifiedTarget; } - }, { - key: "configurations", - set: function set(value) { - if (!value || !value.length) return; - this._configurations = value; - } - }, { - key: "notification", - get: function get() { - return this._payload.aps; - } - }, { - key: "title", - get: function get() { - return this._title; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.title = value; - this._title = value; - } - }, { - key: "subtitle", - get: function get() { - return this._subtitle; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.subtitle = value; - this._subtitle = value; - } - }, { - key: "body", - get: function get() { - return this._body; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.body = value; - this._body = value; - } - }, { - key: "badge", - get: function get() { - return this._badge; - }, - set: function set(value) { - if (value === undefined || value === null) return; - this._payload.aps.badge = value; - this._badge = value; - } - }, { - key: "sound", - get: function get() { - return this._sound; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.sound = value; - this._sound = value; - } - }, { - key: "silent", - set: function set(value) { - this._isSilent = value; - } }]); return APNSNotificationPayload; }(BaseNotificationPayload); @@ -5229,11 +5181,6 @@ var MPNSNotificationPayload = function (_BaseNotificationPayl2) { } (0, _createClass2["default"])(MPNSNotificationPayload, [{ - key: "toObject", - value: function toObject() { - return Object.keys(this._payload).length ? _objectSpread({}, this._payload) : null; - } - }, { key: "backContent", get: function get() { return this._backContent; @@ -5307,6 +5254,11 @@ var MPNSNotificationPayload = function (_BaseNotificationPayl2) { set: function set(value) { this.count = value; } + }, { + key: "toObject", + value: function toObject() { + return Object.keys(this._payload).length ? _objectSpread({}, this._payload) : null; + } }]); return MPNSNotificationPayload; }(BaseNotificationPayload); @@ -5335,44 +5287,6 @@ var FCMNotificationPayload = function (_BaseNotificationPayl3) { } (0, _createClass2["default"])(FCMNotificationPayload, [{ - key: "_setDefaultPayloadStructure", - value: function _setDefaultPayloadStructure() { - this._payload.notification = {}; - this._payload.data = {}; - } - }, { - key: "toObject", - value: function toObject() { - var data = _objectSpread({}, this._payload.data); - - var notification = null; - var payload = {}; - - if (Object.keys(this._payload).length > 2) { - var _this$_payload = this._payload, - initialNotification = _this$_payload.notification, - initialData = _this$_payload.data, - additionalData = (0, _objectWithoutProperties2["default"])(_this$_payload, ["notification", "data"]); - data = _objectSpread(_objectSpread({}, data), additionalData); - } - - if (this._isSilent) { - data.notification = this._payload.notification; - } else { - notification = this._payload.notification; - } - - if (Object.keys(data).length) { - payload.data = data; - } - - if (notification && Object.keys(notification).length) { - payload.notification = notification; - } - - return Object.keys(payload).length ? payload : null; - } - }, { key: "notification", get: function get() { return this._payload.notification; @@ -5437,6 +5351,44 @@ var FCMNotificationPayload = function (_BaseNotificationPayl3) { set: function set(value) { this._isSilent = value; } + }, { + key: "_setDefaultPayloadStructure", + value: function _setDefaultPayloadStructure() { + this._payload.notification = {}; + this._payload.data = {}; + } + }, { + key: "toObject", + value: function toObject() { + var data = _objectSpread({}, this._payload.data); + + var notification = null; + var payload = {}; + + if (Object.keys(this._payload).length > 2) { + var _this$_payload = this._payload, + initialNotification = _this$_payload.notification, + initialData = _this$_payload.data, + additionalData = (0, _objectWithoutProperties2["default"])(_this$_payload, _excluded); + data = _objectSpread(_objectSpread({}, data), additionalData); + } + + if (this._isSilent) { + data.notification = this._payload.notification; + } else { + notification = this._payload.notification; + } + + if (Object.keys(data).length) { + payload.data = data; + } + + if (notification && Object.keys(notification).length) { + payload.notification = notification; + } + + return Object.keys(payload).length ? payload : null; + } }]); return FCMNotificationPayload; }(BaseNotificationPayload); @@ -5444,6 +5396,30 @@ var FCMNotificationPayload = function (_BaseNotificationPayl3) { exports.FCMNotificationPayload = FCMNotificationPayload; var NotificationsPayload = function () { + function NotificationsPayload(title, body) { + (0, _classCallCheck2["default"])(this, NotificationsPayload); + (0, _defineProperty2["default"])(this, "_payload", void 0); + (0, _defineProperty2["default"])(this, "_debugging", void 0); + (0, _defineProperty2["default"])(this, "_subtitle", void 0); + (0, _defineProperty2["default"])(this, "_badge", void 0); + (0, _defineProperty2["default"])(this, "_sound", void 0); + (0, _defineProperty2["default"])(this, "_title", void 0); + (0, _defineProperty2["default"])(this, "_body", void 0); + (0, _defineProperty2["default"])(this, "apns", void 0); + (0, _defineProperty2["default"])(this, "mpns", void 0); + (0, _defineProperty2["default"])(this, "fcm", void 0); + this._payload = { + apns: {}, + mpns: {}, + fcm: {} + }; + this._title = title; + this._body = body; + this.apns = new APNSNotificationPayload(this._payload.apns, title, body); + this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body); + this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body); + } + (0, _createClass2["default"])(NotificationsPayload, [{ key: "debugging", set: function set(value) { @@ -5492,33 +5468,7 @@ var NotificationsPayload = function () { this.mpns.sound = value; this.fcm.sound = value; } - }]); - - function NotificationsPayload(title, body) { - (0, _classCallCheck2["default"])(this, NotificationsPayload); - (0, _defineProperty2["default"])(this, "_payload", void 0); - (0, _defineProperty2["default"])(this, "_debugging", void 0); - (0, _defineProperty2["default"])(this, "_subtitle", void 0); - (0, _defineProperty2["default"])(this, "_badge", void 0); - (0, _defineProperty2["default"])(this, "_sound", void 0); - (0, _defineProperty2["default"])(this, "_title", void 0); - (0, _defineProperty2["default"])(this, "_body", void 0); - (0, _defineProperty2["default"])(this, "apns", void 0); - (0, _defineProperty2["default"])(this, "mpns", void 0); - (0, _defineProperty2["default"])(this, "fcm", void 0); - this._payload = { - apns: {}, - mpns: {}, - fcm: {} - }; - this._title = title; - this._body = body; - this.apns = new APNSNotificationPayload(this._payload.apns, title, body); - this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body); - this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body); - } - - (0, _createClass2["default"])(NotificationsPayload, [{ + }, { key: "buildPayload", value: function buildPayload(platforms) { var payload = {}; @@ -5562,10 +5512,10 @@ var _default = NotificationsPayload; exports["default"] = _default; /***/ }), -/* 34 */ +/* 33 */ /***/ (function(module, exports, __webpack_require__) { -var objectWithoutPropertiesLoose = __webpack_require__(35); +var objectWithoutPropertiesLoose = __webpack_require__(34); function _objectWithoutProperties(source, excluded) { if (source == null) return {}; @@ -5587,9 +5537,10 @@ function _objectWithoutProperties(source, excluded) { } module.exports = _objectWithoutProperties; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 35 */ +/* 34 */ /***/ (function(module, exports) { function _objectWithoutPropertiesLoose(source, excluded) { @@ -5608,9 +5559,10 @@ function _objectWithoutPropertiesLoose(source, excluded) { } module.exports = _objectWithoutPropertiesLoose; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 36 */ +/* 35 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5623,8 +5575,6 @@ Object.defineProperty(exports, "__esModule", { }); exports["default"] = void 0; -var _typeof2 = _interopRequireDefault(__webpack_require__(7)); - var _classCallCheck2 = _interopRequireDefault(__webpack_require__(5)); var _createClass2 = _interopRequireDefault(__webpack_require__(6)); @@ -5640,154 +5590,48 @@ var _default = function () { (0, _classCallCheck2["default"])(this, _default); (0, _defineProperty2["default"])(this, "_config", void 0); (0, _defineProperty2["default"])(this, "_cbor", void 0); - (0, _defineProperty2["default"])(this, "_userTokens", void 0); - (0, _defineProperty2["default"])(this, "_spaceTokens", void 0); - (0, _defineProperty2["default"])(this, "_userToken", void 0); - (0, _defineProperty2["default"])(this, "_spaceToken", void 0); + (0, _defineProperty2["default"])(this, "_token", void 0); this._config = config; this._cbor = cbor; - - this._initializeTokens(); } (0, _createClass2["default"])(_default, [{ - key: "_initializeTokens", - value: function _initializeTokens() { - this._userTokens = {}; - this._spaceTokens = {}; - this._userToken = undefined; - this._spaceToken = undefined; - } - }, { - key: "_setToken", - value: function _setToken(token) { - var _this = this; - - var tokenObject = this.parseToken(token); - - if (tokenObject && tokenObject.resources) { - if (tokenObject.resources.users) { - Object.keys(tokenObject.resources.users).forEach(function (id) { - _this._userTokens[id] = token; - }); - } - - if (tokenObject.resources.spaces) { - Object.keys(tokenObject.resources.spaces).forEach(function (id) { - _this._spaceTokens[id] = token; - }); - } - } - - if (tokenObject && tokenObject.patterns) { - if (tokenObject.patterns.users && Object.keys(tokenObject.patterns.users).length > 0) { - this._userToken = token; - } - - if (tokenObject.patterns.spaces && Object.keys(tokenObject.patterns.spaces).length > 0) { - this._spaceToken = token; - } - } - } - }, { key: "setToken", value: function setToken(token) { if (token && token.length > 0) { - this._setToken(token); - } - } - }, { - key: "setTokens", - value: function setTokens(tokens) { - var _this2 = this; - - if (tokens && tokens.length && (0, _typeof2["default"])(tokens) === 'object') { - tokens.forEach(function (token) { - _this2.setToken(token); - }); - } - } - }, { - key: "getTokens", - value: function getTokens(tokenDef) { - var _this3 = this; - - var result = { - users: {}, - spaces: {} - }; - - if (tokenDef) { - if (tokenDef.user) { - result.user = this._userToken; - } - - if (tokenDef.space) { - result.space = this._spaceToken; - } - - if (tokenDef.users) { - tokenDef.users.forEach(function (user) { - result.users[user] = _this3._userTokens[user]; - }); - } - - if (tokenDef.space) { - tokenDef.spaces.forEach(function (space) { - result.spaces[space] = _this3._spaceTokens[space]; - }); - } + this._token = token; } else { - if (this._userToken) { - result.user = this._userToken; - } - - if (this._spaceToken) { - result.space = this._spaceToken; - } - - Object.keys(this._userTokens).forEach(function (user) { - result.users[user] = _this3._userTokens[user]; - }); - Object.keys(this._spaceTokens).forEach(function (space) { - result.spaces[space] = _this3._spaceTokens[space]; - }); + this._token = undefined; } - - return result; } }, { key: "getToken", - value: function getToken(type, id) { - var result; - - if (id) { - if (type === 'user') { - result = this._userTokens[id]; - } else if (type === 'space') { - result = this._spaceTokens[id]; - } - } else if (type === 'user') { - result = this._userToken; - } else if (type === 'space') { - result = this._spaceToken; - } - - return result; + value: function getToken() { + return this._token; } }, { key: "extractPermissions", value: function extractPermissions(permissions) { var permissionsResult = { - create: false, read: false, write: false, manage: false, - "delete": false + "delete": false, + get: false, + update: false, + join: false }; - if ((permissions & 16) === 16) { - permissionsResult.create = true; + if ((permissions & 128) === 128) { + permissionsResult.join = true; + } + + if ((permissions & 64) === 64) { + permissionsResult.update = true; + } + + if ((permissions & 32) === 32) { + permissionsResult.get = true; } if ((permissions & 8) === 8) { @@ -5811,94 +5655,77 @@ var _default = function () { }, { key: "parseToken", value: function parseToken(tokenString) { - var _this4 = this; + var _this = this; var parsed = this._cbor.decodeToken(tokenString); if (parsed !== undefined) { - var userResourcePermissions = Object.keys(parsed.res.usr); - var spaceResourcePermissions = Object.keys(parsed.res.spc); + var uuidResourcePermissions = parsed.res.uuid ? Object.keys(parsed.res.uuid) : []; var channelResourcePermissions = Object.keys(parsed.res.chan); var groupResourcePermissions = Object.keys(parsed.res.grp); - var userPatternPermissions = Object.keys(parsed.pat.usr); - var spacePatternPermissions = Object.keys(parsed.pat.spc); + var uuidPatternPermissions = parsed.pat.uuid ? Object.keys(parsed.pat.uuid) : []; var channelPatternPermissions = Object.keys(parsed.pat.chan); var groupPatternPermissions = Object.keys(parsed.pat.grp); var result = { version: parsed.v, timestamp: parsed.t, - ttl: parsed.ttl + ttl: parsed.ttl, + authorized_uuid: parsed.uuid }; - var userResources = userResourcePermissions.length > 0; - var spaceResources = spaceResourcePermissions.length > 0; + var uuidResources = uuidResourcePermissions.length > 0; var channelResources = channelResourcePermissions.length > 0; var groupResources = groupResourcePermissions.length > 0; - if (userResources || spaceResources || channelResources || groupResources) { + if (uuidResources || channelResources || groupResources) { result.resources = {}; - if (userResources) { - result.resources.users = {}; - userResourcePermissions.forEach(function (id) { - result.resources.users[id] = _this4.extractPermissions(parsed.res.usr[id]); - }); - } - - if (spaceResources) { - result.resources.spaces = {}; - spaceResourcePermissions.forEach(function (id) { - result.resources.spaces[id] = _this4.extractPermissions(parsed.res.spc[id]); + if (uuidResources) { + result.resources.uuids = {}; + uuidResourcePermissions.forEach(function (id) { + result.resources.uuids[id] = _this.extractPermissions(parsed.res.uuid[id]); }); } if (channelResources) { result.resources.channels = {}; channelResourcePermissions.forEach(function (id) { - result.resources.channels[id] = _this4.extractPermissions(parsed.res.chan[id]); + result.resources.channels[id] = _this.extractPermissions(parsed.res.chan[id]); }); } if (groupResources) { result.resources.groups = {}; groupResourcePermissions.forEach(function (id) { - result.resources.groups[id] = _this4.extractPermissions(parsed.res.grp[id]); + result.resources.groups[id] = _this.extractPermissions(parsed.res.grp[id]); }); } } - var userPatterns = userPatternPermissions.length > 0; - var spacePatterns = spacePatternPermissions.length > 0; + var uuidPatterns = uuidPatternPermissions.length > 0; var channelPatterns = channelPatternPermissions.length > 0; var groupPatterns = groupPatternPermissions.length > 0; - if (userPatterns || spacePatterns || channelPatterns || groupPatterns) { + if (uuidPatterns || channelPatterns || groupPatterns) { result.patterns = {}; - if (userPatterns) { - result.patterns.users = {}; - userPatternPermissions.forEach(function (id) { - result.patterns.users[id] = _this4.extractPermissions(parsed.pat.usr[id]); - }); - } - - if (spacePatterns) { - result.patterns.spaces = {}; - spacePatternPermissions.forEach(function (id) { - result.patterns.spaces[id] = _this4.extractPermissions(parsed.pat.spc[id]); + if (uuidPatterns) { + result.patterns.uuids = {}; + uuidPatternPermissions.forEach(function (id) { + result.patterns.uuids[id] = _this.extractPermissions(parsed.pat.uuid[id]); }); } if (channelPatterns) { result.patterns.channels = {}; channelPatternPermissions.forEach(function (id) { - result.patterns.channels[id] = _this4.extractPermissions(parsed.pat.chan[id]); + result.patterns.channels[id] = _this.extractPermissions(parsed.pat.chan[id]); }); } if (groupPatterns) { result.patterns.groups = {}; groupPatternPermissions.forEach(function (id) { - result.patterns.groups[id] = _this4.extractPermissions(parsed.pat.grp[id]); + result.patterns.groups[id] = _this.extractPermissions(parsed.pat.grp[id]); }); } } @@ -5913,11 +5740,6 @@ var _default = function () { return undefined; } } - }, { - key: "clearTokens", - value: function clearTokens() { - this._initializeTokens(); - } }]); return _default; }(); @@ -5926,16 +5748,16 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 37 */ +/* 36 */ /***/ (function(module, exports, __webpack_require__) { var getPrototypeOf = __webpack_require__(11); var setPrototypeOf = __webpack_require__(13); -var isNativeFunction = __webpack_require__(38); +var isNativeFunction = __webpack_require__(37); -var construct = __webpack_require__(39); +var construct = __webpack_require__(38); function _wrapNativeSuper(Class) { var _cache = typeof Map === "function" ? new Map() : undefined; @@ -5968,13 +5790,15 @@ function _wrapNativeSuper(Class) { return setPrototypeOf(Wrapper, Class); }; + module.exports["default"] = module.exports, module.exports.__esModule = true; return _wrapNativeSuper(Class); } module.exports = _wrapNativeSuper; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 38 */ +/* 37 */ /***/ (function(module, exports) { function _isNativeFunction(fn) { @@ -5982,18 +5806,20 @@ function _isNativeFunction(fn) { } module.exports = _isNativeFunction; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 39 */ +/* 38 */ /***/ (function(module, exports, __webpack_require__) { var setPrototypeOf = __webpack_require__(13); -var isNativeReflectConstruct = __webpack_require__(40); +var isNativeReflectConstruct = __webpack_require__(39); function _construct(Parent, args, Class) { if (isNativeReflectConstruct()) { module.exports = _construct = Reflect.construct; + module.exports["default"] = module.exports, module.exports.__esModule = true; } else { module.exports = _construct = function _construct(Parent, args, Class) { var a = [null]; @@ -6003,15 +5829,18 @@ function _construct(Parent, args, Class) { if (Class) setPrototypeOf(instance, Class.prototype); return instance; }; + + module.exports["default"] = module.exports, module.exports.__esModule = true; } return _construct.apply(null, arguments); } module.exports = _construct; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 40 */ +/* 39 */ /***/ (function(module, exports) { function _isNativeReflectConstruct() { @@ -6020,7 +5849,7 @@ function _isNativeReflectConstruct() { if (typeof Proxy === "function") return true; try { - Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); + Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; @@ -6028,9 +5857,10 @@ function _isNativeReflectConstruct() { } module.exports = _isNativeReflectConstruct; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 41 */ +/* 40 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6042,12 +5872,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6096,7 +5926,7 @@ function handleResponse() { } /***/ }), -/* 42 */ +/* 41 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6108,12 +5938,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6162,7 +5992,7 @@ function handleResponse() { } /***/ }), -/* 43 */ +/* 42 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6174,12 +6004,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; +exports.getRequestTimeout = getRequestTimeout; exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getRequestTimeout = getRequestTimeout; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6222,7 +6052,7 @@ function handleResponse() { } /***/ }), -/* 44 */ +/* 43 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6234,12 +6064,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6279,7 +6109,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 45 */ +/* 44 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6291,12 +6121,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6341,7 +6171,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 46 */ +/* 45 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6353,12 +6183,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6430,7 +6260,7 @@ function handleResponse() { } /***/ }), -/* 47 */ +/* 46 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6442,12 +6272,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6519,7 +6349,7 @@ function handleResponse() { } /***/ }), -/* 48 */ +/* 47 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6531,12 +6361,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6605,7 +6435,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 49 */ +/* 48 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6617,12 +6447,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6689,7 +6519,7 @@ function handleResponse() { } /***/ }), -/* 50 */ +/* 49 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6701,12 +6531,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6757,7 +6587,7 @@ function handleResponse() { } /***/ }), -/* 51 */ +/* 50 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6769,12 +6599,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6824,7 +6654,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 52 */ +/* 51 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6836,12 +6666,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; +exports.getRequestTimeout = getRequestTimeout; exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getRequestTimeout = getRequestTimeout; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6897,7 +6727,7 @@ function handleResponse() { } /***/ }), -/* 53 */ +/* 52 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6909,12 +6739,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -6981,7 +6811,7 @@ function handleResponse(modules, serverResponse, incomingParams) { } /***/ }), -/* 54 */ +/* 53 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6993,12 +6823,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -7060,7 +6890,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 55 */ +/* 54 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7072,13 +6902,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleError = handleError; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; -exports.handleError = handleError; +exports.validateParams = validateParams; var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); @@ -7088,7 +6918,7 @@ var _operations = _interopRequireDefault(__webpack_require__(1)); var _utils = _interopRequireDefault(__webpack_require__(3)); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } @@ -7241,7 +7071,7 @@ function handleError(modules, params, status) { } /***/ }), -/* 56 */ +/* 55 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7253,15 +7083,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.postURL = postURL; -exports.getRequestTimeout = getRequestTimeout; exports.getRequestHeaders = getRequestHeaders; +exports.getRequestTimeout = getRequestTimeout; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -7328,7 +7158,7 @@ function handleResponse(modules, addMessageActionResponse) { } /***/ }), -/* 57 */ +/* 56 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7340,13 +7170,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -7401,7 +7231,7 @@ function handleResponse(modules, removeMessageActionResponse) { } /***/ }), -/* 58 */ +/* 57 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7413,12 +7243,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -7479,21 +7309,21 @@ function handleResponse(modules, getMessageActionsResponse) { } /***/ }), -/* 59 */ +/* 58 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; /***/ }), -/* 60 */ +/* 59 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; /***/ }), -/* 61 */ +/* 60 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7515,7 +7345,7 @@ var endpoint = { return _operations["default"].PNListFilesOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'channel can\'t be empty'; } }, @@ -7530,10 +7360,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams(_, params) { var outParams = {}; @@ -7561,7 +7387,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 62 */ +/* 61 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7583,11 +7409,11 @@ var endpoint = { return _operations["default"].PNGenerateUploadUrlOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'channel can\'t be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return 'name can\'t be empty'; } }, @@ -7610,10 +7436,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams() { return {}; }, @@ -7630,7 +7452,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 63 */ +/* 62 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7667,15 +7489,15 @@ var endpoint = { return _operations["default"].PNPublishFileOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.fileId)) { + if (!(params !== null && params !== void 0 && params.fileId)) { return "file id can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.fileName)) { + if (!(params !== null && params !== void 0 && params.fileName)) { return "file name can't be empty"; } }, @@ -7700,10 +7522,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams(_, params) { var outParams = {}; @@ -7732,7 +7550,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 64 */ +/* 63 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7952,20 +7770,15 @@ var sendFile = function sendFile(_ref) { throw new _endpoint.PubNubError('Upload to bucket was unsuccessful', result); case 82: - retries = 5; + retries = config.fileUploadPublishRetryLimit; wasSuccessful = false; publishResult = { timetoken: '0' }; case 85: - if (!(!wasSuccessful && retries > 0)) { - _context.next = 98; - break; - } - - _context.prev = 86; - _context.next = 89; + _context.prev = 85; + _context.next = 88; return publishFile({ channel: channel, message: message, @@ -7976,24 +7789,26 @@ var sendFile = function sendFile(_ref) { ttl: ttl }); - case 89: + case 88: publishResult = _context.sent; wasSuccessful = true; - _context.next = 96; + _context.next = 95; break; - case 93: - _context.prev = 93; - _context.t17 = _context["catch"](86); + case 92: + _context.prev = 92; + _context.t17 = _context["catch"](85); retries -= 1; - case 96: - _context.next = 85; - break; + case 95: + if (!wasSuccessful && retries > 0) { + _context.next = 85; + break; + } - case 98: + case 96: if (wasSuccessful) { - _context.next = 102; + _context.next = 100; break; } @@ -8003,19 +7818,19 @@ var sendFile = function sendFile(_ref) { name: name }); - case 102: + case 100: return _context.abrupt("return", { timetoken: publishResult.timetoken, id: id, name: name }); - case 103: + case 101: case "end": return _context.stop(); } } - }, _callee, null, [[21, 73], [86, 93]]); + }, _callee, null, [[21, 73], [85, 92]]); })); return function (_x) { @@ -8046,7 +7861,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 65 */ +/* 64 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -8137,9 +7952,9 @@ var runtime = (function (exports) { // This is a polyfill for %IteratorPrototype% for environments that // don't natively support it. var IteratorPrototype = {}; - IteratorPrototype[iteratorSymbol] = function () { + define(IteratorPrototype, iteratorSymbol, function () { return this; - }; + }); var getProto = Object.getPrototypeOf; var NativeIteratorPrototype = getProto && getProto(getProto(values([]))); @@ -8153,8 +7968,9 @@ var runtime = (function (exports) { var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); - GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype; - GeneratorFunctionPrototype.constructor = GeneratorFunction; + GeneratorFunction.prototype = GeneratorFunctionPrototype; + define(Gp, "constructor", GeneratorFunctionPrototype); + define(GeneratorFunctionPrototype, "constructor", GeneratorFunction); GeneratorFunction.displayName = define( GeneratorFunctionPrototype, toStringTagSymbol, @@ -8268,9 +8084,9 @@ var runtime = (function (exports) { } defineIteratorMethods(AsyncIterator.prototype); - AsyncIterator.prototype[asyncIteratorSymbol] = function () { + define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; - }; + }); exports.AsyncIterator = AsyncIterator; // Note that simple async functions are implemented on top of @@ -8463,13 +8279,13 @@ var runtime = (function (exports) { // iterator prototype chain incorrectly implement this, causing the Generator // object to not be returned from this call. This ensures that doesn't happen. // See https://github.com/facebook/regenerator/issues/274 for more details. - Gp[iteratorSymbol] = function() { + define(Gp, iteratorSymbol, function() { return this; - }; + }); - Gp.toString = function() { + define(Gp, "toString", function() { return "[object Generator]"; - }; + }); function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; @@ -8788,19 +8604,24 @@ try { } catch (accidentalStrictMode) { // This module should not be running in strict mode, so the above // assignment should always work unless something is misconfigured. Just - // in case runtime.js accidentally runs in strict mode, we can escape + // in case runtime.js accidentally runs in strict mode, in modern engines + // we can explicitly access globalThis. In older engines we can escape // strict mode using a global Function call. This could conceivably fail // if a Content Security Policy forbids using Function, but in that case // the proper solution is to fix the accidental strict mode problem. If // you've misconfigured your bundler to force strict mode and applied a // CSP to forbid Function, and you're not willing to fix either of those // problems, please detail your unique predicament in a GitHub issue. - Function("r", "regeneratorRuntime = r")(runtime); + if (typeof globalThis === "object") { + globalThis.regeneratorRuntime = runtime; + } else { + Function("r", "regeneratorRuntime = r")(runtime); + } } /***/ }), -/* 66 */ +/* 65 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8821,7 +8642,8 @@ var _default = function _default(modules, _ref) { var channel = _ref.channel, id = _ref.id, name = _ref.name; - var config = modules.config; + var config = modules.config, + networking = modules.networking; if (!channel) { throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)("channel can't be empty")); @@ -8857,17 +8679,17 @@ var _default = function _default(modules, _ref) { }).join('&'); if (queryParams !== '') { - return "https://".concat(config.origin).concat(url, "?").concat(queryParams); + return "".concat(networking.getStandardOrigin()).concat(url, "?").concat(queryParams); } - return "https://".concat(config.origin).concat(url); + return "".concat(networking.getStandardOrigin()).concat(url); }; exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 67 */ +/* 66 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8893,15 +8715,15 @@ var endpoint = { return _operations["default"].PNDownloadFileOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return "name can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.id)) { + if (!(params !== null && params !== void 0 && params.id)) { return "id can't be empty"; } }, @@ -8930,9 +8752,9 @@ var endpoint = { }, handleResponse: function () { var _handleResponse = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(_ref3, res, params) { - var _res$response$name; + var _params$cipherKey, _res$response$name; - var PubNubFile, config, cryptography, body, _params$cipherKey; + var PubNubFile, config, cryptography, body, _params$cipherKey2; return _regenerator["default"].wrap(function _callee$(_context) { while (1) { @@ -8941,13 +8763,13 @@ var endpoint = { PubNubFile = _ref3.PubNubFile, config = _ref3.config, cryptography = _ref3.cryptography; body = res.response.body; - if (!(PubNubFile.supportsEncryptFile && config.cipherKey)) { + if (!(PubNubFile.supportsEncryptFile && ((_params$cipherKey = params.cipherKey) !== null && _params$cipherKey !== void 0 ? _params$cipherKey : config.cipherKey))) { _context.next = 6; break; } _context.next = 5; - return cryptography.decrypt((_params$cipherKey = params.cipherKey) !== null && _params$cipherKey !== void 0 ? _params$cipherKey : config.cipherKey, body); + return cryptography.decrypt((_params$cipherKey2 = params.cipherKey) !== null && _params$cipherKey2 !== void 0 ? _params$cipherKey2 : config.cipherKey, body); case 5: body = _context.sent; @@ -8979,7 +8801,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 68 */ +/* 67 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9001,15 +8823,15 @@ var endpoint = { return _operations["default"].PNListFilesOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.id)) { + if (!(params !== null && params !== void 0 && params.id)) { return "file id can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return "file name can't be empty"; } }, @@ -9027,10 +8849,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams() { return {}; }, @@ -9045,7 +8863,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 69 */ +/* 68 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9078,50 +8896,46 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include, _params$include2, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if (params !== null && params !== void 0 && (_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include = 'custom'; } - if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) { + if (params !== null && params !== void 0 && (_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.totalCount) { var _params$include3; queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -9148,7 +8962,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 70 */ +/* 69 */ /***/ (function(module, exports) { function _arrayWithHoles(arr) { @@ -9156,20 +8970,24 @@ function _arrayWithHoles(arr) { } module.exports = _arrayWithHoles; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 71 */ +/* 70 */ /***/ (function(module, exports) { function _iterableToArrayLimit(arr, i) { - if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; + var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; + + if (_i == null) return; var _arr = []; var _n = true; var _d = false; - var _e = undefined; + + var _s, _e; try { - for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { + for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; @@ -9189,12 +9007,13 @@ function _iterableToArrayLimit(arr, i) { } module.exports = _iterableToArrayLimit; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 72 */ +/* 71 */ /***/ (function(module, exports, __webpack_require__) { -var arrayLikeToArray = __webpack_require__(73); +var arrayLikeToArray = __webpack_require__(72); function _unsupportedIterableToArray(o, minLen) { if (!o) return; @@ -9206,9 +9025,10 @@ function _unsupportedIterableToArray(o, minLen) { } module.exports = _unsupportedIterableToArray; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 73 */ +/* 72 */ /***/ (function(module, exports) { function _arrayLikeToArray(arr, len) { @@ -9222,9 +9042,10 @@ function _arrayLikeToArray(arr, len) { } module.exports = _arrayLikeToArray; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 74 */ +/* 73 */ /***/ (function(module, exports) { function _nonIterableRest() { @@ -9232,9 +9053,10 @@ function _nonIterableRest() { } module.exports = _nonIterableRest; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 75 */ +/* 74 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9269,14 +9091,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2, _params$include$custo, _params$include; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(), include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom' @@ -9294,7 +9112,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 76 */ +/* 75 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9316,7 +9134,7 @@ var endpoint = { return _operations["default"].PNSetUUIDMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.data)) { + if (!(params !== null && params !== void 0 && params.data)) { return 'Data cannot be empty'; } }, @@ -9339,14 +9157,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2, _params$include$custo, _params$include; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(), include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom' @@ -9364,7 +9178,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 77 */ +/* 76 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9402,14 +9216,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID() }; @@ -9426,7 +9236,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 78 */ +/* 77 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9459,50 +9269,46 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include, _params$include2, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if (params !== null && params !== void 0 && (_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include = 'custom'; } - if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) { + if (params !== null && params !== void 0 && (_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.totalCount) { var _params$include3; queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -9529,7 +9335,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 79 */ +/* 78 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9551,7 +9357,7 @@ var endpoint = { return _operations["default"].PNGetChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } }, @@ -9566,10 +9372,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_, params) { var _params$include$custo, _params$include; @@ -9589,7 +9391,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 80 */ +/* 79 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9611,11 +9413,11 @@ var endpoint = { return _operations["default"].PNSetChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.data)) { + if (!(params !== null && params !== void 0 && params.data)) { return 'Data cannot be empty'; } }, @@ -9636,10 +9438,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_, params) { var _params$include$custo, _params$include; @@ -9659,7 +9457,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 81 */ +/* 80 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9681,7 +9479,7 @@ var endpoint = { return _operations["default"].PNRemoveChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } }, @@ -9699,10 +9497,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams() { return {}; }, @@ -9718,7 +9512,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 82 */ +/* 81 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9742,7 +9536,7 @@ var endpoint = { return _operations["default"].PNGetMembersOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'UUID cannot be empty'; } }, @@ -9757,25 +9551,21 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('member'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include$UUIDF, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customUUIDFields) { queryParams.include.push('uuid.custom'); } @@ -9786,37 +9576,37 @@ var endpoint = { queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { var _params$include5; queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -9843,7 +9633,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 83 */ +/* 82 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9869,11 +9659,11 @@ var endpoint = { return _operations["default"].PNSetMembersOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.uuids) || (params === null || params === void 0 ? void 0 : params.uuids.length) === 0) { + if (!(params !== null && params !== void 0 && params.uuids) || (params === null || params === void 0 ? void 0 : params.uuids.length) === 0) { return 'UUIDs cannot be empty'; } }, @@ -9912,66 +9702,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref4) { - var tokenManager = _ref4.tokenManager; - return tokenManager.getToken('member'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customUUIDFields) { queryParams.include.push('uuid.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.UUIDFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.UUIDFields) { queryParams.include.push('uuid'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { queryParams.count = true; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } - if (params === null || params === void 0 ? void 0 : params.limit) { + if (params !== null && params !== void 0 && params.limit) { queryParams.limit = params.limit; } - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) { - var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2), - key = _ref6[0], - value = _ref6[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { + var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), + key = _ref5[0], + value = _ref5[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -9998,7 +9784,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 84 */ +/* 83 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10035,66 +9821,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('membership'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customChannelFields) { queryParams.include.push('channel.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.channelFields) { queryParams.include.push('channel'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { var _params$include5; queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -10121,7 +9903,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 85 */ +/* 84 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10147,7 +9929,7 @@ var endpoint = { return _operations["default"].PNSetMembershipsOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channels) || (params === null || params === void 0 ? void 0 : params.channels.length) === 0) { + if (!(params !== null && params !== void 0 && params.channels) || (params === null || params === void 0 ? void 0 : params.channels.length) === 0) { return 'Channels cannot be empty'; } }, @@ -10188,66 +9970,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref4) { - var tokenManager = _ref4.tokenManager; - return tokenManager.getToken('membership'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customChannelFields) { queryParams.include.push('channel.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.channelFields) { queryParams.include.push('channel'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { queryParams.count = true; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } - if (params === null || params === void 0 ? void 0 : params.limit) { + if (params !== null && params !== void 0 && params.limit) { queryParams.limit = params.limit; } - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) { - var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2), - key = _ref6[0], - value = _ref6[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { + var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), + key = _ref5[0], + value = _ref5[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -10274,7 +10052,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 86 */ +/* 85 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10286,16 +10064,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -10350,11 +10127,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -10393,7 +10165,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 87 */ +/* 86 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10405,16 +10177,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePatch = usePatch; -exports.getURL = getURL; -exports.patchURL = patchURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -10473,11 +10244,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -10516,7 +10282,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 88 */ +/* 87 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10528,14 +10294,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -10571,11 +10336,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, userId) { - var token = modules.tokenManager.getToken('user', userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams() { return {}; } @@ -10585,7 +10345,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 89 */ +/* 88 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10597,13 +10357,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -10634,11 +10393,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -10673,7 +10427,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 90 */ +/* 89 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10685,13 +10439,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -10717,11 +10470,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules) { - var token = modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -10773,7 +10521,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 91 */ +/* 90 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10785,16 +10533,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -10849,11 +10596,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -10892,7 +10634,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 92 */ +/* 91 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10904,16 +10646,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePatch = usePatch; -exports.getURL = getURL; -exports.patchURL = patchURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -10972,11 +10713,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -11015,7 +10751,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 93 */ +/* 92 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11027,14 +10763,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -11070,11 +10805,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, spaceId) { - var token = modules.tokenManager.getToken('space', spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams() { return {}; } @@ -11084,7 +10814,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 94 */ +/* 93 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11096,13 +10826,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -11128,11 +10857,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules) { - var token = modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -11184,7 +10908,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 95 */ +/* 94 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11196,13 +10920,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -11233,11 +10956,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -11272,7 +10990,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 96 */ +/* 95 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11284,13 +11002,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -11321,11 +11038,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -11385,7 +11097,7 @@ function handleResponse(modules, membersResponse) { } /***/ }), -/* 97 */ +/* 96 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11397,16 +11109,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -11470,11 +11181,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -11533,7 +11239,7 @@ function handleResponse(modules, membersResponse) { } /***/ }), -/* 98 */ +/* 97 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11545,16 +11251,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -11660,11 +11365,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -11723,7 +11423,7 @@ function handleResponse(modules, membersResponse) { } /***/ }), -/* 99 */ +/* 98 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11735,16 +11435,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -11802,11 +11501,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -11865,7 +11559,7 @@ function handleResponse(modules, membersResponse) { } /***/ }), -/* 100 */ +/* 99 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11877,13 +11571,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -11914,11 +11607,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -11978,7 +11666,7 @@ function handleResponse(modules, membershipsResponse) { } /***/ }), -/* 101 */ +/* 100 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11990,16 +11678,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12105,11 +11792,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -12168,7 +11850,7 @@ function handleResponse(modules, membershipsResponse) { } /***/ }), -/* 102 */ +/* 101 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12180,16 +11862,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12253,11 +11934,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -12316,7 +11992,7 @@ function handleResponse(modules, membershipsResponse) { } /***/ }), -/* 103 */ +/* 102 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12328,16 +12004,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12395,11 +12070,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -12458,7 +12128,7 @@ function handleResponse(modules, membershipsResponse) { } /***/ }), -/* 104 */ +/* 103 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12470,12 +12140,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12531,7 +12201,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 105 */ +/* 104 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12543,12 +12213,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12647,7 +12317,7 @@ function handleResponse() { } /***/ }), -/* 106 */ +/* 105 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12658,16 +12328,16 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); -exports.getOperation = getOperation; exports.extractPermissions = extractPermissions; -exports.validateParams = validateParams; -exports.postURL = postURL; -exports.usePost = usePost; +exports.getOperation = getOperation; exports.getRequestTimeout = getRequestTimeout; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12680,8 +12350,16 @@ function getOperation() { function extractPermissions(permissions) { var permissionsResult = 0; - if (permissions.create) { - permissionsResult |= 16; + if (permissions.join) { + permissionsResult |= 128; + } + + if (permissions.update) { + permissionsResult |= 64; + } + + if (permissions.get) { + permissionsResult |= 32; } if (permissions["delete"]) { @@ -12707,19 +12385,22 @@ function prepareMessagePayload(modules, incomingParams) { var ttl = incomingParams.ttl, resources = incomingParams.resources, patterns = incomingParams.patterns, - meta = incomingParams.meta; + meta = incomingParams.meta, + authorized_uuid = incomingParams.authorized_uuid; var params = { ttl: 0, permissions: { resources: { channels: {}, groups: {}, + uuids: {}, users: {}, spaces: {} }, patterns: { channels: {}, groups: {}, + uuids: {}, users: {}, spaces: {} }, @@ -12728,20 +12409,13 @@ function prepareMessagePayload(modules, incomingParams) { }; if (resources) { - var users = resources.users, - spaces = resources.spaces, + var uuids = resources.uuids, channels = resources.channels, groups = resources.groups; - if (users) { - Object.keys(users).forEach(function (user) { - params.permissions.resources.users[user] = extractPermissions(users[user]); - }); - } - - if (spaces) { - Object.keys(spaces).forEach(function (space) { - params.permissions.resources.spaces[space] = extractPermissions(spaces[space]); + if (uuids) { + Object.keys(uuids).forEach(function (uuid) { + params.permissions.resources.uuids[uuid] = extractPermissions(uuids[uuid]); }); } @@ -12759,20 +12433,13 @@ function prepareMessagePayload(modules, incomingParams) { } if (patterns) { - var _users = patterns.users, - _spaces = patterns.spaces, + var _uuids = patterns.uuids, _channels = patterns.channels, _groups = patterns.groups; - if (_users) { - Object.keys(_users).forEach(function (user) { - params.permissions.patterns.users[user] = extractPermissions(_users[user]); - }); - } - - if (_spaces) { - Object.keys(_spaces).forEach(function (space) { - params.permissions.patterns.spaces[space] = extractPermissions(_spaces[space]); + if (_uuids) { + Object.keys(_uuids).forEach(function (uuid) { + params.permissions.patterns.uuids[uuid] = extractPermissions(_uuids[uuid]); }); } @@ -12797,6 +12464,10 @@ function prepareMessagePayload(modules, incomingParams) { params.permissions.meta = meta; } + if (authorized_uuid) { + params.permissions.uuid = "".concat(authorized_uuid); + } + return params; } @@ -12807,7 +12478,7 @@ function validateParams(modules, incomingParams) { if (!config.secretKey) return 'Missing Secret Key'; if (!incomingParams.resources && !incomingParams.patterns) return 'Missing either Resources or Patterns.'; - if (incomingParams.resources && (!incomingParams.resources.users || Object.keys(incomingParams.resources.users).length === 0) && (!incomingParams.resources.spaces || Object.keys(incomingParams.resources.spaces).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) || incomingParams.patterns && (!incomingParams.patterns.users || Object.keys(incomingParams.patterns.users).length === 0) && (!incomingParams.patterns.spaces || Object.keys(incomingParams.patterns.spaces).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)) { + if (incomingParams.resources && (!incomingParams.resources.uuids || Object.keys(incomingParams.resources.uuids).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) || incomingParams.patterns && (!incomingParams.patterns.uuids || Object.keys(incomingParams.patterns.uuids).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)) { return 'Missing values for either Resources or Patterns.'; } } @@ -12843,6 +12514,70 @@ function handleResponse(modules, response) { return token; } +/***/ }), +/* 106 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(0); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _operations = _interopRequireDefault(__webpack_require__(1)); + +var _utils = _interopRequireDefault(__webpack_require__(3)); + +var endpoint = { + getOperation: function getOperation() { + return _operations["default"].PNAccessManagerRevokeToken; + }, + validateParams: function validateParams(modules, token) { + var secretKey = modules.config.secretKey; + + if (!secretKey) { + return 'Missing Secret Key'; + } + + if (!token) { + return "token can't be empty"; + } + }, + getURL: function getURL(_ref, token) { + var config = _ref.config; + return "/v3/pam/".concat(config.subscribeKey, "/grant/").concat(_utils["default"].encodeString(token)); + }, + useDelete: function useDelete() { + return true; + }, + getRequestTimeout: function getRequestTimeout(_ref2) { + var config = _ref2.config; + return config.getTransactionTimeout(); + }, + isAuthSupported: function isAuthSupported() { + return false; + }, + prepareParams: function prepareParams(_ref3) { + var config = _ref3.config; + return { + uuid: config.getUUID() + }; + }, + handleResponse: function handleResponse(_, response) { + return { + status: response.status, + data: response.data + }; + } +}; +var _default = endpoint; +exports["default"] = _default; +module.exports = exports.default; + /***/ }), /* 107 */ /***/ (function(module, exports, __webpack_require__) { @@ -12856,15 +12591,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.postPayload = postPayload; +exports.postURL = postURL; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.usePost = usePost; +exports.validateParams = validateParams; var _typeof2 = _interopRequireDefault(__webpack_require__(7)); @@ -12984,12 +12719,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13056,12 +12791,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13167,13 +12902,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13237,12 +12972,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _slicedToArray2 = _interopRequireDefault(__webpack_require__(9)); @@ -13319,12 +13054,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13460,12 +13195,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13599,11 +13334,9 @@ var _default = function () { (0, _classCallCheck2["default"])(this, _default); (0, _defineProperty2["default"])(this, "_modules", void 0); (0, _defineProperty2["default"])(this, "_config", void 0); - (0, _defineProperty2["default"])(this, "_maxSubDomain", void 0); (0, _defineProperty2["default"])(this, "_currentSubDomain", void 0); (0, _defineProperty2["default"])(this, "_standardOrigin", void 0); (0, _defineProperty2["default"])(this, "_subscribeOrigin", void 0); - (0, _defineProperty2["default"])(this, "_providedFQDN", void 0); (0, _defineProperty2["default"])(this, "_requestTimeout", void 0); (0, _defineProperty2["default"])(this, "_coreParams", void 0); this._modules = {}; @@ -13616,28 +13349,33 @@ var _default = function () { key: "init", value: function init(config) { this._config = config; - this._maxSubDomain = 20; - this._currentSubDomain = Math.floor(Math.random() * this._maxSubDomain); - this._providedFQDN = (this._config.secure ? 'https://' : 'http://') + this._config.origin; + + if (Array.isArray(this._config.origin)) { + this._currentSubDomain = Math.floor(Math.random() * this._config.origin.length); + } else { + this._currentSubDomain = 0; + } + this._coreParams = {}; this.shiftStandardOrigin(); } }, { key: "nextOrigin", value: function nextOrigin() { - if (!this._providedFQDN.match(/ps\.pndsn\.com$/i)) { - return this._providedFQDN; + var protocol = this._config.secure ? 'https://' : 'http://'; + + if (typeof this._config.origin === 'string') { + return "".concat(protocol).concat(this._config.origin); } - var newSubDomain; this._currentSubDomain += 1; - if (this._currentSubDomain >= this._maxSubDomain) { - this._currentSubDomain = 1; + if (this._currentSubDomain >= this._config.origin.length) { + this._currentSubDomain = 0; } - newSubDomain = this._currentSubDomain.toString(); - return this._providedFQDN.replace('ps.pndsn.com', "ps".concat(newSubDomain, ".pndsn.com")); + var origin = this._config.origin[this._currentSubDomain]; + return "".concat(protocol).concat(origin); } }, { key: "hasModule", @@ -13846,10 +13584,10 @@ module.exports = exports.default; Object.defineProperty(exports, "__esModule", { value: true }); +exports.del = del; exports.get = get; -exports.post = post; exports.patch = patch; -exports.del = del; +exports.post = post; var _flow_interfaces = __webpack_require__(2); @@ -13962,8 +13700,8 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); -exports.encodedKeyValuePair = encodedKeyValuePair; exports.buildUrl = buildUrl; +exports.encodedKeyValuePair = encodedKeyValuePair; var _typeof2 = _interopRequireDefault(__webpack_require__(7)); diff --git a/dist/titanium/pubnub.min.js b/dist/titanium/pubnub.min.js index 448e448d4..89d92abd0 100644 --- a/dist/titanium/pubnub.min.js +++ b/dist/titanium/pubnub.min.js @@ -1,2 +1,2 @@ -/*! 4.32.1 / Consumer */ -exports.PubNub=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=23)}([function(e,t){e.exports=function(e){return e&&e.__esModule?e:{default:e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={PNTimeOperation:"PNTimeOperation",PNHistoryOperation:"PNHistoryOperation",PNDeleteMessagesOperation:"PNDeleteMessagesOperation",PNFetchMessagesOperation:"PNFetchMessagesOperation",PNMessageCounts:"PNMessageCountsOperation",PNSubscribeOperation:"PNSubscribeOperation",PNUnsubscribeOperation:"PNUnsubscribeOperation",PNPublishOperation:"PNPublishOperation",PNSignalOperation:"PNSignalOperation",PNAddMessageActionOperation:"PNAddActionOperation",PNRemoveMessageActionOperation:"PNRemoveMessageActionOperation",PNGetMessageActionsOperation:"PNGetMessageActionsOperation",PNCreateUserOperation:"PNCreateUserOperation",PNUpdateUserOperation:"PNUpdateUserOperation",PNDeleteUserOperation:"PNDeleteUserOperation",PNGetUserOperation:"PNGetUsersOperation",PNGetUsersOperation:"PNGetUsersOperation",PNCreateSpaceOperation:"PNCreateSpaceOperation",PNUpdateSpaceOperation:"PNUpdateSpaceOperation",PNDeleteSpaceOperation:"PNDeleteSpaceOperation",PNGetSpaceOperation:"PNGetSpacesOperation",PNGetSpacesOperation:"PNGetSpacesOperation",PNGetMembersOperation:"PNGetMembersOperation",PNUpdateMembersOperation:"PNUpdateMembersOperation",PNGetMembershipsOperation:"PNGetMembershipsOperation",PNUpdateMembershipsOperation:"PNUpdateMembershipsOperation",PNListFilesOperation:"PNListFilesOperation",PNGenerateUploadUrlOperation:"PNGenerateUploadUrlOperation",PNPublishFileOperation:"PNPublishFileOperation",PNGetFileUrlOperation:"PNGetFileUrlOperation",PNDownloadFileOperation:"PNDownloadFileOperation",PNGetAllUUIDMetadataOperation:"PNGetAllUUIDMetadataOperation",PNGetUUIDMetadataOperation:"PNGetUUIDMetadataOperation",PNSetUUIDMetadataOperation:"PNSetUUIDMetadataOperation",PNRemoveUUIDMetadataOperation:"PNRemoveUUIDMetadataOperation",PNGetAllChannelMetadataOperation:"PNGetAllChannelMetadataOperation",PNGetChannelMetadataOperation:"PNGetChannelMetadataOperation",PNSetChannelMetadataOperation:"PNSetChannelMetadataOperation",PNRemoveChannelMetadataOperation:"PNRemoveChannelMetadataOperation",PNSetMembersOperation:"PNSetMembersOperation",PNSetMembershipsOperation:"PNSetMembershipsOperation",PNPushNotificationEnabledChannelsOperation:"PNPushNotificationEnabledChannelsOperation",PNRemoveAllPushNotificationsOperation:"PNRemoveAllPushNotificationsOperation",PNWhereNowOperation:"PNWhereNowOperation",PNSetStateOperation:"PNSetStateOperation",PNHereNowOperation:"PNHereNowOperation",PNGetStateOperation:"PNGetStateOperation",PNHeartbeatOperation:"PNHeartbeatOperation",PNChannelGroupsOperation:"PNChannelGroupsOperation",PNRemoveGroupOperation:"PNRemoveGroupOperation",PNChannelsForGroupOperation:"PNChannelsForGroupOperation",PNAddChannelsToGroupOperation:"PNAddChannelsToGroupOperation",PNRemoveChannelsFromGroupOperation:"PNRemoveChannelsFromGroupOperation",PNAccessManagerGrant:"PNAccessManagerGrant",PNAccessManagerGrantToken:"PNAccessManagerGrantToken",PNAccessManagerAudit:"PNAccessManagerAudit"},e.exports=t.default},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";function r(e){return encodeURIComponent(e).replace(/[!~*'()]/g,(function(e){return"%".concat(e.charCodeAt(0).toString(16).toUpperCase())}))}function i(e){return function(e){var t=[];return Object.keys(e).forEach((function(e){return t.push(e)})),t}(e).sort()}var a="The Objects v1 API has been deprecated.\nYou can learn more about Objects v2 API at https://www.pubnub.com/docs/web-javascript/api-reference-objects.\nIf you have questions about the Objects v2 API or require additional help with migrating to the new data model, please contact PubNub Support at support@pubnub.com.";e.exports={signPamFromParams:function(e){return i(e).map((function(t){return"".concat(t,"=").concat(r(e[t]))})).join("&")},endsWith:function(e,t){return-1!==e.indexOf(t,this.length-t.length)},createPromise:function(){var e,t;return{promise:new Promise((function(n,r){e=n,t=r})),reject:t,fulfill:e}},encodeString:r,deprecated:function(e){return function(){var t,n;"undefined"!=typeof process&&("test"!==(null===(t=process)||void 0===t||null===(n=t.env)||void 0===n?void 0:"production")&&console.warn(a));return e.apply(void 0,arguments)}}}},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n=20?this._presenceTimeout=e:(this._presenceTimeout=20,console.log("WARNING: Presence timeout is less than the minimum. Using minimum value: ",this._presenceTimeout)),this.setHeartbeatInterval(this._presenceTimeout/2-1),this}},{key:"setProxy",value:function(e){this.proxy=e}},{key:"getHeartbeatInterval",value:function(){return this._heartbeatInterval}},{key:"setHeartbeatInterval",value:function(e){return this._heartbeatInterval=e,this}},{key:"getSubscribeTimeout",value:function(){return this._subscribeRequestTimeout}},{key:"setSubscribeTimeout",value:function(e){return this._subscribeRequestTimeout=e,this}},{key:"getTransactionTimeout",value:function(){return this._transactionalRequestTimeout}},{key:"setTransactionTimeout",value:function(e){return this._transactionalRequestTimeout=e,this}},{key:"isSendBeaconEnabled",value:function(){return this._useSendBeacon}},{key:"setSendBeaconConfig",value:function(e){return this._useSendBeacon=e,this}},{key:"getVersion",value:function(){return"4.32.1"}},{key:"_addPnsdkSuffix",value:function(e,t){this._PNSDKSuffix[e]=t}},{key:"_getPnsdkSuffix",value:function(e){var t=this;return Object.keys(this._PNSDKSuffix).reduce((function(n,r){return n+e+t._PNSDKSuffix[r]}),"")}},{key:"_decideUUID",value:function(e){return e||(this._db&&this._db.get&&this._db.get("".concat(this.subscribeKey,"uuid"))?this._db.get("".concat(this.subscribeKey,"uuid")):"pn-".concat(s.default.createUUID()))}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){var r=n(70),i=n(71),a=n(72),o=n(74);e.exports=function(e,t){return r(e)||i(e,t)||a(e,t)||o()}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={PNNetworkUpCategory:"PNNetworkUpCategory",PNNetworkDownCategory:"PNNetworkDownCategory",PNNetworkIssuesCategory:"PNNetworkIssuesCategory",PNTimeoutCategory:"PNTimeoutCategory",PNBadRequestCategory:"PNBadRequestCategory",PNAccessDeniedCategory:"PNAccessDeniedCategory",PNUnknownCategory:"PNUnknownCategory",PNReconnectedCategory:"PNReconnectedCategory",PNConnectedCategory:"PNConnectedCategory",PNRequestMessageCountExceededCategory:"PNRequestMessageCountExceededCategory"},e.exports=t.default},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t,n){var r=n(13);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},n(t,r)}e.exports=n},function(e,t,n){var r=n(7),i=n(17);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?i(e):t}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(27)),a={createUUID:function(){return i.default.uuid?i.default.uuid():(0,i.default)()}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.createValidationError=b,t.generatePNSDK=k,t.signRequest=O,t.default=function(e,t){var n=e.networking,r=e.config,i=e.telemetryManager,a=l.default.createUUID(),o=null,s=null,u={};t.getOperation()===d.default.PNTimeOperation||t.getOperation()===d.default.PNChannelGroupsOperation?o=arguments.length<=2?void 0:arguments[2]:(u=arguments.length<=2?void 0:arguments[2],o=arguments.length<=3?void 0:arguments[3]);"undefined"==typeof Promise||o||(s=f.default.createPromise());var c=t.validateParams(e,u);if(c)return o?o(b(c)):s?(s.reject(new y("Validation failed, check status for details",b(c))),s.promise):void 0;var h,v=t.prepareParams(e,u),S=m(t,e,u),T={url:S,operation:t.getOperation(),timeout:t.getRequestTimeout(e),headers:t.getRequestHeaders?t.getRequestHeaders():{},ignoreBody:"function"==typeof t.ignoreBody&&t.ignoreBody(e),forceBuffered:"function"==typeof t.forceBuffered?t.forceBuffered(e,u):null};v.uuid=r.UUID,v.pnsdk=k(r);var M=i.operationsLatencyForRequest();Object.keys(M).length&&(v=g(g({},v),M));r.useInstanceId&&(v.instanceid=r.instanceId);r.useRequestId&&(v.requestid=a);if(t.isAuthSupported()){var N=_(t,e,u),w=N||r.getAuthKey();w&&(v.auth=w)}r.secretKey&&O(e,S,v,u,t);var j=function(n,r){var c;if(n.error)return t.handleError&&t.handleError(e,u,n),void(o?o(n):s&&s.reject(new y("PubNub call failed, check status for details",n)));i.stopLatencyMeasure(t.getOperation(),a);var l=t.handleResponse(e,r,u);"function"!=typeof(null===(c=l)||void 0===c?void 0:c.then)&&(l=Promise.resolve(l)),l.then((function(e){o?o(n,e):s&&s.fulfill(e)})).catch((function(e){if(o){var n=e;t.getOperation()===d.default.PNSubscribeOperation&&(n={statusCode:400,error:!0,operation:t.getOperation(),errorData:e,category:p.default.PNUnknownCategory}),o(n,null)}else s&&s.reject(new y("PubNub call failed, check status for details",e))}))};if(i.startLatencyMeasure(t.getOperation(),a),"POST"===P(e,t,u)){var x=t.postPayload(e,u);h=n.POST(v,x,T,j)}else if("PATCH"===P(e,t,u)){var U=t.patchPayload(e,u);h=n.PATCH(v,U,T,j)}else h="DELETE"===P(e,t,u)?n.DELETE(v,T,j):"GETFILE"===P(e,t,u)?n.GETFILE(v,T,j):n.GET(v,T,j);if(t.getOperation()===d.default.PNSubscribeOperation)return h;if(s)return s.promise},t.PubNubError=void 0;var i=r(n(4)),a=r(n(5)),o=r(n(12)),s=r(n(14)),u=r(n(11)),c=r(n(37)),l=r(n(15)),f=(n(2),r(n(3))),d=(r(n(8)),r(n(1))),p=r(n(10));function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function g(e){for(var t=1;t0&&(t+=n),t}function P(e,t,n){return t.usePost&&t.usePost(e,n)?"POST":t.usePatch&&t.usePatch(e,n)?"PATCH":t.useDelete&&t.useDelete(e,n)?"DELETE":t.useGetFile&&t.useGetFile(e,n)?"GETFILE":"GET"}function O(e,t,n,r,i){var a=e.config,o=e.crypto,s=P(e,i,r);n.timestamp=Math.floor((new Date).getTime()/1e3),"PNPublishOperation"===i.getOperation()&&i.usePost&&i.usePost(e,r)&&(s="GET"),"GETFILE"===s&&(s="GET");var u="".concat(s,"\n").concat(a.publishKey,"\n").concat(t,"\n").concat(f.default.signPamFromParams(n),"\n");if("POST"===s){var c=i.postPayload(e,r);u+="string"==typeof c?c:JSON.stringify(c)}else if("PATCH"===s){var l=i.patchPayload(e,r);u+="string"==typeof l?l:JSON.stringify(l)}var d="v2.".concat(o.HMACSHA256(u));d=(d=(d=d.replace(/\+/g,"-")).replace(/\//g,"_")).replace(/=+$/,""),n.signature=d}t.PubNubError=y},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),s=(r(n(8)),r(n(28)));function u(e){var t,n=[];for(t=0;t>10,n=1023&e,r=32768&e;if(31===t)return 0===n?r?-1/0:1/0:NaN;var i=t?Math.pow(2,t-25)*(1024+n):Math.pow(2,-24)*n;return r?-i:i},readFloat32:function(){var e=this.readUint32(),t=(2147483647&e)>>23,n=8388607&e,r=2147483648&e;if(255===t)return 0===n?r?-1/0:1/0:NaN;var i=t?Math.pow(2,t-23-127)*(8388608+n):Math.pow(2,-149)*n;return r?-i:i},readFloat64:function(){var e=this.readUint32(),t=e>>20&2047,n=4294967296*(1048575&e)+this.readUint32(),r=2147483648&e;if(2047===t)return 0===n?r?-1/0:1/0:NaN;var i=t?Math.pow(2,t-52-1023)*(4503599627370496+n):Math.pow(2,-1074)*n;return r?-i:i},readUint16:function(){return 256*this.readByte()+this.readByte()},readUint32:function(){return 65536*this.readUint16()+this.readUint16()},readUint64:function(){return 4294967296*this.readUint32()+this.readUint32()}},a.prototype={writeByte:r("writeByte"),result:r("result"),writeFloat16:r("writeFloat16"),writeFloat32:r("writeFloat32"),writeFloat64:r("writeFloat64"),writeUint16:function(e){this.writeByte(e>>8&255),this.writeByte(255&e)},writeUint32:function(e){this.writeUint16(e>>16&65535),this.writeUint16(65535&e)},writeUint64:function(e){if(e>=9007199254740992||e<=-9007199254740992)throw new Error("Cannot encode Uint64 of: "+e+" magnitude to big (floating point errors)");this.writeUint32(Math.floor(e/4294967296)),this.writeUint32(e%4294967296)},writeString:r("writeString"),canWriteBinary:function(e){return!1},writeBinary:r("writeChunk")};var u=new Error;function c(e){var t=function(e){var t=e.readByte();return{type:t>>5,value:31&t}}(e);switch(t.type){case 0:return o(t,e);case 1:return-1-o(t,e);case 2:return e.readChunk(o(t,e));case 3:return e.readChunk(o(t,e)).toString("utf-8");case 4:case 5:var r=o(t,e),i=[];if(null!==r){5===t.type&&(r*=2);for(var a=0;a-9007199254740992?e<0?s(1,-1-e,n):s(0,e,n):(function(e,t,n){n.writeByte(e<<5|t)}(7,27,n),n.writeFloat64(e));else if("string"==typeof e)n.writeString(e,(function(e){s(3,e,n)}));else if(n.canWriteBinary(e))n.writeBinary(e,(function(e){s(2,e,n)}));else{if("object"!=typeof e)throw new Error("CBOR encoding not supported: "+e);if(p.config.useToJSON&&"function"==typeof e.toJSON&&(e=e.toJSON()),Array.isArray(e))for(s(4,e.length,n),r=0;r=this.latestBuffer.length&&(this.completeBuffers.push(this.latestBuffer),this.latestBuffer=Buffer.alloc(this.defaultBufferLength),this.latestBufferOffset=0),this.byteLength++},g.prototype.writeFloat32=function(e){var t=Buffer.alloc(4);t.writeFloatBE(e,0),this.writeBuffer(t)},g.prototype.writeFloat64=function(e){var t=Buffer.alloc(8);t.writeDoubleBE(e,0),this.writeBuffer(t)},g.prototype.writeString=function(e,t){var n=Buffer.from(e,"utf-8");t(n.length),this.writeBuffer(n)},g.prototype.canWriteBinary=function(e){return e instanceof Buffer},g.prototype.writeBinary=function(e,t){t(e.length),this.writeBuffer(e)},g.prototype.writeBuffer=function(e){if(!(e instanceof Buffer))throw new TypeError("BufferWriter only accepts Buffers");this.latestBufferOffset?this.latestBuffer.length-this.latestBufferOffset>=e.length?(e.copy(this.latestBuffer,this.latestBufferOffset),this.latestBufferOffset+=e.length,this.latestBufferOffset>=this.latestBuffer.length&&(this.completeBuffers.push(this.latestBuffer),this.latestBuffer=Buffer.alloc(this.defaultBufferLength),this.latestBufferOffset=0)):(this.completeBuffers.push(this.latestBuffer.slice(0,this.latestBufferOffset)),this.completeBuffers.push(e),this.latestBuffer=Buffer.alloc(this.defaultBufferLength),this.latestBufferOffset=0):this.completeBuffers.push(e),this.byteLength+=e.length},g.prototype.result=function(){for(var e=Buffer.alloc(this.byteLength),t=0,n=0;n255)throw new Error("Byte value out of range: "+e);var t=e.toString(16);1==t.length&&(t="0"+t),this.$hex+=t},y.prototype.canWriteBinary=function(t){return t instanceof e||"function"==typeof Buffer&&t instanceof Buffer},y.prototype.writeBinary=function(t,n){if(t instanceof e)n(t.length()),this.$hex+=t.$hex;else{if(!("function"==typeof Buffer&&t instanceof Buffer))throw new TypeError("HexWriter only accepts BinaryHex or Buffers");n(t.length),this.$hex+=t.toString("hex")}},y.prototype.result=function(){return"buffer"===this.finalFormat&&"function"==typeof Buffer?Buffer.from(this.$hex,"hex"):new e(this.$hex).toString(this.finalFormat)},y.prototype.writeString=function(t,n){var r=e.fromUtf8String(t);n(r.length()),this.$hex+=r.$hex},p.addReader((function(t,n){return t instanceof e||t.$hex?new v(t.$hex):"hex"===n?new v(t):void 0})),p.addWriter((function(e){if("hex"===e)return new y})),p}();return e.addSemanticEncode(0,(function(e){if(e instanceof Date)return e.toISOString()})).addSemanticDecode(0,(function(e){return new Date(e)})).addSemanticDecode(1,(function(e){return new Date(e)})),e})?r.apply(t,i):r)||(e.exports=a)},function(e,t,n){"use strict";var r=n(26),i=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=i(n(5)),o=i(n(6)),s=i(n(4)),u=i(n(8)),c=i(n(18)),l=i(n(29)),f=i(n(32)),d=i(n(33)),p=i(n(19)),h=i(n(36)),g=i(n(16)),v=n(3),y=r(n(41)),b=r(n(42)),m=r(n(43)),_=r(n(44)),k=r(n(45)),P=r(n(46)),O=r(n(47)),S=r(n(48)),T=r(n(49)),M=r(n(50)),N=r(n(51)),w=r(n(52)),j=r(n(53)),x=r(n(54)),U=r(n(55)),C=r(n(56)),R=r(n(57)),E=r(n(58)),A=(n(59),r(n(60)),i(n(61))),K=i(n(62)),F=i(n(63)),I=i(n(64)),D=i(n(66)),B=i(n(67)),G=i(n(68)),L=i(n(69)),q=i(n(75)),H=i(n(76)),z=i(n(77)),V=i(n(78)),W=i(n(79)),$=i(n(80)),J=i(n(81)),X=i(n(82)),Q=i(n(83)),Y=i(n(84)),Z=i(n(85)),ee=r(n(86)),te=r(n(87)),ne=r(n(88)),re=r(n(89)),ie=r(n(90)),ae=r(n(91)),oe=r(n(92)),se=r(n(93)),ue=r(n(94)),ce=r(n(95)),le=r(n(96)),fe=r(n(97)),de=r(n(98)),pe=r(n(99)),he=r(n(100)),ge=r(n(101)),ve=r(n(102)),ye=r(n(103)),be=r(n(104)),me=r(n(105)),_e=r(n(106)),ke=r(n(107)),Pe=r(n(108)),Oe=r(n(109)),Se=r(n(110)),Te=r(n(111)),Me=r(n(112)),Ne=r(n(20)),we=r(n(113)),je=i(n(1)),xe=i(n(10)),Ue=(n(2),i(n(15)));function Ce(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Re(e){for(var t=1;t1?t-1:0),i=1;i1?t-1:0),i=1;i1?t-1:0),i=1;i1?t-1:0),i=1;i>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=a.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},c=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},l=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(c.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return c.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=a.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=l.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,i=n.sigBytes,a=this.blockSize,s=i/(4*a);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*a,i=e.min(4*t,i),t){for(var u=0;ul;){var f;e:{f=c;for(var d=e.sqrt(f),p=2;p<=d;p++)if(!(f%p)){f=!1;break e}f=!0}f&&(8>l&&(a[l]=s(e.pow(c,.5))),o[l]=s(e.pow(c,1/3)),l++),c++}var h=[];i=i.SHA256=r.extend({_doReset:function(){this._hash=new n.init(a.slice(0))},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],a=n[2],s=n[3],u=n[4],c=n[5],l=n[6],f=n[7],d=0;64>d;d++){if(16>d)h[d]=0|e[t+d];else{var p=h[d-15],g=h[d-2];h[d]=((p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3)+h[d-7]+((g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10)+h[d-16]}p=f+((u<<26|u>>>6)^(u<<21|u>>>11)^(u<<7|u>>>25))+(u&c^~u&l)+o[d]+h[d],g=((r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22))+(r&i^r&a^i&a),f=l,l=c,c=u,u=s+p|0,s=a,a=i,i=r,r=p+g|0}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+a|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0,n[5]=n[5]+c|0,n[6]=n[6]+l|0,n[7]=n[7]+f|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return n[i>>>5]|=128<<24-i%32,n[14+(i+64>>>9<<4)]=e.floor(r/4294967296),n[15+(i+64>>>9<<4)]=r,t.sigBytes=4*n.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA256=r._createHelper(i),t.HmacSHA256=r._createHmacHelper(i)}(Math),i=(r=u).enc.Utf8,r.algo.HMAC=r.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=i.parse(t));var n=e.blockSize,r=4*n;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),o=this._iKey=t.clone(),s=a.words,u=o.words,c=0;c>>2]>>>24-i%4*8&255)<<16|(t[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|t[i+2>>>2]>>>24-(i+2)%4*8&255,o=0;4>o&&i+.75*o>>6*(3-o)&63));if(t=r.charAt(64))for(;e.length%4;)e.push(t);return e.join("")},parse:function(e){var t=e.length,n=this._map;(r=n.charAt(64))&&-1!=(r=e.indexOf(r))&&(t=r);for(var r=[],i=0,a=0;a>>6-a%4*2;r[i>>>2]|=(s|u)<<24-i%4*8,i++}return o.create(r,i)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(e){function t(e,t,n,r,i,a,o){return((e=e+(t&n|~t&r)+i+o)<>>32-a)+t}function n(e,t,n,r,i,a,o){return((e=e+(t&r|n&~r)+i+o)<>>32-a)+t}function r(e,t,n,r,i,a,o){return((e=e+(t^n^r)+i+o)<>>32-a)+t}function i(e,t,n,r,i,a,o){return((e=e+(n^(t|~r))+i+o)<>>32-a)+t}for(var a=u,o=(c=a.lib).WordArray,s=c.Hasher,c=a.algo,l=[],f=0;64>f;f++)l[f]=4294967296*e.abs(e.sin(f+1))|0;c=c.MD5=s.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,a){for(var o=0;16>o;o++){var s=e[u=a+o];e[u]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}o=this._hash.words;var u=e[a+0],c=(s=e[a+1],e[a+2]),f=e[a+3],d=e[a+4],p=e[a+5],h=e[a+6],g=e[a+7],v=e[a+8],y=e[a+9],b=e[a+10],m=e[a+11],_=e[a+12],k=e[a+13],P=e[a+14],O=e[a+15],S=t(S=o[0],N=o[1],M=o[2],T=o[3],u,7,l[0]),T=t(T,S,N,M,s,12,l[1]),M=t(M,T,S,N,c,17,l[2]),N=t(N,M,T,S,f,22,l[3]);S=t(S,N,M,T,d,7,l[4]),T=t(T,S,N,M,p,12,l[5]),M=t(M,T,S,N,h,17,l[6]),N=t(N,M,T,S,g,22,l[7]),S=t(S,N,M,T,v,7,l[8]),T=t(T,S,N,M,y,12,l[9]),M=t(M,T,S,N,b,17,l[10]),N=t(N,M,T,S,m,22,l[11]),S=t(S,N,M,T,_,7,l[12]),T=t(T,S,N,M,k,12,l[13]),M=t(M,T,S,N,P,17,l[14]),S=n(S,N=t(N,M,T,S,O,22,l[15]),M,T,s,5,l[16]),T=n(T,S,N,M,h,9,l[17]),M=n(M,T,S,N,m,14,l[18]),N=n(N,M,T,S,u,20,l[19]),S=n(S,N,M,T,p,5,l[20]),T=n(T,S,N,M,b,9,l[21]),M=n(M,T,S,N,O,14,l[22]),N=n(N,M,T,S,d,20,l[23]),S=n(S,N,M,T,y,5,l[24]),T=n(T,S,N,M,P,9,l[25]),M=n(M,T,S,N,f,14,l[26]),N=n(N,M,T,S,v,20,l[27]),S=n(S,N,M,T,k,5,l[28]),T=n(T,S,N,M,c,9,l[29]),M=n(M,T,S,N,g,14,l[30]),S=r(S,N=n(N,M,T,S,_,20,l[31]),M,T,p,4,l[32]),T=r(T,S,N,M,v,11,l[33]),M=r(M,T,S,N,m,16,l[34]),N=r(N,M,T,S,P,23,l[35]),S=r(S,N,M,T,s,4,l[36]),T=r(T,S,N,M,d,11,l[37]),M=r(M,T,S,N,g,16,l[38]),N=r(N,M,T,S,b,23,l[39]),S=r(S,N,M,T,k,4,l[40]),T=r(T,S,N,M,u,11,l[41]),M=r(M,T,S,N,f,16,l[42]),N=r(N,M,T,S,h,23,l[43]),S=r(S,N,M,T,y,4,l[44]),T=r(T,S,N,M,_,11,l[45]),M=r(M,T,S,N,O,16,l[46]),S=i(S,N=r(N,M,T,S,c,23,l[47]),M,T,u,6,l[48]),T=i(T,S,N,M,g,10,l[49]),M=i(M,T,S,N,P,15,l[50]),N=i(N,M,T,S,p,21,l[51]),S=i(S,N,M,T,_,6,l[52]),T=i(T,S,N,M,f,10,l[53]),M=i(M,T,S,N,b,15,l[54]),N=i(N,M,T,S,s,21,l[55]),S=i(S,N,M,T,v,6,l[56]),T=i(T,S,N,M,O,10,l[57]),M=i(M,T,S,N,h,15,l[58]),N=i(N,M,T,S,k,21,l[59]),S=i(S,N,M,T,d,6,l[60]),T=i(T,S,N,M,m,10,l[61]),M=i(M,T,S,N,c,15,l[62]),N=i(N,M,T,S,y,21,l[63]);o[0]=o[0]+S|0,o[1]=o[1]+N|0,o[2]=o[2]+M|0,o[3]=o[3]+T|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;n[i>>>5]|=128<<24-i%32;var a=e.floor(r/4294967296);for(n[15+(i+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),n[14+(i+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(n.length+1),this._process(),n=(t=this._hash).words,r=0;4>r;r++)i=n[r],n[r]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8);return t},clone:function(){var e=s.clone.call(this);return e._hash=this._hash.clone(),e}}),a.MD5=s._createHelper(c),a.HmacMD5=s._createHmacHelper(c)}(Math),function(){var e,t=u,n=(e=t.lib).Base,r=e.WordArray,i=(e=t.algo).EvpKDF=n.extend({cfg:n.extend({keySize:4,hasher:e.MD5,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=(s=this.cfg).hasher.create(),i=r.create(),a=i.words,o=s.keySize,s=s.iterations;a.length>>2]}},t.BlockCipher=s.extend({cfg:s.cfg.extend({mode:c,padding:f}),reset:function(){s.reset.call(this);var e=(t=this.cfg).iv,t=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=t.createEncryptor;else n=t.createDecryptor,this._minBufferSize=1;this._mode=n.call(t,this,e&&e.words)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);var t=this._process(!0)}else t=this._process(!0),e.unpad(t);return t},blockSize:4});var d=t.CipherParams=n.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),p=(c=(h.format={}).OpenSSL={stringify:function(e){var t=e.ciphertext;return((e=e.salt)?r.create([1398893684,1701076831]).concat(e).concat(t):t).toString(a)},parse:function(e){var t=(e=a.parse(e)).words;if(1398893684==t[0]&&1701076831==t[1]){var n=r.create(t.slice(2,4));t.splice(0,4),e.sigBytes-=16}return d.create({ciphertext:e,salt:n})}},t.SerializableCipher=n.extend({cfg:n.extend({format:c}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r);return t=i.finalize(t),i=i.cfg,d.create({ciphertext:t,key:n,iv:i.iv,algorithm:e,mode:i.mode,padding:i.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}})),h=(h.kdf={}).OpenSSL={execute:function(e,t,n,i){return i||(i=r.random(8)),e=o.create({keySize:t+n}).compute(e,i),n=r.create(e.words.slice(t),4*n),e.sigBytes=4*t,d.create({key:e,iv:n,salt:i})}},g=t.PasswordBasedCipher=p.extend({cfg:p.cfg.extend({kdf:h}),encrypt:function(e,t,n,r){return n=(r=this.cfg.extend(r)).kdf.execute(n,e.keySize,e.ivSize),r.iv=n.iv,(e=p.encrypt.call(this,e,t,n.key,r)).mixIn(n),e},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),n=r.kdf.execute(n,e.keySize,e.ivSize,t.salt),r.iv=n.iv,p.decrypt.call(this,e,t,n.key,r)}})}(),function(){for(var e=u,t=e.lib.BlockCipher,n=e.algo,r=[],i=[],a=[],o=[],s=[],c=[],l=[],f=[],d=[],p=[],h=[],g=0;256>g;g++)h[g]=128>g?g<<1:g<<1^283;var v=0,y=0;for(g=0;256>g;g++){var b=(b=y^y<<1^y<<2^y<<3^y<<4)>>>8^255&b^99;r[v]=b,i[b]=v;var m=h[v],_=h[m],k=h[_],P=257*h[b]^16843008*b;a[v]=P<<24|P>>>8,o[v]=P<<16|P>>>16,s[v]=P<<8|P>>>24,c[v]=P,P=16843009*k^65537*_^257*m^16843008*v,l[b]=P<<24|P>>>8,f[b]=P<<16|P>>>16,d[b]=P<<8|P>>>24,p[b]=P,v?(v=m^h[h[h[k^m]]],y^=h[h[y]]):v=y=1}var O=[0,1,2,4,8,16,32,64,128,27,54];n=n.AES=t.extend({_doReset:function(){for(var e=(n=this._key).words,t=n.sigBytes/4,n=4*((this._nRounds=t+6)+1),i=this._keySchedule=[],a=0;a>>24]<<24|r[o>>>16&255]<<16|r[o>>>8&255]<<8|r[255&o]):(o=r[(o=o<<8|o>>>24)>>>24]<<24|r[o>>>16&255]<<16|r[o>>>8&255]<<8|r[255&o],o^=O[a/t|0]<<24),i[a]=i[a-t]^o}for(e=this._invKeySchedule=[],t=0;tt||4>=a?o:l[r[o>>>24]]^f[r[o>>>16&255]]^d[r[o>>>8&255]]^p[r[255&o]]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,a,o,s,c,r)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,l,f,d,p,i),n=e[t+1],e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,a,o,s){for(var u=this._nRounds,c=e[t]^n[0],l=e[t+1]^n[1],f=e[t+2]^n[2],d=e[t+3]^n[3],p=4,h=1;h>>24]^i[l>>>16&255]^a[f>>>8&255]^o[255&d]^n[p++],v=r[l>>>24]^i[f>>>16&255]^a[d>>>8&255]^o[255&c]^n[p++],y=r[f>>>24]^i[d>>>16&255]^a[c>>>8&255]^o[255&l]^n[p++];d=r[d>>>24]^i[c>>>16&255]^a[l>>>8&255]^o[255&f]^n[p++],c=g,l=v,f=y}g=(s[c>>>24]<<24|s[l>>>16&255]<<16|s[f>>>8&255]<<8|s[255&d])^n[p++],v=(s[l>>>24]<<24|s[f>>>16&255]<<16|s[d>>>8&255]<<8|s[255&c])^n[p++],y=(s[f>>>24]<<24|s[d>>>16&255]<<16|s[c>>>8&255]<<8|s[255&l])^n[p++],d=(s[d>>>24]<<24|s[c>>>16&255]<<16|s[l>>>8&255]<<8|s[255&f])^n[p++],e[t]=g,e[t+1]=v,e[t+2]=y,e[t+3]=d},keySize:8});e.AES=t._createHelper(n)}(),u.mode.ECB=((s=u.lib.BlockCipherMode.extend()).Encryptor=s.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),s.Decryptor=s.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),s),e.exports=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),a=r(n(5)),o=r(n(6)),s=r(n(4)),u=(r(n(18)),r(n(8)),r(n(19)),r(n(30))),c=r(n(31)),l=r(n(3)),f=(n(2),r(n(10))),d=function(){function e(t){var n=t.subscribeEndpoint,r=t.leaveEndpoint,i=t.heartbeatEndpoint,o=t.setStateEndpoint,l=t.timeEndpoint,f=t.getFileUrl,d=t.config,p=t.crypto,h=t.listenerManager;(0,a.default)(this,e),(0,s.default)(this,"_crypto",void 0),(0,s.default)(this,"_config",void 0),(0,s.default)(this,"_listenerManager",void 0),(0,s.default)(this,"_reconnectionManager",void 0),(0,s.default)(this,"_leaveEndpoint",void 0),(0,s.default)(this,"_heartbeatEndpoint",void 0),(0,s.default)(this,"_setStateEndpoint",void 0),(0,s.default)(this,"_subscribeEndpoint",void 0),(0,s.default)(this,"_getFileUrl",void 0),(0,s.default)(this,"_channels",void 0),(0,s.default)(this,"_presenceChannels",void 0),(0,s.default)(this,"_heartbeatChannels",void 0),(0,s.default)(this,"_heartbeatChannelGroups",void 0),(0,s.default)(this,"_channelGroups",void 0),(0,s.default)(this,"_presenceChannelGroups",void 0),(0,s.default)(this,"_currentTimetoken",void 0),(0,s.default)(this,"_lastTimetoken",void 0),(0,s.default)(this,"_storedTimetoken",void 0),(0,s.default)(this,"_region",void 0),(0,s.default)(this,"_subscribeCall",void 0),(0,s.default)(this,"_heartbeatTimer",void 0),(0,s.default)(this,"_subscriptionStatusAnnounced",void 0),(0,s.default)(this,"_autoNetworkDetection",void 0),(0,s.default)(this,"_isOnline",void 0),(0,s.default)(this,"_pendingChannelSubscriptions",void 0),(0,s.default)(this,"_pendingChannelGroupSubscriptions",void 0),(0,s.default)(this,"_dedupingManager",void 0),this._listenerManager=h,this._config=d,this._leaveEndpoint=r,this._heartbeatEndpoint=i,this._setStateEndpoint=o,this._subscribeEndpoint=n,this._getFileUrl=f,this._crypto=p,this._channels={},this._presenceChannels={},this._heartbeatChannels={},this._heartbeatChannelGroups={},this._channelGroups={},this._presenceChannelGroups={},this._pendingChannelSubscriptions=[],this._pendingChannelGroupSubscriptions=[],this._currentTimetoken=0,this._lastTimetoken=0,this._storedTimetoken=null,this._subscriptionStatusAnnounced=!1,this._isOnline=!0,this._reconnectionManager=new u.default({timeEndpoint:l}),this._dedupingManager=new c.default({config:d})}return(0,o.default)(e,[{key:"adaptStateChange",value:function(e,t){var n=this,r=e.state,i=e.channels,a=void 0===i?[]:i,o=e.channelGroups,s=void 0===o?[]:o;return a.forEach((function(e){e in n._channels&&(n._channels[e].state=r)})),s.forEach((function(e){e in n._channelGroups&&(n._channelGroups[e].state=r)})),this._setStateEndpoint({state:r,channels:a,channelGroups:s},t)}},{key:"adaptPresenceChange",value:function(e){var t=this,n=e.connected,r=e.channels,i=void 0===r?[]:r,a=e.channelGroups,o=void 0===a?[]:a;n?(i.forEach((function(e){t._heartbeatChannels[e]={state:{}}})),o.forEach((function(e){t._heartbeatChannelGroups[e]={state:{}}}))):(i.forEach((function(e){e in t._heartbeatChannels&&delete t._heartbeatChannels[e]})),o.forEach((function(e){e in t._heartbeatChannelGroups&&delete t._heartbeatChannelGroups[e]})),!1===this._config.suppressLeaveEvents&&this._leaveEndpoint({channels:i,channelGroups:o},(function(e){t._listenerManager.announceStatus(e)}))),this.reconnect()}},{key:"adaptSubscribeChange",value:function(e){var t=this,n=e.timetoken,r=e.channels,i=void 0===r?[]:r,a=e.channelGroups,o=void 0===a?[]:a,s=e.withPresence,u=void 0!==s&&s,c=e.withHeartbeats,l=void 0!==c&&c;this._config.subscribeKey&&""!==this._config.subscribeKey?(n&&(this._lastTimetoken=this._currentTimetoken,this._currentTimetoken=n),"0"!==this._currentTimetoken&&0!==this._currentTimetoken&&(this._storedTimetoken=this._currentTimetoken,this._currentTimetoken=0),i.forEach((function(e){t._channels[e]={state:{}},u&&(t._presenceChannels[e]={}),(l||t._config.getHeartbeatInterval())&&(t._heartbeatChannels[e]={}),t._pendingChannelSubscriptions.push(e)})),o.forEach((function(e){t._channelGroups[e]={state:{}},u&&(t._presenceChannelGroups[e]={}),(l||t._config.getHeartbeatInterval())&&(t._heartbeatChannelGroups[e]={}),t._pendingChannelGroupSubscriptions.push(e)})),this._subscriptionStatusAnnounced=!1,this.reconnect()):console&&console.log&&console.log("subscribe key missing; aborting subscribe")}},{key:"adaptUnsubscribeChange",value:function(e,t){var n=this,r=e.channels,i=void 0===r?[]:r,a=e.channelGroups,o=void 0===a?[]:a,s=[],u=[];i.forEach((function(e){e in n._channels&&(delete n._channels[e],s.push(e),e in n._heartbeatChannels&&delete n._heartbeatChannels[e]),e in n._presenceChannels&&(delete n._presenceChannels[e],s.push(e))})),o.forEach((function(e){e in n._channelGroups&&(delete n._channelGroups[e],u.push(e),e in n._heartbeatChannelGroups&&delete n._heartbeatChannelGroups[e]),e in n._presenceChannelGroups&&(delete n._channelGroups[e],u.push(e))})),0===s.length&&0===u.length||(!1!==this._config.suppressLeaveEvents||t||this._leaveEndpoint({channels:s,channelGroups:u},(function(e){e.affectedChannels=s,e.affectedChannelGroups=u,e.currentTimetoken=n._currentTimetoken,e.lastTimetoken=n._lastTimetoken,n._listenerManager.announceStatus(e)})),0===Object.keys(this._channels).length&&0===Object.keys(this._presenceChannels).length&&0===Object.keys(this._channelGroups).length&&0===Object.keys(this._presenceChannelGroups).length&&(this._lastTimetoken=0,this._currentTimetoken=0,this._storedTimetoken=null,this._region=null,this._reconnectionManager.stopPolling()),this.reconnect())}},{key:"unsubscribeAll",value:function(e){this.adaptUnsubscribeChange({channels:this.getSubscribedChannels(),channelGroups:this.getSubscribedChannelGroups()},e)}},{key:"getHeartbeatChannels",value:function(){return Object.keys(this._heartbeatChannels)}},{key:"getHeartbeatChannelGroups",value:function(){return Object.keys(this._heartbeatChannelGroups)}},{key:"getSubscribedChannels",value:function(){return Object.keys(this._channels)}},{key:"getSubscribedChannelGroups",value:function(){return Object.keys(this._channelGroups)}},{key:"reconnect",value:function(){this._startSubscribeLoop(),this._registerHeartbeatTimer()}},{key:"disconnect",value:function(){this._stopSubscribeLoop(),this._stopHeartbeatTimer(),this._reconnectionManager.stopPolling()}},{key:"_registerHeartbeatTimer",value:function(){this._stopHeartbeatTimer(),0!==this._config.getHeartbeatInterval()&&void 0!==this._config.getHeartbeatInterval()&&(this._performHeartbeatLoop(),this._heartbeatTimer=setInterval(this._performHeartbeatLoop.bind(this),1e3*this._config.getHeartbeatInterval()))}},{key:"_stopHeartbeatTimer",value:function(){this._heartbeatTimer&&(clearInterval(this._heartbeatTimer),this._heartbeatTimer=null)}},{key:"_performHeartbeatLoop",value:function(){var e=this,t=this.getHeartbeatChannels(),n=this.getHeartbeatChannelGroups(),r={};if(0!==t.length||0!==n.length){this.getSubscribedChannels().forEach((function(t){var n=e._channels[t].state;Object.keys(n).length&&(r[t]=n)})),this.getSubscribedChannelGroups().forEach((function(t){var n=e._channelGroups[t].state;Object.keys(n).length&&(r[t]=n)}));this._heartbeatEndpoint({channels:t,channelGroups:n,state:r},function(t){t.error&&e._config.announceFailedHeartbeats&&e._listenerManager.announceStatus(t),t.error&&e._config.autoNetworkDetection&&e._isOnline&&(e._isOnline=!1,e.disconnect(),e._listenerManager.announceNetworkDown(),e.reconnect()),!t.error&&e._config.announceSuccessfulHeartbeats&&e._listenerManager.announceStatus(t)}.bind(this))}}},{key:"_startSubscribeLoop",value:function(){var e=this;this._stopSubscribeLoop();var t={},n=[],r=[];if(Object.keys(this._channels).forEach((function(r){var i=e._channels[r].state;Object.keys(i).length&&(t[r]=i),n.push(r)})),Object.keys(this._presenceChannels).forEach((function(e){n.push("".concat(e,"-pnpres"))})),Object.keys(this._channelGroups).forEach((function(n){var i=e._channelGroups[n].state;Object.keys(i).length&&(t[n]=i),r.push(n)})),Object.keys(this._presenceChannelGroups).forEach((function(e){r.push("".concat(e,"-pnpres"))})),0!==n.length||0!==r.length){var i={channels:n,channelGroups:r,state:t,timetoken:this._currentTimetoken,filterExpression:this._config.filterExpression,region:this._region};this._subscribeCall=this._subscribeEndpoint(i,this._processSubscribeResponse.bind(this))}}},{key:"_processSubscribeResponse",value:function(e,t){var n=this;if(e.error)e.category===f.default.PNTimeoutCategory?this._startSubscribeLoop():e.category===f.default.PNNetworkIssuesCategory?(this.disconnect(),e.error&&this._config.autoNetworkDetection&&this._isOnline&&(this._isOnline=!1,this._listenerManager.announceNetworkDown()),this._reconnectionManager.onReconnection((function(){n._config.autoNetworkDetection&&!n._isOnline&&(n._isOnline=!0,n._listenerManager.announceNetworkUp()),n.reconnect(),n._subscriptionStatusAnnounced=!0;var t={category:f.default.PNReconnectedCategory,operation:e.operation,lastTimetoken:n._lastTimetoken,currentTimetoken:n._currentTimetoken};n._listenerManager.announceStatus(t)})),this._reconnectionManager.startPolling(),this._listenerManager.announceStatus(e)):e.category===f.default.PNBadRequestCategory?(this._stopHeartbeatTimer(),this._listenerManager.announceStatus(e)):this._listenerManager.announceStatus(e);else{if(this._storedTimetoken?(this._currentTimetoken=this._storedTimetoken,this._storedTimetoken=null):(this._lastTimetoken=this._currentTimetoken,this._currentTimetoken=t.metadata.timetoken),!this._subscriptionStatusAnnounced){var r={};r.category=f.default.PNConnectedCategory,r.operation=e.operation,r.affectedChannels=this._pendingChannelSubscriptions,r.subscribedChannels=this.getSubscribedChannels(),r.affectedChannelGroups=this._pendingChannelGroupSubscriptions,r.lastTimetoken=this._lastTimetoken,r.currentTimetoken=this._currentTimetoken,this._subscriptionStatusAnnounced=!0,this._listenerManager.announceStatus(r),this._pendingChannelSubscriptions=[],this._pendingChannelGroupSubscriptions=[]}var a=t.messages||[],o=this._config,s=o.requestMessageCountThreshold,u=o.dedupeOnSubscribe;if(s&&a.length>=s){var c={};c.category=f.default.PNRequestMessageCountExceededCategory,c.operation=e.operation,this._listenerManager.announceStatus(c)}a.forEach((function(e){var t=e.channel,r=e.subscriptionMatch,a=e.publishMetaData;if(t===r&&(r=null),u){if(n._dedupingManager.isDuplicate(e))return;n._dedupingManager.addEntry(e)}if(l.default.endsWith(e.channel,"-pnpres")){var o={channel:null,subscription:null};o.actualChannel=null!=r?t:null,o.subscribedChannel=null!=r?r:t,t&&(o.channel=t.substring(0,t.lastIndexOf("-pnpres"))),r&&(o.subscription=r.substring(0,r.lastIndexOf("-pnpres"))),o.action=e.payload.action,o.state=e.payload.data,o.timetoken=a.publishTimetoken,o.occupancy=e.payload.occupancy,o.uuid=e.payload.uuid,o.timestamp=e.payload.timestamp,e.payload.join&&(o.join=e.payload.join),e.payload.leave&&(o.leave=e.payload.leave),e.payload.timeout&&(o.timeout=e.payload.timeout),n._listenerManager.announcePresence(o)}else if(1===e.messageType){var s={channel:null,subscription:null};s.channel=t,s.subscription=r,s.timetoken=a.publishTimetoken,s.publisher=e.issuingClientId,e.userMetadata&&(s.userMetadata=e.userMetadata),s.message=e.payload,n._listenerManager.announceSignal(s)}else if(2===e.messageType){var c={channel:null,subscription:null};c.channel=t,c.subscription=r,c.timetoken=a.publishTimetoken,c.publisher=e.issuingClientId,e.userMetadata&&(c.userMetadata=e.userMetadata),c.message={event:e.payload.event,type:e.payload.type,data:e.payload.data},n._listenerManager.announceObjects(c),"user"===e.payload.type?n._listenerManager.announceUser(c):"space"===e.payload.type?n._listenerManager.announceSpace(c):"membership"===e.payload.type&&n._listenerManager.announceMembership(c)}else if(3===e.messageType){var f={};f.channel=t,f.subscription=r,f.timetoken=a.publishTimetoken,f.publisher=e.issuingClientId,f.data={messageTimetoken:e.payload.data.messageTimetoken,actionTimetoken:e.payload.data.actionTimetoken,type:e.payload.data.type,uuid:e.issuingClientId,value:e.payload.data.value},f.event=e.payload.event,n._listenerManager.announceMessageAction(f)}else if(4===e.messageType){var d={};d.channel=t,d.subscription=r,d.timetoken=a.publishTimetoken,d.publisher=e.issuingClientId;var p=e.payload;if(n._config.cipherKey){var h=n._crypto.decrypt(e.payload);"object"===(0,i.default)(h)&&null!==h&&(p=h)}e.userMetadata&&(d.userMetadata=e.userMetadata),d.message=p.message,d.file={id:p.file.id,name:p.file.name,url:n._getFileUrl({id:p.file.id,name:p.file.name,channel:t})},n._listenerManager.announceFile(d)}else{var g={channel:null,subscription:null};g.actualChannel=null!=r?t:null,g.subscribedChannel=null!=r?r:t,g.channel=t,g.subscription=r,g.timetoken=a.publishTimetoken,g.publisher=e.issuingClientId,e.userMetadata&&(g.userMetadata=e.userMetadata),n._config.cipherKey?g.message=n._crypto.decrypt(e.payload):g.message=e.payload,n._listenerManager.announceMessage(g)}})),this._region=t.metadata.region,this._startSubscribeLoop()}}},{key:"_stopSubscribeLoop",value:function(){this._subscribeCall&&("function"==typeof this._subscribeCall.abort&&this._subscribeCall.abort(),this._subscribeCall=null)}}]),e}();t.default=d,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),s=(r(n(20)),n(2),function(){function e(t){var n=t.timeEndpoint;(0,i.default)(this,e),(0,o.default)(this,"_reconnectionCallback",void 0),(0,o.default)(this,"_timeEndpoint",void 0),(0,o.default)(this,"_timeTimer",void 0),this._timeEndpoint=n}return(0,a.default)(e,[{key:"onReconnection",value:function(e){this._reconnectionCallback=e}},{key:"startPolling",value:function(){this._timeTimer=setInterval(this._performTimeLoop.bind(this),3e3)}},{key:"stopPolling",value:function(){clearInterval(this._timeTimer)}},{key:"_performTimeLoop",value:function(){var e=this;this._timeEndpoint((function(t){t.error||(clearInterval(e._timeTimer),e._reconnectionCallback())}))}}]),e}());t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),s=(r(n(8)),n(2),function(){function e(t){var n=t.config;(0,i.default)(this,e),(0,o.default)(this,"_config",void 0),(0,o.default)(this,"hashHistory",void 0),this.hashHistory=[],this._config=n}return(0,a.default)(e,[{key:"getKey",value:function(e){var t=function(e){var t=0;if(0===e.length)return t;for(var n=0;n=this._config.maximumCacheSize&&this.hashHistory.shift(),this.hashHistory.push(this.getKey(e))}},{key:"clearHistory",value:function(){this.hashHistory=[]}}]),e}());t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),s=r(n(1)),u=function(){function e(t){(0,i.default)(this,e),(0,o.default)(this,"_maximumSamplesCount",100),(0,o.default)(this,"_trackedLatencies",{}),(0,o.default)(this,"_latencies",{}),this._maximumSamplesCount=t.maximumSamplesCount||this._maximumSamplesCount}return(0,a.default)(e,[{key:"operationsLatencyForRequest",value:function(){var e=this,t={};return Object.keys(this._latencies).forEach((function(n){var r=e._latencies[n],i=e._averageLatency(r);i>0&&(t["l_".concat(n)]=i)})),t}},{key:"startLatencyMeasure",value:function(e,t){e!==s.default.PNSubscribeOperation&&t&&(this._trackedLatencies[t]=Date.now())}},{key:"stopLatencyMeasure",value:function(e,t){if(e!==s.default.PNSubscribeOperation&&t){var n=this._endpointName(e),r=this._latencies[n],i=this._trackedLatencies[t];r||(r=this._latencies[n]=[]),r.push(Date.now()-i),r.length>this._maximumSamplesCount&&r.splice(0,r.length-this._maximumSamplesCount),delete this._trackedLatencies[t]}}},{key:"_averageLatency",value:function(e){return Math.floor(e.reduce((function(e,t){return e+t}),0)/e.length)}},{key:"_endpointName",value:function(e){var t=null;switch(e){case s.default.PNPublishOperation:t="pub";break;case s.default.PNSignalOperation:t="sig";break;case s.default.PNHistoryOperation:case s.default.PNFetchMessagesOperation:case s.default.PNDeleteMessagesOperation:case s.default.PNMessageCounts:t="hist";break;case s.default.PNUnsubscribeOperation:case s.default.PNWhereNowOperation:case s.default.PNHereNowOperation:case s.default.PNHeartbeatOperation:case s.default.PNSetStateOperation:case s.default.PNGetStateOperation:t="pres";break;case s.default.PNAddChannelsToGroupOperation:case s.default.PNRemoveChannelsFromGroupOperation:case s.default.PNChannelGroupsOperation:case s.default.PNRemoveGroupOperation:case s.default.PNChannelsForGroupOperation:t="cg";break;case s.default.PNPushNotificationEnabledChannelsOperation:case s.default.PNRemoveAllPushNotificationsOperation:t="push";break;case s.default.PNCreateUserOperation:case s.default.PNUpdateUserOperation:case s.default.PNDeleteUserOperation:case s.default.PNGetUserOperation:case s.default.PNGetUsersOperation:case s.default.PNCreateSpaceOperation:case s.default.PNUpdateSpaceOperation:case s.default.PNDeleteSpaceOperation:case s.default.PNGetSpaceOperation:case s.default.PNGetSpacesOperation:case s.default.PNGetMembersOperation:case s.default.PNUpdateMembersOperation:case s.default.PNGetMembershipsOperation:case s.default.PNUpdateMembershipsOperation:t="obj";break;case s.default.PNAddMessageActionOperation:case s.default.PNRemoveMessageActionOperation:case s.default.PNGetMessageActionsOperation:t="msga";break;case s.default.PNAccessManagerGrant:case s.default.PNAccessManagerAudit:t="pam";break;case s.default.PNAccessManagerGrantToken:t="pam3";break;default:t="time"}return t}}]),e}();t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.FCMNotificationPayload=t.MPNSNotificationPayload=t.APNSNotificationPayload=void 0;var i=r(n(34)),a=r(n(17)),o=r(n(12)),s=r(n(14)),u=r(n(11)),c=r(n(5)),l=r(n(6)),f=r(n(4));n(2);function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function p(e){for(var t=1;t2){var r=this._payload,a=(r.notification,r.data,(0,i.default)(r,["notification","data"]));e=p(p({},e),a)}return this._isSilent?e.notification=this._payload.notification:t=this._payload.notification,Object.keys(e).length&&(n.data=e),t&&Object.keys(t).length&&(n.notification=t),Object.keys(n).length?n:null}},{key:"notification",get:function(){return this._payload.notification}},{key:"data",get:function(){return this._payload.data}},{key:"title",get:function(){return this._title},set:function(e){e&&e.length&&(this._payload.notification.title=e,this._title=e)}},{key:"body",get:function(){return this._body},set:function(e){e&&e.length&&(this._payload.notification.body=e,this._body=e)}},{key:"sound",get:function(){return this._sound},set:function(e){e&&e.length&&(this._payload.notification.sound=e,this._sound=e)}},{key:"icon",get:function(){return this._icon},set:function(e){e&&e.length&&(this._payload.notification.icon=e,this._icon=e)}},{key:"tag",get:function(){return this._tag},set:function(e){e&&e.length&&(this._payload.notification.tag=e,this._tag=e)}},{key:"silent",set:function(e){this._isSilent=e}}]),n}(g);t.FCMNotificationPayload=b;var m=function(){function e(t,n){(0,c.default)(this,e),(0,f.default)(this,"_payload",void 0),(0,f.default)(this,"_debugging",void 0),(0,f.default)(this,"_subtitle",void 0),(0,f.default)(this,"_badge",void 0),(0,f.default)(this,"_sound",void 0),(0,f.default)(this,"_title",void 0),(0,f.default)(this,"_body",void 0),(0,f.default)(this,"apns",void 0),(0,f.default)(this,"mpns",void 0),(0,f.default)(this,"fcm",void 0),this._payload={apns:{},mpns:{},fcm:{}},this._title=t,this._body=n,this.apns=new v(this._payload.apns,t,n),this.mpns=new y(this._payload.mpns,t,n),this.fcm=new b(this._payload.fcm,t,n)}return(0,l.default)(e,[{key:"debugging",set:function(e){this._debugging=e}},{key:"title",get:function(){return this._title}},{key:"body",get:function(){return this._body}},{key:"subtitle",get:function(){return this._subtitle},set:function(e){this._subtitle=e,this.apns.subtitle=e,this.mpns.subtitle=e,this.fcm.subtitle=e}},{key:"badge",get:function(){return this._badge},set:function(e){this._badge=e,this.apns.badge=e,this.mpns.badge=e,this.fcm.badge=e}},{key:"sound",get:function(){return this._sound},set:function(e){this._sound=e,this.apns.sound=e,this.mpns.sound=e,this.fcm.sound=e}}]),(0,l.default)(e,[{key:"buildPayload",value:function(e){var t={};if(e.includes("apns")||e.includes("apns2")){this.apns._apnsPushType=e.includes("apns")?"apns":"apns2";var n=this.apns.toObject();n&&Object.keys(n).length&&(t.pn_apns=n)}if(e.includes("mpns")){var r=this.mpns.toObject();r&&Object.keys(r).length&&(t.pn_mpns=r)}if(e.includes("fcm")){var i=this.fcm.toObject();i&&Object.keys(i).length&&(t.pn_gcm=i)}return Object.keys(t).length&&this._debugging&&(t.pn_debug=!0),t}}]),e}();t.default=m},function(e,t,n){var r=n(35);e.exports=function(e,t){if(null==e)return{};var n,i,a=r(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},a=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),a=r(n(5)),o=r(n(6)),s=r(n(4)),u=(r(n(8)),n(2),function(){function e(t,n){(0,a.default)(this,e),(0,s.default)(this,"_config",void 0),(0,s.default)(this,"_cbor",void 0),(0,s.default)(this,"_userTokens",void 0),(0,s.default)(this,"_spaceTokens",void 0),(0,s.default)(this,"_userToken",void 0),(0,s.default)(this,"_spaceToken",void 0),this._config=t,this._cbor=n,this._initializeTokens()}return(0,o.default)(e,[{key:"_initializeTokens",value:function(){this._userTokens={},this._spaceTokens={},this._userToken=void 0,this._spaceToken=void 0}},{key:"_setToken",value:function(e){var t=this,n=this.parseToken(e);n&&n.resources&&(n.resources.users&&Object.keys(n.resources.users).forEach((function(n){t._userTokens[n]=e})),n.resources.spaces&&Object.keys(n.resources.spaces).forEach((function(n){t._spaceTokens[n]=e}))),n&&n.patterns&&(n.patterns.users&&Object.keys(n.patterns.users).length>0&&(this._userToken=e),n.patterns.spaces&&Object.keys(n.patterns.spaces).length>0&&(this._spaceToken=e))}},{key:"setToken",value:function(e){e&&e.length>0&&this._setToken(e)}},{key:"setTokens",value:function(e){var t=this;e&&e.length&&"object"===(0,i.default)(e)&&e.forEach((function(e){t.setToken(e)}))}},{key:"getTokens",value:function(e){var t=this,n={users:{},spaces:{}};return e?(e.user&&(n.user=this._userToken),e.space&&(n.space=this._spaceToken),e.users&&e.users.forEach((function(e){n.users[e]=t._userTokens[e]})),e.space&&e.spaces.forEach((function(e){n.spaces[e]=t._spaceTokens[e]}))):(this._userToken&&(n.user=this._userToken),this._spaceToken&&(n.space=this._spaceToken),Object.keys(this._userTokens).forEach((function(e){n.users[e]=t._userTokens[e]})),Object.keys(this._spaceTokens).forEach((function(e){n.spaces[e]=t._spaceTokens[e]}))),n}},{key:"getToken",value:function(e,t){var n;return t?"user"===e?n=this._userTokens[t]:"space"===e&&(n=this._spaceTokens[t]):"user"===e?n=this._userToken:"space"===e&&(n=this._spaceToken),n}},{key:"extractPermissions",value:function(e){var t={create:!1,read:!1,write:!1,manage:!1,delete:!1};return 16==(16&e)&&(t.create=!0),8==(8&e)&&(t.delete=!0),4==(4&e)&&(t.manage=!0),2==(2&e)&&(t.write=!0),1==(1&e)&&(t.read=!0),t}},{key:"parseToken",value:function(e){var t=this,n=this._cbor.decodeToken(e);if(void 0!==n){var r=Object.keys(n.res.usr),i=Object.keys(n.res.spc),a=Object.keys(n.res.chan),o=Object.keys(n.res.grp),s=Object.keys(n.pat.usr),u=Object.keys(n.pat.spc),c=Object.keys(n.pat.chan),l=Object.keys(n.pat.grp),f={version:n.v,timestamp:n.t,ttl:n.ttl},d=r.length>0,p=i.length>0,h=a.length>0,g=o.length>0;(d||p||h||g)&&(f.resources={},d&&(f.resources.users={},r.forEach((function(e){f.resources.users[e]=t.extractPermissions(n.res.usr[e])}))),p&&(f.resources.spaces={},i.forEach((function(e){f.resources.spaces[e]=t.extractPermissions(n.res.spc[e])}))),h&&(f.resources.channels={},a.forEach((function(e){f.resources.channels[e]=t.extractPermissions(n.res.chan[e])}))),g&&(f.resources.groups={},o.forEach((function(e){f.resources.groups[e]=t.extractPermissions(n.res.grp[e])}))));var v=s.length>0,y=u.length>0,b=c.length>0,m=l.length>0;return(v||y||b||m)&&(f.patterns={},v&&(f.patterns.users={},s.forEach((function(e){f.patterns.users[e]=t.extractPermissions(n.pat.usr[e])}))),y&&(f.patterns.spaces={},u.forEach((function(e){f.patterns.spaces[e]=t.extractPermissions(n.pat.spc[e])}))),b&&(f.patterns.channels={},c.forEach((function(e){f.patterns.channels[e]=t.extractPermissions(n.pat.chan[e])}))),m&&(f.patterns.groups={},l.forEach((function(e){f.patterns.groups[e]=t.extractPermissions(n.pat.grp[e])})))),Object.keys(n.meta).length>0&&(f.meta=n.meta),f.signature=n.sig,f}}},{key:"clearTokens",value:function(){this._initializeTokens()}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){var r=n(11),i=n(13),a=n(38),o=n(39);function s(t){var n="function"==typeof Map?new Map:void 0;return e.exports=s=function(e){if(null===e||!a(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(e))return n.get(e);n.set(e,t)}function t(){return o(e,arguments,r(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),i(t,e)},s(t)}e.exports=s},function(e,t){e.exports=function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}},function(e,t,n){var r=n(13),i=n(40);function a(t,n,o){return i()?e.exports=a=Reflect.construct:e.exports=a=function(e,t,n){var i=[null];i.push.apply(i,t);var a=new(Function.bind.apply(e,i));return n&&r(a,n.prototype),a},a.apply(null,arguments)}e.exports=a},function(e,t){e.exports=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAddChannelsToGroupOperation},t.validateParams=function(e,t){var n=t.channels,r=t.channelGroup,i=e.config;if(!r)return"Missing Channel Group";if(!n||0===n.length)return"Missing Channels";if(!i.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(a.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels;return{add:(void 0===n?[]:n).join(",")}},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveChannelsFromGroupOperation},t.validateParams=function(e,t){var n=t.channels,r=t.channelGroup,i=e.config;if(!r)return"Missing Channel Group";if(!n||0===n.length)return"Missing Channels";if(!i.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(a.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels;return{remove:(void 0===n?[]:n).join(",")}},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveGroupOperation},t.validateParams=function(e,t){var n=t.channelGroup,r=e.config;if(!n)return"Missing Channel Group";if(!r.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(a.default.encodeString(n),"/remove")},t.isAuthSupported=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.prepareParams=function(){return{}},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNChannelGroupsOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e){var t=e.config;return"/v1/channel-registration/sub-key/".concat(t.subscribeKey,"/channel-group")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return{groups:t.payload.groups}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNChannelsForGroupOperation},t.validateParams=function(e,t){var n=t.channelGroup,r=e.config;if(!n)return"Missing Channel Group";if(!r.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(a.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return{channels:t.payload.channels}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.channels,a=t.topic,o=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!a)return"Missing APNS2 topic";if(!i||0===i.length)return"Missing Channels";if(!o.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.channels,i=void 0===r?[]:r,a=t.environment,o=void 0===a?"development":a,s=t.topic,u={type:n,add:i.join(",")};"apns2"===n&&delete(u=Object.assign({},u,{environment:o,topic:s})).type;return u},t.handleResponse=function(){return{}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.channels,a=t.topic,o=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!a)return"Missing APNS2 topic";if(!i||0===i.length)return"Missing Channels";if(!o.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.channels,i=void 0===r?[]:r,a=t.environment,o=void 0===a?"development":a,s=t.topic,u={type:n,remove:i.join(",")};"apns2"===n&&delete(u=Object.assign({},u,{environment:o,topic:s})).type;return u},t.handleResponse=function(){return{}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.topic,a=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!i)return"Missing APNS2 topic";if(!a.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.environment,i=void 0===r?"development":r,a=t.topic,o={type:n};"apns2"===n&&delete(o=Object.assign({},o,{environment:i,topic:a})).type;return o},t.handleResponse=function(e,t){return{channels:t}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveAllPushNotificationsOperation},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.topic,a=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!i)return"Missing APNS2 topic";if(!a.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n,"/remove");return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n,"/remove")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.environment,i=void 0===r?"development":r,a=t.topic,o={type:n};"apns2"===n&&delete(o=Object.assign({},o,{environment:i,topic:a})).type;return o},t.handleResponse=function(){return{}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUnsubscribeOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(o),"/leave")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i={};r.length>0&&(i["channel-group"]=r.join(","));return i},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNWhereNowOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.uuid,i=void 0===r?n.UUID:r;return"/v2/presence/sub-key/".concat(n.subscribeKey,"/uuid/").concat(a.default.encodeString(i))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){if(!t.payload)return{channels:[]};return{channels:t.payload.channels}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNHeartbeatOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(o),"/heartbeat")},t.isAuthSupported=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i=t.state,a=void 0===i?{}:i,o=e.config,s={};r.length>0&&(s["channel-group"]=r.join(","));return s.state=JSON.stringify(a),s.heartbeat=o.getPresenceTimeout(),s},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetStateOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.uuid,i=void 0===r?n.UUID:r,o=t.channels,s=void 0===o?[]:o,u=s.length>0?s.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(u),"/uuid/").concat(i)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i={};r.length>0&&(i["channel-group"]=r.join(","));return i},t.handleResponse=function(e,t,n){var r=n.channels,i=void 0===r?[]:r,a=n.channelGroups,o=void 0===a?[]:a,s={};1===i.length&&0===o.length?s[i[0]]=t.payload:s=t.payload;return{channels:s}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSetStateOperation},t.validateParams=function(e,t){var n=e.config,r=t.state,i=t.channels,a=void 0===i?[]:i,o=t.channelGroups,s=void 0===o?[]:o;if(!r)return"Missing State";if(!n.subscribeKey)return"Missing Subscribe Key";if(0===a.length&&0===s.length)return"Please provide a list of channels and/or channel-groups"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(o),"/uuid/").concat(a.default.encodeString(n.UUID),"/data")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.state,r=t.channelGroups,i=void 0===r?[]:r,a={};a.state=JSON.stringify(n),i.length>0&&(a["channel-group"]=i.join(","));return a},t.handleResponse=function(e,t){return{state:t.payload}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return a.default.PNHereNowOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=t.channelGroups,s=void 0===a?[]:a,u="/v2/presence/sub-key/".concat(n.subscribeKey);if(i.length>0||s.length>0){var c=i.length>0?i.join(","):",";u+="/channel/".concat(o.default.encodeString(c))}return u},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i=t.includeUUIDs,a=void 0===i||i,o=t.includeState,s=void 0!==o&&o,c=t.queryParameters,l=void 0===c?{}:c,f={};a||(f.disable_uuids=1);s&&(f.state=1);r.length>0&&(f["channel-group"]=r.join(","));return f=u(u({},f),l)},t.handleResponse=function(e,t,n){var r,i=n.channels,a=void 0===i?[]:i,o=n.channelGroups,s=void 0===o?[]:o,u=n.includeUUIDs,c=void 0===u||u,l=n.includeState,f=void 0!==l&&l;r=a.length>1||s.length>0||0===s.length&&0===a.length?function(){var e={};return e.totalChannels=t.payload.total_channels,e.totalOccupancy=t.payload.total_occupancy,e.channels={},Object.keys(t.payload.channels).forEach((function(n){var r=t.payload.channels[n],i=[];return e.channels[n]={occupants:i,name:n,occupancy:r.occupancy},c&&r.uuids.forEach((function(e){f?i.push({state:e.state,uuid:e.uuid}):i.push({state:null,uuid:e})})),e})),e}():function(){var e={},n=[];return e.totalChannels=1,e.totalOccupancy=t.occupancy,e.channels={},e.channels[a[0]]={occupants:n,name:a[0],occupancy:t.occupancy},c&&t.uuids&&t.uuids.forEach((function(e){f?n.push({state:e.state,uuid:e.uuid}):n.push({state:null,uuid:e})})),e}();return r},t.handleError=function(e,t,n){402!==n.statusCode||this.getURL(e,t).includes("channel")||(n.errorData.message="You have tried to perform a Global Here Now operation, your keyset configuration does not support that. Please provide a channel, or enable the Global Here Now feature from the Portal.")};var i=r(n(4)),a=(n(2),r(n(1))),o=r(n(3));function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function u(e){for(var t=1;t15)return"Action.type value exceed maximum length of 15"},t.usePost=function(){return!0},t.postURL=function(e,t){var n=e.config,r=t.channel,i=t.messageTimetoken;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(r),"/message/").concat(i)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getRequestHeaders=function(){return{"Content-Type":"application/json"}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.postPayload=function(e,t){return t.action},t.handleResponse=function(e,t){return{data:t.data}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveMessageActionOperation},t.validateParams=function(e,t){var n=e.config,r=t.channel,i=t.actionTimetoken;if(!t.messageTimetoken)return"Missing message timetoken";if(!i)return"Missing action timetoken";if(!n.subscribeKey)return"Missing Subscribe Key";if(!r)return"Missing message channel"},t.useDelete=function(){return!0},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.actionTimetoken,o=t.messageTimetoken;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(r),"/message/").concat(o,"/action/").concat(i)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return{data:t.data}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMessageActionsOperation},t.validateParams=function(e,t){var n=e.config,r=t.channel;if(!n.subscribeKey)return"Missing Subscribe Key";if(!r)return"Missing message channel"},t.getURL=function(e,t){var n=e.config,r=t.channel;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(r))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.limit,r=t.start,i=t.end,a={};n&&(a.limit=n);r&&(a.start=r);i&&(a.end=i);return a},t.handleResponse=function(e,t){var n={data:t.data,start:null,end:null};n.data.length&&(n.end=n.data[n.data.length-1].actionTimetoken,n.start=n.data[0].actionTimetoken);return n};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),a=r(n(3)),o={getOperation:function(){return i.default.PNListFilesOperation},validateParams:function(e,t){if(!(null==t?void 0:t.channel))return"channel can't be empty"},getURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(a.default.encodeString(t.channel),"/files")},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("fileUpload")},prepareParams:function(e,t){var n={};return t.limit&&(n.limit=t.limit),t.next&&(n.next=t.next),n},handleResponse:function(e,t){return{status:t.status,data:t.data,next:t.next,count:t.count}}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),a=r(n(3)),o={getOperation:function(){return i.default.PNGenerateUploadUrlOperation},validateParams:function(e,t){return(null==t?void 0:t.channel)?(null==t?void 0:t.name)?void 0:"name can't be empty":"channel can't be empty"},usePost:function(){return!0},postURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(a.default.encodeString(t.channel),"/generate-upload-url")},postPayload:function(e,t){return{name:t.name}},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("fileUpload")},prepareParams:function(){return{}},handleResponse:function(e,t){return{status:t.status,data:t.data,file_upload_request:t.file_upload_request}}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),a=r(n(1)),o=r(n(3)),s={getOperation:function(){return a.default.PNPublishFileOperation},validateParams:function(e,t){return(null==t?void 0:t.channel)?(null==t?void 0:t.fileId)?(null==t?void 0:t.fileName)?void 0:"file name can't be empty":"file id can't be empty":"channel can't be empty"},getURL:function(e,t){var n=e.config,r=n.publishKey,i=n.subscribeKey,a=function(e,t){var n=e.crypto,r=e.config,i=JSON.stringify(t);return r.cipherKey&&(i=n.encrypt(i),i=JSON.stringify(i)),i||""}(e,{message:t.message,file:{name:t.fileName,id:t.fileId}});return"/v1/files/publish-file/".concat(r,"/").concat(i,"/0/").concat(o.default.encodeString(t.channel),"/0/").concat(o.default.encodeString(a))},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("fileUpload")},prepareParams:function(e,t){var n={};return t.ttl&&(n.ttl=t.ttl),void 0!==t.storeInHistory&&(n.store=t.storeInHistory?"1":"0"),t.meta&&"object"===(0,i.default)(t.meta)&&(n.meta=JSON.stringify(t.meta)),n},handleResponse:function(e,t){return{timetoken:t[2]}}};t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(21)),a=r(n(22)),o=n(16),s=function(e){return new Promise((function(t){var n="";e.on("data",(function(e){n+=e.toString("utf8")})),e.on("end",(function(){t(n)}))}))};t.default=function(e){var t,n,r,u,c,l,f,d,p,h=(r=(t=e).generateUploadUrl,u=t.publishFile,c=t.modules,l=c.PubNubFile,f=c.config,d=c.cryptography,p=c.networking,n=(0,a.default)(i.default.mark((function e(t){var n,a,c,h,g,v,y,b,m,_,k,P,O,S,T,M,N,w,j,x,U,C;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.channel,a=t.file,c=t.message,h=t.cipherKey,g=t.meta,v=t.ttl,y=t.storeInHistory,n){e.next=3;break}throw new o.PubNubError("Validation failed, check status for details",(0,o.createValidationError)("channel can't be empty"));case 3:if(a){e.next=5;break}throw new o.PubNubError("Validation failed, check status for details",(0,o.createValidationError)("file can't be empty"));case 5:return b=l.create(a),e.next=8,r({channel:n,name:b.name});case 8:if(m=e.sent,_=m.file_upload_request,k=_.url,P=_.form_fields,O=m.data,S=O.id,T=O.name,!l.supportsEncryptFile||!(null!=h?h:f.cipherKey)){e.next=19;break}return e.next=18,d.encryptFile(null!=h?h:f.cipherKey,b,l);case 18:b=e.sent;case 19:if(M=P,b.mimeType&&(M=P.map((function(e){return"Content-Type"===e.key?{key:e.key,value:b.mimeType}:e}))),e.prev=21,!l.supportsFileUri||!a.uri){e.next=34;break}return e.t0=p,e.t1=k,e.t2=M,e.next=28,b.toFileUri();case 28:return e.t3=e.sent,e.next=31,e.t0.POSTFILE.call(e.t0,e.t1,e.t2,e.t3);case 31:N=e.sent,e.next=71;break;case 34:if(!l.supportsFile){e.next=46;break}return e.t4=p,e.t5=k,e.t6=M,e.next=40,b.toFile();case 40:return e.t7=e.sent,e.next=43,e.t4.POSTFILE.call(e.t4,e.t5,e.t6,e.t7);case 43:N=e.sent,e.next=71;break;case 46:if(!l.supportsBuffer){e.next=58;break}return e.t8=p,e.t9=k,e.t10=M,e.next=52,b.toBuffer();case 52:return e.t11=e.sent,e.next=55,e.t8.POSTFILE.call(e.t8,e.t9,e.t10,e.t11);case 55:N=e.sent,e.next=71;break;case 58:if(!l.supportsBlob){e.next=70;break}return e.t12=p,e.t13=k,e.t14=M,e.next=64,b.toBlob();case 64:return e.t15=e.sent,e.next=67,e.t12.POSTFILE.call(e.t12,e.t13,e.t14,e.t15);case 67:N=e.sent,e.next=71;break;case 70:throw new Error("Unsupported environment");case 71:e.next=80;break;case 73:return e.prev=73,e.t16=e.catch(21),e.next=77,s(e.t16.response);case 77:throw w=e.sent,j=/(.*)<\/Message>/gi.exec(w),new o.PubNubError(j?"Upload to bucket failed: ".concat(j[1]):"Upload to bucket failed.",e.t16);case 80:if(204===N.status){e.next=82;break}throw new o.PubNubError("Upload to bucket was unsuccessful",N);case 82:x=5,U=!1,C={timetoken:"0"};case 85:if(U||!(x>0)){e.next=98;break}return e.prev=86,e.next=89,u({channel:n,message:c,fileId:S,fileName:T,meta:g,storeInHistory:y,ttl:v});case 89:C=e.sent,U=!0,e.next=96;break;case 93:e.prev=93,e.t17=e.catch(86),x-=1;case 96:e.next=85;break;case 98:if(U){e.next=102;break}throw new o.PubNubError("Publish failed. You may want to execute that operation manually using pubnub.publishFile",{channel:n,id:S,name:T});case 102:return e.abrupt("return",{timetoken:C.timetoken,id:S,name:T});case 103:case"end":return e.stop()}}),e,null,[[21,73],[86,93]])}))),function(e){return n.apply(this,arguments)});return function(e,t){var n=h(e);return"function"==typeof t?(n.then((function(e){return t(null,e)})).catch((function(e){return t(e,null)})),n):n}},e.exports=t.default},function(e,t,n){var r=function(e){"use strict";var t=Object.prototype,n=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",o=r.toStringTag||"@@toStringTag";function s(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var i=t&&t.prototype instanceof f?t:f,a=Object.create(i.prototype),o=new O(r||[]);return a._invoke=function(e,t,n){var r="suspendedStart";return function(i,a){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw a;return T()}for(n.method=i,n.arg=a;;){var o=n.delegate;if(o){var s=_(o,n);if(s){if(s===l)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=c(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===l)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}(e,n,o),a}function c(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var l={};function f(){}function d(){}function p(){}var h={};h[i]=function(){return this};var g=Object.getPrototypeOf,v=g&&g(g(S([])));v&&v!==t&&n.call(v,i)&&(h=v);var y=p.prototype=f.prototype=Object.create(h);function b(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function m(e,t){var r;this._invoke=function(i,a){function o(){return new t((function(r,o){!function r(i,a,o,s){var u=c(e[i],e,a);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==typeof f&&n.call(f,"__await")?t.resolve(f.__await).then((function(e){r("next",e,o,s)}),(function(e){r("throw",e,o,s)})):t.resolve(f).then((function(e){l.value=e,o(l)}),(function(e){return r("throw",e,o,s)}))}s(u.arg)}(i,a,r,o)}))}return r=r?r.then(o,o):o()}}function _(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method))return l;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var r=c(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,l;var i=r.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,l):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,l)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function S(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,a=function t(){for(;++r=0;--i){var a=this.tryEntries[i],o=a.completion;if("root"===a.tryLoc)return r("end");if(a.tryLoc<=this.prev){var s=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(s&&u){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),P(n),l}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;P(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:S(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),l}},e}(e.exports);try{regeneratorRuntime=r}catch(e){Function("r","regeneratorRuntime = r")(r)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=n(16),a=r(n(3));t.default=function(e,t){var n=t.channel,r=t.id,o=t.name,s=e.config;if(!n)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("channel can't be empty"));if(!r)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("file id can't be empty"));if(!o)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("file name can't be empty"));var u="/v1/files/".concat(s.subscribeKey,"/channels/").concat(a.default.encodeString(n),"/files/").concat(r,"/").concat(o),c={};c.uuid=s.getUUID(),c.pnsdk=(0,i.generatePNSDK)(s),s.getAuthKey()&&(c.auth=s.getAuthKey()),s.secretKey&&(0,i.signRequest)(e,u,c,{},{getOperation:function(){return"PubNubGetFileUrlOperation"}});var l=Object.keys(c).map((function(e){return"".concat(encodeURIComponent(e),"=").concat(encodeURIComponent(c[e]))})).join("&");return""!==l?"https://".concat(s.origin).concat(u,"?").concat(l):"https://".concat(s.origin).concat(u)},e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i,a=r(n(21)),o=r(n(22)),s=r(n(1)),u=r(n(3)),c={getOperation:function(){return s.default.PNDownloadFileOperation},validateParams:function(e,t){return(null==t?void 0:t.channel)?(null==t?void 0:t.name)?(null==t?void 0:t.id)?void 0:"id can't be empty":"name can't be empty":"channel can't be empty"},useGetFile:function(){return!0},getFileURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(u.default.encodeString(t.channel),"/files/").concat(t.id,"/").concat(t.name)},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},ignoreBody:function(){return!0},forceBuffered:function(){return!0},prepareParams:function(){return{}},handleResponse:(i=(0,o.default)(a.default.mark((function e(t,n,r){var i,o,s,u,c,l;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(o=t.PubNubFile,s=t.config,u=t.cryptography,c=n.response.body,!o.supportsEncryptFile||!s.cipherKey){e.next=6;break}return e.next=5,u.decrypt(null!==(l=r.cipherKey)&&void 0!==l?l:s.cipherKey,c);case 5:c=e.sent;case 6:return e.abrupt("return",o.create({data:c,name:null!==(i=n.response.name)&&void 0!==i?i:r.name,mimeType:n.response.type}));case 7:case"end":return e.stop()}}),e)}))),function(e,t,n){return i.apply(this,arguments)})};t.default=c,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),a=r(n(3)),o={getOperation:function(){return i.default.PNListFilesOperation},validateParams:function(e,t){return(null==t?void 0:t.channel)?(null==t?void 0:t.id)?(null==t?void 0:t.name)?void 0:"file name can't be empty":"file id can't be empty":"channel can't be empty"},useDelete:function(){return!0},getURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(a.default.encodeString(t.channel),"/files/").concat(t.id,"/").concat(t.name)},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("fileUpload")},prepareParams:function(){return{}},handleResponse:function(e,t){return{status:t.status}}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(9)),a=r(n(1)),o={getOperation:function(){return a.default.PNGetAllUUIDMetadataOperation},validateParams:function(){},getURL:function(e){var t=e.config;return"/v2/objects/".concat(t.subscribeKey,"/uuids")},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("user")},prepareParams:function(e,t){var n,r,a,o,s,u,c,l,f,d={};((null==t||null===(n=t.include)||void 0===n?void 0:n.customFields)&&(d.include="custom"),null==t||null===(r=t.include)||void 0===r?void 0:r.totalCount)&&(d.count=null===(u=t.include)||void 0===u?void 0:u.totalCount);(null==t||null===(a=t.page)||void 0===a?void 0:a.next)&&(d.start=null===(c=t.page)||void 0===c?void 0:c.next);(null==t||null===(o=t.page)||void 0===o?void 0:o.prev)&&(d.end=null===(l=t.page)||void 0===l?void 0:l.prev);((null==t?void 0:t.filter)&&(d.filter=t.filter),d.limit=null!==(s=null==t?void 0:t.limit)&&void 0!==s?s:100,null==t?void 0:t.sort)&&(d.sort=Object.entries(null!==(f=t.sort)&&void 0!==f?f:{}).map((function(e){var t=(0,i.default)(e,2),n=t[0],r=t[1];return"asc"===r||"desc"===r?"".concat(n,":").concat(r):n})));return d},handleResponse:function(e,t){return{status:t.status,data:t.data,totalCount:t.totalCount,next:t.next,prev:t.prev}}};t.default=o,e.exports=t.default},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,i=!1,a=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){i=!0,a=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw a}}return n}}},function(e,t,n){var r=n(73);e.exports=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&(r.include=a)}return r},t.postPayload=function(e,t){return function(e,t){return t}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateUserOperation},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,a=t.custom;if(!r)return"Missing User.id";if(!i)return"Missing User.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(a&&!Object.values(a).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."},t.usePatch=function(){return!0},t.getURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(r))},t.patchURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(r))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.id)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.patchPayload=function(e,t){return function(e,t){return t}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteUserOperation},t.validateParams=function(e,t){var n=e.config;if(!t)return"Missing UserId";if(!n.subscribeKey)return"Missing Subscribe Key"},t.useDelete=function(){return!0},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t)||e.tokenManager.getToken("user")},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetUserOperation},t.validateParams=function(e,t){if(!t.userId)return"Missing userId"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetUsersOperation},t.validateParams=function(){},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/users")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e){return e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a=t.filter,o={};r&&(o.limit=r);if(n){var s=[];n.totalCount&&(o.count=!0),n.customFields&&s.push("custom");var u=s.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));a&&(o.filter=a);return o},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNCreateSpaceOperation},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,a=t.custom;if(!r)return"Missing Space.id";if(!i)return"Missing Space.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(a&&!Object.values(a).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."},t.usePost=function(){return!0},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.postURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.id)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.postPayload=function(e,t){return function(e,t){return t}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateSpaceOperation},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,a=t.custom;if(!r)return"Missing Space.id";if(!i)return"Missing Space.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(a&&!Object.values(a).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."},t.usePatch=function(){return!0},t.getURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(r))},t.patchURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(r))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.id)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.patchPayload=function(e,t){return function(e,t){return t}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteSpaceOperation},t.validateParams=function(e,t){var n=e.config;if(!t)return"Missing SpaceId";if(!n.subscribeKey)return"Missing Subscribe Key"},t.useDelete=function(){return!0},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t)||e.tokenManager.getToken("space")},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetSpacesOperation},t.validateParams=function(){},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e){return e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a=t.filter,o={};r&&(o.limit=r);if(n){var s=[];n.totalCount&&(o.count=!0),n.customFields&&s.push("custom");var u=s.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));a&&(o.filter=a);return o},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetSpaceOperation},t.validateParams=function(e,t){if(!t.spaceId)return"Missing spaceId"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMembersOperation},t.validateParams=function(e,t){if(!t.spaceId)return"Missing spaceId"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a=t.filter,o={};r&&(o.limit=r);if(n){var s=[];n.totalCount&&(o.count=!0),n.customFields&&s.push("custom"),n.userFields&&s.push("user"),n.customUserFields&&s.push("user.custom");var u=s.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));a&&(o.filter=a);return o},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var s=o.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.patchPayload=function(e,t){return function(e,t){var n=t.users,r={};n&&n.length>0&&(r.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),r.add.push(t)})));return r}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var s=o.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.patchPayload=function(e,t){return function(e,t){var n=t.addMembers,r=t.updateMembers,i=t.removeMembers,a=t.users,o={};n&&n.length>0&&(o.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.add.push(t)})));r&&r.length>0&&(o.update=[],r.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.update.push(t)})));a&&a.length>0&&(o.update=o.update||[],a.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.update.push(t)})));i&&i.length>0&&(o.remove=[],i.forEach((function(e){o.remove.push({id:e})})));return o}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var s=o.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.patchPayload=function(e,t){return function(e,t){var n=t.users,r={};n&&n.length>0&&(r.remove=[],n.forEach((function(e){r.remove.push({id:e})})));return r}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMembershipsOperation},t.validateParams=function(e,t){if(!t.userId)return"Missing userId"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a=t.filter,o={};r&&(o.limit=r);if(n){var s=[];n.totalCount&&(o.count=!0),n.customFields&&s.push("custom"),n.spaceFields&&s.push("space"),n.customSpaceFields&&s.push("space.custom");var u=s.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));a&&(o.filter=a);return o},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var s=o.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.patchPayload=function(e,t){return function(e,t){var n=t.addMemberships,r=t.updateMemberships,i=t.removeMemberships,a=t.spaces,o={};n&&n.length>0&&(o.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.add.push(t)})));r&&r.length>0&&(o.update=[],r.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.update.push(t)})));a&&a.length>0&&(o.update=o.update||[],a.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.update.push(t)})));i&&i.length>0&&(o.remove=[],i.forEach((function(e){o.remove.push({id:e})})));return o}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var s=o.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.patchPayload=function(e,t){return function(e,t){var n=t.spaces,r={};n&&n.length>0&&(r.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),r.add.push(t)})));return r}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var s=o.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.patchPayload=function(e,t){return function(e,t){var n=t.spaces,r={};n&&n.length>0&&(r.remove=[],n.forEach((function(e){r.remove.push({id:e})})));return r}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerAudit},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e){var t=e.config;return"/v2/auth/audit/sub-key/".concat(t.subscribeKey)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!1},t.prepareParams=function(e,t){var n=t.channel,r=t.channelGroup,i=t.authKeys,a=void 0===i?[]:i,o={};n&&(o.channel=n);r&&(o["channel-group"]=r);a.length>0&&(o.auth=a.join(","));return o},t.handleResponse=function(e,t){return t.payload};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerGrant},t.validateParams=function(e,t){var n=e.config;if(!n.subscribeKey)return"Missing Subscribe Key";if(!n.publishKey)return"Missing Publish Key";if(!n.secretKey)return"Missing Secret Key";if(null!=t.uuids&&!t.authKeys)return"authKeys are required for grant request on uuids";if(null!=t.uuids&&(null!=t.channels||null!=t.channelGroups))return"Both channel/channelgroup and uuid cannot be used in the same request"},t.getURL=function(e){var t=e.config;return"/v2/auth/grant/sub-key/".concat(t.subscribeKey)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!1},t.prepareParams=function(e,t){var n=t.channels,r=void 0===n?[]:n,i=t.channelGroups,a=void 0===i?[]:i,o=t.uuids,s=void 0===o?[]:o,u=t.ttl,c=t.read,l=void 0!==c&&c,f=t.write,d=void 0!==f&&f,p=t.manage,h=void 0!==p&&p,g=t.get,v=void 0!==g&&g,y=t.join,b=void 0!==y&&y,m=t.update,_=void 0!==m&&m,k=t.authKeys,P=void 0===k?[]:k,O=t.delete,S={};S.r=l?"1":"0",S.w=d?"1":"0",S.m=h?"1":"0",S.d=O?"1":"0",S.g=v?"1":"0",S.j=b?"1":"0",S.u=_?"1":"0",r.length>0&&(S.channel=r.join(","));a.length>0&&(S["channel-group"]=a.join(","));P.length>0&&(S.auth=P.join(","));s.length>0&&(S["target-uuid"]=s.join(","));(u||0===u)&&(S.ttl=u);return S},t.handleResponse=function(){return{}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerGrantToken},t.extractPermissions=a,t.validateParams=function(e,t){var n=e.config;if(!n.subscribeKey)return"Missing Subscribe Key";if(!n.publishKey)return"Missing Publish Key";if(!n.secretKey)return"Missing Secret Key";if(!t.resources&&!t.patterns)return"Missing either Resources or Patterns.";if(t.resources&&(!t.resources.users||0===Object.keys(t.resources.users).length)&&(!t.resources.spaces||0===Object.keys(t.resources.spaces).length)&&(!t.resources.channels||0===Object.keys(t.resources.channels).length)&&(!t.resources.groups||0===Object.keys(t.resources.groups).length)||t.patterns&&(!t.patterns.users||0===Object.keys(t.patterns.users).length)&&(!t.patterns.spaces||0===Object.keys(t.patterns.spaces).length)&&(!t.patterns.channels||0===Object.keys(t.patterns.channels).length)&&(!t.patterns.groups||0===Object.keys(t.patterns.groups).length))return"Missing values for either Resources or Patterns."},t.postURL=function(e){var t=e.config;return"/v3/pam/".concat(t.subscribeKey,"/grant")},t.usePost=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!1},t.prepareParams=function(){return{}},t.postPayload=function(e,t){return function(e,t){var n=t.ttl,r=t.resources,i=t.patterns,o=t.meta,s={ttl:0,permissions:{resources:{channels:{},groups:{},users:{},spaces:{}},patterns:{channels:{},groups:{},users:{},spaces:{}},meta:{}}};if(r){var u=r.users,c=r.spaces,l=r.channels,f=r.groups;u&&Object.keys(u).forEach((function(e){s.permissions.resources.users[e]=a(u[e])})),c&&Object.keys(c).forEach((function(e){s.permissions.resources.spaces[e]=a(c[e])})),l&&Object.keys(l).forEach((function(e){s.permissions.resources.channels[e]=a(l[e])})),f&&Object.keys(f).forEach((function(e){s.permissions.resources.groups[e]=a(f[e])}))}if(i){var d=i.users,p=i.spaces,h=i.channels,g=i.groups;d&&Object.keys(d).forEach((function(e){s.permissions.patterns.users[e]=a(d[e])})),p&&Object.keys(p).forEach((function(e){s.permissions.patterns.spaces[e]=a(p[e])})),h&&Object.keys(h).forEach((function(e){s.permissions.patterns.channels[e]=a(h[e])})),g&&Object.keys(g).forEach((function(e){s.permissions.patterns.groups[e]=a(g[e])}))}(n||0===n)&&(s.ttl=n);o&&(s.permissions.meta=o);return s}(0,t)},t.handleResponse=function(e,t){return t.data.token};n(2);var i=r(n(1));function a(e){var t=0;return e.create&&(t|=16),e.delete&&(t|=8),e.manage&&(t|=4),e.write&&(t|=2),e.read&&(t|=1),t}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return a.default.PNPublishOperation},t.validateParams=function(e,t){var n=e.config,r=t.message;if(!t.channel)return"Missing Channel";if(!r)return"Missing Message";if(!n.subscribeKey)return"Missing Subscribe Key"},t.usePost=function(e,t){var n=t.sendByPost;return void 0!==n&&n},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.message,a=s(e,i);return"/publish/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(o.default.encodeString(r),"/0/").concat(o.default.encodeString(a))},t.postURL=function(e,t){var n=e.config,r=t.channel;return"/publish/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(o.default.encodeString(r),"/0")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.postPayload=function(e,t){var n=t.message;return s(e,n)},t.prepareParams=function(e,t){var n=t.meta,r=t.replicate,a=void 0===r||r,o=t.storeInHistory,s=t.ttl,u={};null!=o&&(u.store=o?"1":"0");s&&(u.ttl=s);!1===a&&(u.norep="true");n&&"object"===(0,i.default)(n)&&(u.meta=JSON.stringify(n));return u},t.handleResponse=function(e,t){return{timetoken:t[2]}};var i=r(n(7)),a=(n(2),r(n(1))),o=r(n(3));function s(e,t){var n=e.crypto,r=e.config,i=JSON.stringify(t);return r.cipherKey&&(i=n.encrypt(i),i=JSON.stringify(i)),i}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSignalOperation},t.validateParams=function(e,t){var n=e.config,r=t.message;if(!t.channel)return"Missing Channel";if(!r)return"Missing Message";if(!n.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.message,o=(s=i,JSON.stringify(s));var s;return"/signal/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(a.default.encodeString(r),"/0/").concat(a.default.encodeString(o))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return{timetoken:t[2]}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNHistoryOperation},t.validateParams=function(e,t){var n=t.channel,r=e.config;if(!n)return"Missing channel";if(!r.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channel,r=e.config;return"/v2/history/sub-key/".concat(r.subscribeKey,"/channel/").concat(a.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.start,r=t.end,i=t.reverse,a=t.count,o=void 0===a?100:a,s=t.stringifiedTimeToken,u=void 0!==s&&s,c=t.includeMeta,l=void 0!==c&&c,f={include_token:"true"};f.count=o,n&&(f.start=n);r&&(f.end=r);u&&(f.string_message_token="true");null!=i&&(f.reverse=i.toString());l&&(f.include_meta="true");return f},t.handleResponse=function(e,t){var n={messages:[],startTimeToken:t[1],endTimeToken:t[2]};Array.isArray(t[0])&&t[0].forEach((function(t){var r={timetoken:t.timetoken,entry:o(e,t.message)};t.meta&&(r.meta=t.meta),n.messages.push(r)}));return n};n(2);var i=r(n(1)),a=r(n(3));function o(e,t){var n=e.config,r=e.crypto;if(!n.cipherKey)return t;try{return r.decrypt(t)}catch(e){return t}}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteMessagesOperation},t.validateParams=function(e,t){var n=t.channel,r=e.config;if(!n)return"Missing channel";if(!r.subscribeKey)return"Missing Subscribe Key"},t.useDelete=function(){return!0},t.getURL=function(e,t){var n=t.channel,r=e.config;return"/v3/history/sub-key/".concat(r.subscribeKey,"/channel/").concat(a.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.start,r=t.end,i={};n&&(i.start=n);r&&(i.end=r);return i},t.handleResponse=function(e,t){return t.payload};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return a.default.PNMessageCounts},t.validateParams=function(e,t){var n=t.channels,r=t.timetoken,i=t.channelTimetokens,a=e.config;if(!n)return"Missing channel";if(r&&i)return"timetoken and channelTimetokens are incompatible together";if(r&&i&&i.length>1&&n.length!==i.length)return"Length of channelTimetokens and channels do not match";if(!a.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channels,r=e.config,i=n.join(",");return"/v3/history/sub-key/".concat(r.subscribeKey,"/message-counts/").concat(o.default.encodeString(i))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.timetoken,r=t.channelTimetokens,a={};if(r&&1===r.length){var o=(0,i.default)(r,1)[0];a.timetoken=o}else r?a.channelsTimetoken=r.join(","):n&&(a.timetoken=n);return a},t.handleResponse=function(e,t){return{channels:t.channels}};var i=r(n(9)),a=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNFetchMessagesOperation},t.validateParams=function(e,t){var n=t.channels,r=t.includeMessageActions,i=void 0!==r&&r,a=e.config;if(!n||0===n.length)return"Missing channels";if(!a.subscribeKey)return"Missing Subscribe Key";if(i&&n.length>1)throw new TypeError("History can return actions data for a single channel only. Either pass a single channel or disable the includeMessageActions flag.")},t.getURL=function(e,t){var n=t.channels,r=void 0===n?[]:n,i=t.includeMessageActions,o=void 0!==i&&i,s=e.config,u=o?"history-with-actions":"history",c=r.length>0?r.join(","):",";return"/v3/".concat(u,"/sub-key/").concat(s.subscribeKey,"/channel/").concat(a.default.encodeString(c))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels,r=t.start,i=t.end,a=t.includeMessageActions,o=t.count,s=t.stringifiedTimeToken,u=void 0!==s&&s,c=t.includeMeta,l=void 0!==c&&c,f=t.includeUuid,d=t.includeUUID,p=void 0===d||d,h=t.includeMessageType,g=void 0===h||h,v={};v.max=o||(n.length>1||!0===a?25:100);r&&(v.start=r);i&&(v.end=i);u&&(v.string_message_token="true");l&&(v.include_meta="true");p&&!1!==f&&(v.include_uuid="true");g&&(v.include_message_type="true");return v},t.handleResponse=function(e,t){var n={channels:{}};Object.keys(t.channels||{}).forEach((function(r){n.channels[r]=[],(t.channels[r]||[]).forEach((function(t){var i={};i.channel=r,i.timetoken=t.timetoken,i.message=function(e,t){var n=e.config,r=e.crypto;if(!n.cipherKey)return t;try{return r.decrypt(t)}catch(e){return t}}(e,t.message),i.messageType=t.message_type,i.uuid=t.uuid,t.actions&&(i.actions=t.actions,i.data=t.actions),t.meta&&(i.meta=t.meta),n.channels[r].push(i)}))})),t.more&&(n.more=t.more);return n};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSubscribeOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=i.length>0?i.join(","):",";return"/v2/subscribe/".concat(n.subscribeKey,"/").concat(a.default.encodeString(o),"/0")},t.getRequestTimeout=function(e){return e.config.getSubscribeTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=e.config,r=t.state,i=t.channelGroups,a=void 0===i?[]:i,o=t.timetoken,s=t.filterExpression,u=t.region,c={heartbeat:n.getPresenceTimeout()};a.length>0&&(c["channel-group"]=a.join(","));s&&s.length>0&&(c["filter-expr"]=s);Object.keys(r).length&&(c.state=JSON.stringify(r));o&&(c.tt=o);u&&(c.tr=u);return c},t.handleResponse=function(e,t){var n=[];t.m.forEach((function(e){var t={publishTimetoken:e.p.t,region:e.p.r},r={shard:parseInt(e.a,10),subscriptionMatch:e.b,channel:e.c,messageType:e.e,payload:e.d,flags:e.f,issuingClientId:e.i,subscribeKey:e.k,originationTimetoken:e.o,userMetadata:e.u,publishMetaData:t};n.push(r)}));var r={timetoken:t.t.t,region:t.t.r};return{messages:n,metadata:r}};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),s=(r(n(8)),r(n(10))),u=(n(2),function(){function e(t){var n=this;(0,i.default)(this,e),(0,o.default)(this,"_modules",void 0),(0,o.default)(this,"_config",void 0),(0,o.default)(this,"_maxSubDomain",void 0),(0,o.default)(this,"_currentSubDomain",void 0),(0,o.default)(this,"_standardOrigin",void 0),(0,o.default)(this,"_subscribeOrigin",void 0),(0,o.default)(this,"_providedFQDN",void 0),(0,o.default)(this,"_requestTimeout",void 0),(0,o.default)(this,"_coreParams",void 0),this._modules={},Object.keys(t).forEach((function(e){n._modules[e]=t[e].bind(n)}))}return(0,a.default)(e,[{key:"init",value:function(e){this._config=e,this._maxSubDomain=20,this._currentSubDomain=Math.floor(Math.random()*this._maxSubDomain),this._providedFQDN=(this._config.secure?"https://":"http://")+this._config.origin,this._coreParams={},this.shiftStandardOrigin()}},{key:"nextOrigin",value:function(){return this._providedFQDN.match(/ps\.pndsn\.com$/i)?(this._currentSubDomain+=1,this._currentSubDomain>=this._maxSubDomain&&(this._currentSubDomain=1),e=this._currentSubDomain.toString(),this._providedFQDN.replace("ps.pndsn.com","ps".concat(e,".pndsn.com"))):this._providedFQDN;var e}},{key:"hasModule",value:function(e){return e in this._modules}},{key:"shiftStandardOrigin",value:function(){return this._standardOrigin=this.nextOrigin(),this._standardOrigin}},{key:"getStandardOrigin",value:function(){return this._standardOrigin}},{key:"POSTFILE",value:function(e,t,n){return this._modules.postfile(e,t,n)}},{key:"GETFILE",value:function(e,t,n){return this._modules.getfile(e,t,n)}},{key:"POST",value:function(e,t,n,r){return this._modules.post(e,t,n,r)}},{key:"PATCH",value:function(e,t,n,r){return this._modules.patch(e,t,n,r)}},{key:"GET",value:function(e,t,n){return this._modules.get(e,t,n)}},{key:"DELETE",value:function(e,t,n){return this._modules.del(e,t,n)}},{key:"_detectErrorCategory",value:function(e){if("ENOTFOUND"===e.code)return s.default.PNNetworkIssuesCategory;if("ECONNREFUSED"===e.code)return s.default.PNNetworkIssuesCategory;if("ECONNRESET"===e.code)return s.default.PNNetworkIssuesCategory;if("EAI_AGAIN"===e.code)return s.default.PNNetworkIssuesCategory;if(0===e.status||e.hasOwnProperty("status")&&void 0===e.status)return s.default.PNNetworkIssuesCategory;if(e.timeout)return s.default.PNTimeoutCategory;if("ETIMEDOUT"===e.code)return s.default.PNNetworkIssuesCategory;if(e.response){if(e.response.badRequest)return s.default.PNBadRequestCategory;if(e.response.forbidden)return s.default.PNAccessDeniedCategory}return s.default.PNUnknownCategory}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),s=function(){function e(){(0,i.default)(this,e),(0,o.default)(this,"storage",void 0),this.storage={}}return(0,a.default)(e,[{key:"get",value:function(e){return this.storage[e]}},{key:"set",value:function(e,t){this.storage[e]=t}}]),e}();t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),a=r(n(5)),o=r(n(6)),s=r(n(4)),u=function(){function e(t,n){(0,a.default)(this,e),(0,s.default)(this,"_base64ToBinary",void 0),(0,s.default)(this,"_cborReader",void 0),this._base64ToBinary=n,this._decode=t}return(0,o.default)(e,[{key:"decodeToken",value:function(e){var t="";e.length%4==3?t="=":e.length%4==2&&(t="==");var n=e.replace(/-/gi,"+").replace(/_/gi,"/")+t,r=this._decode(this._base64ToBinary(n));if("object"===(0,i.default)(r))return r}}]),e}();t.default=u,e.exports=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.get=function(e,t,n){var r=i(),a=this.getStandardOrigin()+t.url;return o.call(this,r,"GET",a,e,{},t,n)},t.post=function(e,t,n,r){var a=i(),s=this.getStandardOrigin()+n.url;return o.call(this,a,"POST",s,e,JSON.parse(t),n,r)},t.patch=function(e,t,n,r){var a=i(),s=this.getStandardOrigin()+n.url;return o.call(this,a,"PATCH",s,e,JSON.parse(t),n,r)},t.del=function(e,t,n){var r=i(),a=this.getStandardOrigin()+t.url;return o.call(this,r,"DELETE",a,e,{},t,n)};n(2);var r=n(118);function i(){return"mobileweb"===Ti.Platform.osname?new XMLHttpRequest:Ti.Network.createHTTPClient()}function a(e){"mobileweb"!==Ti.Platform.osname&&this._config.keepAlive&&(e.enableKeepAlive=!0)}function o(e,t,n,i,o,s,u){var c=this,l={};l.operation=s.operation,e.open(t,(0,r.buildUrl)(n,i),!0),a.call(this,e),e.onload=function(){l.error=!1,e.status&&(l.statusCode=e.status);var t=JSON.parse(e.responseText);return c._config.logVerbosity&&function(e,t,n){var r=(new Date).getTime(),i=(new Date).toISOString(),a=Ti&&Ti.API&&Ti.API.log?Ti.API:console;a.log("<<<<<"),a.log("[".concat(i,"]"),"\n",e,"\n",t),a.log("-----");var o=(new Date).getTime()-r,s=(new Date).toISOString();a.log(">>>>>>"),a.log("[".concat(s," / ").concat(o,"]"),"\n",e,"\n",t,"\n",n),a.log("-----")}(n,i,e.responseText),u(l,t)},e.onerror=function(e){return l.error=!0,l.errorData=e.error,l.category=c._detectErrorCategory(e.error),u(l,null)},e.timeout="android"===Ti.Platform.osname?2147483647:1/0,e.send(o)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.encodedKeyValuePair=a,t.buildUrl=function(e,t){var n=[];return Object.keys(t).forEach((function(e){a(n,e,t[e])})),"".concat(e,"?").concat(n.join("&"))};var i=r(n(7));function a(e,t,n){null!=n?Array.isArray(n)?n.forEach((function(n){a(e,t,n)})):"object"===(0,i.default)(n)?Object.keys(n).forEach((function(r){a(e,"".concat(t,"[").concat(r,"]"),n[r])})):e.push("".concat(encodeURIComponent(t),"=").concat(encodeURIComponent(n))):null===n&&e.push(encodeURIComponent("".concat(encodeURIComponent(t))))}}]),module.exports=exports.PubNub; \ No newline at end of file +/*! 5.0.0 / Consumer */ +exports.PubNub=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=23)}([function(e,t){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={PNTimeOperation:"PNTimeOperation",PNHistoryOperation:"PNHistoryOperation",PNDeleteMessagesOperation:"PNDeleteMessagesOperation",PNFetchMessagesOperation:"PNFetchMessagesOperation",PNMessageCounts:"PNMessageCountsOperation",PNSubscribeOperation:"PNSubscribeOperation",PNUnsubscribeOperation:"PNUnsubscribeOperation",PNPublishOperation:"PNPublishOperation",PNSignalOperation:"PNSignalOperation",PNAddMessageActionOperation:"PNAddActionOperation",PNRemoveMessageActionOperation:"PNRemoveMessageActionOperation",PNGetMessageActionsOperation:"PNGetMessageActionsOperation",PNCreateUserOperation:"PNCreateUserOperation",PNUpdateUserOperation:"PNUpdateUserOperation",PNDeleteUserOperation:"PNDeleteUserOperation",PNGetUserOperation:"PNGetUsersOperation",PNGetUsersOperation:"PNGetUsersOperation",PNCreateSpaceOperation:"PNCreateSpaceOperation",PNUpdateSpaceOperation:"PNUpdateSpaceOperation",PNDeleteSpaceOperation:"PNDeleteSpaceOperation",PNGetSpaceOperation:"PNGetSpacesOperation",PNGetSpacesOperation:"PNGetSpacesOperation",PNGetMembersOperation:"PNGetMembersOperation",PNUpdateMembersOperation:"PNUpdateMembersOperation",PNGetMembershipsOperation:"PNGetMembershipsOperation",PNUpdateMembershipsOperation:"PNUpdateMembershipsOperation",PNListFilesOperation:"PNListFilesOperation",PNGenerateUploadUrlOperation:"PNGenerateUploadUrlOperation",PNPublishFileOperation:"PNPublishFileOperation",PNGetFileUrlOperation:"PNGetFileUrlOperation",PNDownloadFileOperation:"PNDownloadFileOperation",PNGetAllUUIDMetadataOperation:"PNGetAllUUIDMetadataOperation",PNGetUUIDMetadataOperation:"PNGetUUIDMetadataOperation",PNSetUUIDMetadataOperation:"PNSetUUIDMetadataOperation",PNRemoveUUIDMetadataOperation:"PNRemoveUUIDMetadataOperation",PNGetAllChannelMetadataOperation:"PNGetAllChannelMetadataOperation",PNGetChannelMetadataOperation:"PNGetChannelMetadataOperation",PNSetChannelMetadataOperation:"PNSetChannelMetadataOperation",PNRemoveChannelMetadataOperation:"PNRemoveChannelMetadataOperation",PNSetMembersOperation:"PNSetMembersOperation",PNSetMembershipsOperation:"PNSetMembershipsOperation",PNPushNotificationEnabledChannelsOperation:"PNPushNotificationEnabledChannelsOperation",PNRemoveAllPushNotificationsOperation:"PNRemoveAllPushNotificationsOperation",PNWhereNowOperation:"PNWhereNowOperation",PNSetStateOperation:"PNSetStateOperation",PNHereNowOperation:"PNHereNowOperation",PNGetStateOperation:"PNGetStateOperation",PNHeartbeatOperation:"PNHeartbeatOperation",PNChannelGroupsOperation:"PNChannelGroupsOperation",PNRemoveGroupOperation:"PNRemoveGroupOperation",PNChannelsForGroupOperation:"PNChannelsForGroupOperation",PNAddChannelsToGroupOperation:"PNAddChannelsToGroupOperation",PNRemoveChannelsFromGroupOperation:"PNRemoveChannelsFromGroupOperation",PNAccessManagerGrant:"PNAccessManagerGrant",PNAccessManagerGrantToken:"PNAccessManagerGrantToken",PNAccessManagerAudit:"PNAccessManagerAudit",PNAccessManagerRevokeToken:"PNAccessManagerRevokeToken"},e.exports=t.default},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";function r(e){return encodeURIComponent(e).replace(/[!~*'()]/g,(function(e){return"%".concat(e.charCodeAt(0).toString(16).toUpperCase())}))}function i(e){return function(e){var t=[];return Object.keys(e).forEach((function(e){return t.push(e)})),t}(e).sort()}var a="The Objects v1 API has been deprecated.\nYou can learn more about Objects v2 API at https://www.pubnub.com/docs/web-javascript/api-reference-objects.\nIf you have questions about the Objects v2 API or require additional help with migrating to the new data model, please contact PubNub Support at support@pubnub.com.";e.exports={signPamFromParams:function(e){return i(e).map((function(t){return"".concat(t,"=").concat(r(e[t]))})).join("&")},endsWith:function(e,t){return-1!==e.indexOf(t,this.length-t.length)},createPromise:function(){var e,t;return{promise:new Promise((function(n,r){e=n,t=r})),reject:t,fulfill:e}},encodeString:r,deprecated:function(e){return function(){var t,n;"undefined"!=typeof process&&("test"!==(null===(t=process)||void 0===t||null===(n=t.env)||void 0===n?void 0:"production")&&console.warn(a));return e.apply(void 0,arguments)}}}},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){function n(e,t){for(var n=0;n=20?this._presenceTimeout=e:(this._presenceTimeout=20,console.log("WARNING: Presence timeout is less than the minimum. Using minimum value: ",this._presenceTimeout)),this.setHeartbeatInterval(this._presenceTimeout/2-1),this}},{key:"setProxy",value:function(e){this.proxy=e}},{key:"getHeartbeatInterval",value:function(){return this._heartbeatInterval}},{key:"setHeartbeatInterval",value:function(e){return this._heartbeatInterval=e,this}},{key:"getSubscribeTimeout",value:function(){return this._subscribeRequestTimeout}},{key:"setSubscribeTimeout",value:function(e){return this._subscribeRequestTimeout=e,this}},{key:"getTransactionTimeout",value:function(){return this._transactionalRequestTimeout}},{key:"setTransactionTimeout",value:function(e){return this._transactionalRequestTimeout=e,this}},{key:"isSendBeaconEnabled",value:function(){return this._useSendBeacon}},{key:"setSendBeaconConfig",value:function(e){return this._useSendBeacon=e,this}},{key:"getVersion",value:function(){return"5.0.0"}},{key:"_addPnsdkSuffix",value:function(e,t){this._PNSDKSuffix[e]=t}},{key:"_getPnsdkSuffix",value:function(e){var t=this;return Object.keys(this._PNSDKSuffix).reduce((function(n,r){return n+e+t._PNSDKSuffix[r]}),"")}}]),e}());t.default=s,e.exports=t.default},function(e,t,n){var r=n(69),i=n(70),a=n(71),o=n(73);e.exports=function(e,t){return r(e)||i(e,t)||a(e,t)||o()},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={PNNetworkUpCategory:"PNNetworkUpCategory",PNNetworkDownCategory:"PNNetworkDownCategory",PNNetworkIssuesCategory:"PNNetworkIssuesCategory",PNTimeoutCategory:"PNTimeoutCategory",PNBadRequestCategory:"PNBadRequestCategory",PNAccessDeniedCategory:"PNAccessDeniedCategory",PNUnknownCategory:"PNUnknownCategory",PNReconnectedCategory:"PNReconnectedCategory",PNConnectedCategory:"PNConnectedCategory",PNRequestMessageCountExceededCategory:"PNRequestMessageCountExceededCategory"},e.exports=t.default},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},e.exports.default=e.exports,e.exports.__esModule=!0,n(t)}e.exports=n,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(13);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},e.exports.default=e.exports,e.exports.__esModule=!0,n(t,r)}e.exports=n,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(7).default,i=n(17);e.exports=function(e,t){if(t&&("object"===r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return i(e)},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(26)),a={createUUID:function(){return i.default.uuid?i.default.uuid():(0,i.default)()}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.PubNubError=void 0,t.createValidationError=b,t.default=function(e,t){var n=e.networking,r=e.config,i=e.telemetryManager,a=e.tokenManager,o=l.default.createUUID(),u=null,s=null,c={};t.getOperation()===d.default.PNTimeOperation||t.getOperation()===d.default.PNChannelGroupsOperation?u=arguments.length<=2?void 0:arguments[2]:(c=arguments.length<=2?void 0:arguments[2],u=arguments.length<=3?void 0:arguments[3]);"undefined"==typeof Promise||u||(s=f.default.createPromise());var h=t.validateParams(e,c);if(h)return u?u(b(h)):s?(s.reject(new y("Validation failed, check status for details",b(h))),s.promise):void 0;var v,k=t.prepareParams(e,c),S=m(t,e,c),M={url:S,operation:t.getOperation(),timeout:t.getRequestTimeout(e),headers:t.getRequestHeaders?t.getRequestHeaders():{},ignoreBody:"function"==typeof t.ignoreBody&&t.ignoreBody(e),forceBuffered:"function"==typeof t.forceBuffered?t.forceBuffered(e,c):null};k.uuid=r.UUID,k.pnsdk=_(r);var T=i.operationsLatencyForRequest();Object.keys(T).length&&(k=g(g({},k),T));r.useInstanceId&&(k.instanceid=r.instanceId);r.useRequestId&&(k.requestid=o);if(t.isAuthSupported()){var x=a.getToken()||r.getAuthKey();x&&(k.auth=x)}r.secretKey&&O(e,S,k,c,t);var w=function(n,r){var a;if(n.error)return t.handleError&&t.handleError(e,c,n),void(u?u(n):s&&s.reject(new y("PubNub call failed, check status for details",n)));i.stopLatencyMeasure(t.getOperation(),o);var l=t.handleResponse(e,r,c);"function"!=typeof(null===(a=l)||void 0===a?void 0:a.then)&&(l=Promise.resolve(l)),l.then((function(e){u?u(n,e):s&&s.fulfill(e)})).catch((function(e){if(u){var n=e;t.getOperation()===d.default.PNSubscribeOperation&&(n={statusCode:400,error:!0,operation:t.getOperation(),errorData:e,category:p.default.PNUnknownCategory}),u(n,null)}else s&&s.reject(new y("PubNub call failed, check status for details",e))}))};if(i.startLatencyMeasure(t.getOperation(),o),"POST"===P(e,t,c)){var N=t.postPayload(e,c);v=n.POST(k,N,M,w)}else if("PATCH"===P(e,t,c)){var j=t.patchPayload(e,c);v=n.PATCH(k,j,M,w)}else v="DELETE"===P(e,t,c)?n.DELETE(k,M,w):"GETFILE"===P(e,t,c)?n.GETFILE(k,M,w):n.GET(k,M,w);if(t.getOperation()===d.default.PNSubscribeOperation)return v;if(s)return s.promise},t.generatePNSDK=_,t.signRequest=O;var i=r(n(4)),a=r(n(5)),o=r(n(12)),u=r(n(14)),s=r(n(11)),c=r(n(36)),l=r(n(15)),f=(n(2),r(n(3))),d=(r(n(8)),r(n(1))),p=r(n(10));function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function g(e){for(var t=1;t0&&(t+=n),t}function P(e,t,n){return t.usePost&&t.usePost(e,n)?"POST":t.usePatch&&t.usePatch(e,n)?"PATCH":t.useDelete&&t.useDelete(e,n)?"DELETE":t.useGetFile&&t.useGetFile(e,n)?"GETFILE":"GET"}function O(e,t,n,r,i){var a=e.config,o=e.crypto,u=P(e,i,r);n.timestamp=Math.floor((new Date).getTime()/1e3),"PNPublishOperation"===i.getOperation()&&i.usePost&&i.usePost(e,r)&&(u="GET"),"GETFILE"===u&&(u="GET");var s="".concat(u,"\n").concat(a.publishKey,"\n").concat(t,"\n").concat(f.default.signPamFromParams(n),"\n");if("POST"===u){var c=i.postPayload(e,r);s+="string"==typeof c?c:JSON.stringify(c)}else if("PATCH"===u){var l=i.patchPayload(e,r);s+="string"==typeof l?l:JSON.stringify(l)}var d="v2.".concat(o.HMACSHA256(s));d=(d=(d=d.replace(/\+/g,"-")).replace(/\//g,"_")).replace(/=+$/,""),n.signature=d}t.PubNubError=y},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),u=(r(n(8)),r(n(27)));function s(e){var t,n=[];for(t=0;t>10,n=1023&e,r=32768&e;if(31===t)return 0===n?r?-1/0:1/0:NaN;var i=t?Math.pow(2,t-25)*(1024+n):Math.pow(2,-24)*n;return r?-i:i},readFloat32:function(){var e=this.readUint32(),t=(2147483647&e)>>23,n=8388607&e,r=2147483648&e;if(255===t)return 0===n?r?-1/0:1/0:NaN;var i=t?Math.pow(2,t-23-127)*(8388608+n):Math.pow(2,-149)*n;return r?-i:i},readFloat64:function(){var e=this.readUint32(),t=e>>20&2047,n=4294967296*(1048575&e)+this.readUint32(),r=2147483648&e;if(2047===t)return 0===n?r?-1/0:1/0:NaN;var i=t?Math.pow(2,t-52-1023)*(4503599627370496+n):Math.pow(2,-1074)*n;return r?-i:i},readUint16:function(){return 256*this.readByte()+this.readByte()},readUint32:function(){return 65536*this.readUint16()+this.readUint16()},readUint64:function(){return 4294967296*this.readUint32()+this.readUint32()}},a.prototype={writeByte:r("writeByte"),result:r("result"),writeFloat16:r("writeFloat16"),writeFloat32:r("writeFloat32"),writeFloat64:r("writeFloat64"),writeUint16:function(e){this.writeByte(e>>8&255),this.writeByte(255&e)},writeUint32:function(e){this.writeUint16(e>>16&65535),this.writeUint16(65535&e)},writeUint64:function(e){if(e>=9007199254740992||e<=-9007199254740992)throw new Error("Cannot encode Uint64 of: "+e+" magnitude to big (floating point errors)");this.writeUint32(Math.floor(e/4294967296)),this.writeUint32(e%4294967296)},writeString:r("writeString"),canWriteBinary:function(e){return!1},writeBinary:r("writeChunk")};var s=new Error;function c(e){var t=function(e){var t=e.readByte();return{type:t>>5,value:31&t}}(e);switch(t.type){case 0:return o(t,e);case 1:return-1-o(t,e);case 2:return e.readChunk(o(t,e));case 3:return e.readChunk(o(t,e)).toString("utf-8");case 4:case 5:var r=o(t,e),i=[];if(null!==r){5===t.type&&(r*=2);for(var a=0;a-9007199254740992?e<0?u(1,-1-e,n):u(0,e,n):(function(e,t,n){n.writeByte(e<<5|t)}(7,27,n),n.writeFloat64(e));else if("string"==typeof e)n.writeString(e,(function(e){u(3,e,n)}));else if(n.canWriteBinary(e))n.writeBinary(e,(function(e){u(2,e,n)}));else{if("object"!=typeof e)throw new Error("CBOR encoding not supported: "+e);if(p.config.useToJSON&&"function"==typeof e.toJSON&&(e=e.toJSON()),Array.isArray(e))for(u(4,e.length,n),r=0;r=this.latestBuffer.length&&(this.completeBuffers.push(this.latestBuffer),this.latestBuffer=Buffer.alloc(this.defaultBufferLength),this.latestBufferOffset=0),this.byteLength++},g.prototype.writeFloat32=function(e){var t=Buffer.alloc(4);t.writeFloatBE(e,0),this.writeBuffer(t)},g.prototype.writeFloat64=function(e){var t=Buffer.alloc(8);t.writeDoubleBE(e,0),this.writeBuffer(t)},g.prototype.writeString=function(e,t){var n=Buffer.from(e,"utf-8");t(n.length),this.writeBuffer(n)},g.prototype.canWriteBinary=function(e){return e instanceof Buffer},g.prototype.writeBinary=function(e,t){t(e.length),this.writeBuffer(e)},g.prototype.writeBuffer=function(e){if(!(e instanceof Buffer))throw new TypeError("BufferWriter only accepts Buffers");this.latestBufferOffset?this.latestBuffer.length-this.latestBufferOffset>=e.length?(e.copy(this.latestBuffer,this.latestBufferOffset),this.latestBufferOffset+=e.length,this.latestBufferOffset>=this.latestBuffer.length&&(this.completeBuffers.push(this.latestBuffer),this.latestBuffer=Buffer.alloc(this.defaultBufferLength),this.latestBufferOffset=0)):(this.completeBuffers.push(this.latestBuffer.slice(0,this.latestBufferOffset)),this.completeBuffers.push(e),this.latestBuffer=Buffer.alloc(this.defaultBufferLength),this.latestBufferOffset=0):this.completeBuffers.push(e),this.byteLength+=e.length},g.prototype.result=function(){for(var e=Buffer.alloc(this.byteLength),t=0,n=0;n255)throw new Error("Byte value out of range: "+e);var t=e.toString(16);1==t.length&&(t="0"+t),this.$hex+=t},y.prototype.canWriteBinary=function(t){return t instanceof e||"function"==typeof Buffer&&t instanceof Buffer},y.prototype.writeBinary=function(t,n){if(t instanceof e)n(t.length()),this.$hex+=t.$hex;else{if(!("function"==typeof Buffer&&t instanceof Buffer))throw new TypeError("HexWriter only accepts BinaryHex or Buffers");n(t.length),this.$hex+=t.toString("hex")}},y.prototype.result=function(){return"buffer"===this.finalFormat&&"function"==typeof Buffer?Buffer.from(this.$hex,"hex"):new e(this.$hex).toString(this.finalFormat)},y.prototype.writeString=function(t,n){var r=e.fromUtf8String(t);n(r.length()),this.$hex+=r.$hex},p.addReader((function(t,n){return t instanceof e||t.$hex?new v(t.$hex):"hex"===n?new v(t):void 0})),p.addWriter((function(e){if("hex"===e)return new y})),p}();return e.addSemanticEncode(0,(function(e){if(e instanceof Date)return e.toISOString()})).addSemanticDecode(0,(function(e){return new Date(e)})).addSemanticDecode(1,(function(e){return new Date(e)})),e})?r.apply(t,i):r)||(e.exports=a)},function(e,t,n){"use strict";var r=n(0),i=n(7);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var a=r(n(5)),o=r(n(6)),u=r(n(4)),s=r(n(8)),c=r(n(18)),l=r(n(28)),f=r(n(31)),d=r(n(32)),p=r(n(19)),h=r(n(35)),g=r(n(16)),v=n(3),y=Ee(n(40)),b=Ee(n(41)),m=Ee(n(42)),_=Ee(n(43)),P=Ee(n(44)),O=Ee(n(45)),k=Ee(n(46)),S=Ee(n(47)),M=Ee(n(48)),T=Ee(n(49)),x=Ee(n(50)),w=Ee(n(51)),N=Ee(n(52)),j=Ee(n(53)),U=Ee(n(54)),C=Ee(n(55)),R=Ee(n(56)),E=Ee(n(57)),A=(n(58),Ee(n(59)),r(n(60))),K=r(n(61)),F=r(n(62)),I=r(n(63)),B=r(n(65)),D=r(n(66)),G=r(n(67)),L=r(n(68)),q=r(n(74)),H=r(n(75)),z=r(n(76)),V=r(n(77)),W=r(n(78)),$=r(n(79)),J=r(n(80)),X=r(n(81)),Y=r(n(82)),Q=r(n(83)),Z=r(n(84)),ee=Ee(n(85)),te=Ee(n(86)),ne=Ee(n(87)),re=Ee(n(88)),ie=Ee(n(89)),ae=Ee(n(90)),oe=Ee(n(91)),ue=Ee(n(92)),se=Ee(n(93)),ce=Ee(n(94)),le=Ee(n(95)),fe=Ee(n(96)),de=Ee(n(97)),pe=Ee(n(98)),he=Ee(n(99)),ge=Ee(n(100)),ve=Ee(n(101)),ye=Ee(n(102)),be=Ee(n(103)),me=Ee(n(104)),_e=Ee(n(105)),Pe=r(n(106)),Oe=Ee(n(107)),ke=Ee(n(108)),Se=Ee(n(109)),Me=Ee(n(110)),Te=Ee(n(111)),xe=Ee(n(112)),we=Ee(n(20)),Ne=Ee(n(113)),je=r(n(1)),Ue=r(n(10)),Ce=(n(2),r(n(15)));function Re(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(Re=function(e){return e?n:t})(e)}function Ee(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==i(e)&&"function"!=typeof e)return{default:e};var n=Re(t);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var u=a?Object.getOwnPropertyDescriptor(e,o):null;u&&(u.get||u.set)?Object.defineProperty(r,o,u):r[o]=e[o]}return r.default=e,n&&n.set(e,r),r}function Ae(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ke(e){for(var t=1;t1?t-1:0),i=1;i1?t-1:0),i=1;i1?t-1:0),i=1;i1?t-1:0),i=1;i>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=a.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new o.init(n,t/2)}},c=u.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new o.init(n,t)}},l=u.Utf8={stringify:function(e){try{return decodeURIComponent(escape(c.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return c.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=a.extend({reset:function(){this._data=new o.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=l.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,i=n.sigBytes,a=this.blockSize,u=i/(4*a);if(t=(u=t?e.ceil(u):e.max((0|u)-this._minBufferSize,0))*a,i=e.min(4*t,i),t){for(var s=0;sl;){var f;e:{f=c;for(var d=e.sqrt(f),p=2;p<=d;p++)if(!(f%p)){f=!1;break e}f=!0}f&&(8>l&&(a[l]=u(e.pow(c,.5))),o[l]=u(e.pow(c,1/3)),l++),c++}var h=[];i=i.SHA256=r.extend({_doReset:function(){this._hash=new n.init(a.slice(0))},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],a=n[2],u=n[3],s=n[4],c=n[5],l=n[6],f=n[7],d=0;64>d;d++){if(16>d)h[d]=0|e[t+d];else{var p=h[d-15],g=h[d-2];h[d]=((p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3)+h[d-7]+((g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10)+h[d-16]}p=f+((s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25))+(s&c^~s&l)+o[d]+h[d],g=((r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22))+(r&i^r&a^i&a),f=l,l=c,c=s,s=u+p|0,u=a,a=i,i=r,r=p+g|0}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+a|0,n[3]=n[3]+u|0,n[4]=n[4]+s|0,n[5]=n[5]+c|0,n[6]=n[6]+l|0,n[7]=n[7]+f|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return n[i>>>5]|=128<<24-i%32,n[14+(i+64>>>9<<4)]=e.floor(r/4294967296),n[15+(i+64>>>9<<4)]=r,t.sigBytes=4*n.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA256=r._createHelper(i),t.HmacSHA256=r._createHmacHelper(i)}(Math),i=(r=s).enc.Utf8,r.algo.HMAC=r.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=i.parse(t));var n=e.blockSize,r=4*n;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),o=this._iKey=t.clone(),u=a.words,s=o.words,c=0;c>>2]>>>24-i%4*8&255)<<16|(t[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|t[i+2>>>2]>>>24-(i+2)%4*8&255,o=0;4>o&&i+.75*o>>6*(3-o)&63));if(t=r.charAt(64))for(;e.length%4;)e.push(t);return e.join("")},parse:function(e){var t=e.length,n=this._map;(r=n.charAt(64))&&-1!=(r=e.indexOf(r))&&(t=r);for(var r=[],i=0,a=0;a>>6-a%4*2;r[i>>>2]|=(u|s)<<24-i%4*8,i++}return o.create(r,i)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(e){function t(e,t,n,r,i,a,o){return((e=e+(t&n|~t&r)+i+o)<>>32-a)+t}function n(e,t,n,r,i,a,o){return((e=e+(t&r|n&~r)+i+o)<>>32-a)+t}function r(e,t,n,r,i,a,o){return((e=e+(t^n^r)+i+o)<>>32-a)+t}function i(e,t,n,r,i,a,o){return((e=e+(n^(t|~r))+i+o)<>>32-a)+t}for(var a=s,o=(c=a.lib).WordArray,u=c.Hasher,c=a.algo,l=[],f=0;64>f;f++)l[f]=4294967296*e.abs(e.sin(f+1))|0;c=c.MD5=u.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,a){for(var o=0;16>o;o++){var u=e[s=a+o];e[s]=16711935&(u<<8|u>>>24)|4278255360&(u<<24|u>>>8)}o=this._hash.words;var s=e[a+0],c=(u=e[a+1],e[a+2]),f=e[a+3],d=e[a+4],p=e[a+5],h=e[a+6],g=e[a+7],v=e[a+8],y=e[a+9],b=e[a+10],m=e[a+11],_=e[a+12],P=e[a+13],O=e[a+14],k=e[a+15],S=t(S=o[0],x=o[1],T=o[2],M=o[3],s,7,l[0]),M=t(M,S,x,T,u,12,l[1]),T=t(T,M,S,x,c,17,l[2]),x=t(x,T,M,S,f,22,l[3]);S=t(S,x,T,M,d,7,l[4]),M=t(M,S,x,T,p,12,l[5]),T=t(T,M,S,x,h,17,l[6]),x=t(x,T,M,S,g,22,l[7]),S=t(S,x,T,M,v,7,l[8]),M=t(M,S,x,T,y,12,l[9]),T=t(T,M,S,x,b,17,l[10]),x=t(x,T,M,S,m,22,l[11]),S=t(S,x,T,M,_,7,l[12]),M=t(M,S,x,T,P,12,l[13]),T=t(T,M,S,x,O,17,l[14]),S=n(S,x=t(x,T,M,S,k,22,l[15]),T,M,u,5,l[16]),M=n(M,S,x,T,h,9,l[17]),T=n(T,M,S,x,m,14,l[18]),x=n(x,T,M,S,s,20,l[19]),S=n(S,x,T,M,p,5,l[20]),M=n(M,S,x,T,b,9,l[21]),T=n(T,M,S,x,k,14,l[22]),x=n(x,T,M,S,d,20,l[23]),S=n(S,x,T,M,y,5,l[24]),M=n(M,S,x,T,O,9,l[25]),T=n(T,M,S,x,f,14,l[26]),x=n(x,T,M,S,v,20,l[27]),S=n(S,x,T,M,P,5,l[28]),M=n(M,S,x,T,c,9,l[29]),T=n(T,M,S,x,g,14,l[30]),S=r(S,x=n(x,T,M,S,_,20,l[31]),T,M,p,4,l[32]),M=r(M,S,x,T,v,11,l[33]),T=r(T,M,S,x,m,16,l[34]),x=r(x,T,M,S,O,23,l[35]),S=r(S,x,T,M,u,4,l[36]),M=r(M,S,x,T,d,11,l[37]),T=r(T,M,S,x,g,16,l[38]),x=r(x,T,M,S,b,23,l[39]),S=r(S,x,T,M,P,4,l[40]),M=r(M,S,x,T,s,11,l[41]),T=r(T,M,S,x,f,16,l[42]),x=r(x,T,M,S,h,23,l[43]),S=r(S,x,T,M,y,4,l[44]),M=r(M,S,x,T,_,11,l[45]),T=r(T,M,S,x,k,16,l[46]),S=i(S,x=r(x,T,M,S,c,23,l[47]),T,M,s,6,l[48]),M=i(M,S,x,T,g,10,l[49]),T=i(T,M,S,x,O,15,l[50]),x=i(x,T,M,S,p,21,l[51]),S=i(S,x,T,M,_,6,l[52]),M=i(M,S,x,T,f,10,l[53]),T=i(T,M,S,x,b,15,l[54]),x=i(x,T,M,S,u,21,l[55]),S=i(S,x,T,M,v,6,l[56]),M=i(M,S,x,T,k,10,l[57]),T=i(T,M,S,x,h,15,l[58]),x=i(x,T,M,S,P,21,l[59]),S=i(S,x,T,M,d,6,l[60]),M=i(M,S,x,T,m,10,l[61]),T=i(T,M,S,x,c,15,l[62]),x=i(x,T,M,S,y,21,l[63]);o[0]=o[0]+S|0,o[1]=o[1]+x|0,o[2]=o[2]+T|0,o[3]=o[3]+M|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;n[i>>>5]|=128<<24-i%32;var a=e.floor(r/4294967296);for(n[15+(i+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),n[14+(i+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(n.length+1),this._process(),n=(t=this._hash).words,r=0;4>r;r++)i=n[r],n[r]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8);return t},clone:function(){var e=u.clone.call(this);return e._hash=this._hash.clone(),e}}),a.MD5=u._createHelper(c),a.HmacMD5=u._createHmacHelper(c)}(Math),function(){var e,t=s,n=(e=t.lib).Base,r=e.WordArray,i=(e=t.algo).EvpKDF=n.extend({cfg:n.extend({keySize:4,hasher:e.MD5,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=(u=this.cfg).hasher.create(),i=r.create(),a=i.words,o=u.keySize,u=u.iterations;a.length>>2]}},t.BlockCipher=u.extend({cfg:u.cfg.extend({mode:c,padding:f}),reset:function(){u.reset.call(this);var e=(t=this.cfg).iv,t=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=t.createEncryptor;else n=t.createDecryptor,this._minBufferSize=1;this._mode=n.call(t,this,e&&e.words)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);var t=this._process(!0)}else t=this._process(!0),e.unpad(t);return t},blockSize:4});var d=t.CipherParams=n.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),p=(c=(h.format={}).OpenSSL={stringify:function(e){var t=e.ciphertext;return((e=e.salt)?r.create([1398893684,1701076831]).concat(e).concat(t):t).toString(a)},parse:function(e){var t=(e=a.parse(e)).words;if(1398893684==t[0]&&1701076831==t[1]){var n=r.create(t.slice(2,4));t.splice(0,4),e.sigBytes-=16}return d.create({ciphertext:e,salt:n})}},t.SerializableCipher=n.extend({cfg:n.extend({format:c}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r);return t=i.finalize(t),i=i.cfg,d.create({ciphertext:t,key:n,iv:i.iv,algorithm:e,mode:i.mode,padding:i.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}})),h=(h.kdf={}).OpenSSL={execute:function(e,t,n,i){return i||(i=r.random(8)),e=o.create({keySize:t+n}).compute(e,i),n=r.create(e.words.slice(t),4*n),e.sigBytes=4*t,d.create({key:e,iv:n,salt:i})}},g=t.PasswordBasedCipher=p.extend({cfg:p.cfg.extend({kdf:h}),encrypt:function(e,t,n,r){return n=(r=this.cfg.extend(r)).kdf.execute(n,e.keySize,e.ivSize),r.iv=n.iv,(e=p.encrypt.call(this,e,t,n.key,r)).mixIn(n),e},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),n=r.kdf.execute(n,e.keySize,e.ivSize,t.salt),r.iv=n.iv,p.decrypt.call(this,e,t,n.key,r)}})}(),function(){for(var e=s,t=e.lib.BlockCipher,n=e.algo,r=[],i=[],a=[],o=[],u=[],c=[],l=[],f=[],d=[],p=[],h=[],g=0;256>g;g++)h[g]=128>g?g<<1:g<<1^283;var v=0,y=0;for(g=0;256>g;g++){var b=(b=y^y<<1^y<<2^y<<3^y<<4)>>>8^255&b^99;r[v]=b,i[b]=v;var m=h[v],_=h[m],P=h[_],O=257*h[b]^16843008*b;a[v]=O<<24|O>>>8,o[v]=O<<16|O>>>16,u[v]=O<<8|O>>>24,c[v]=O,O=16843009*P^65537*_^257*m^16843008*v,l[b]=O<<24|O>>>8,f[b]=O<<16|O>>>16,d[b]=O<<8|O>>>24,p[b]=O,v?(v=m^h[h[h[P^m]]],y^=h[h[y]]):v=y=1}var k=[0,1,2,4,8,16,32,64,128,27,54];n=n.AES=t.extend({_doReset:function(){for(var e=(n=this._key).words,t=n.sigBytes/4,n=4*((this._nRounds=t+6)+1),i=this._keySchedule=[],a=0;a>>24]<<24|r[o>>>16&255]<<16|r[o>>>8&255]<<8|r[255&o]):(o=r[(o=o<<8|o>>>24)>>>24]<<24|r[o>>>16&255]<<16|r[o>>>8&255]<<8|r[255&o],o^=k[a/t|0]<<24),i[a]=i[a-t]^o}for(e=this._invKeySchedule=[],t=0;tt||4>=a?o:l[r[o>>>24]]^f[r[o>>>16&255]]^d[r[o>>>8&255]]^p[r[255&o]]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,a,o,u,c,r)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,l,f,d,p,i),n=e[t+1],e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,a,o,u){for(var s=this._nRounds,c=e[t]^n[0],l=e[t+1]^n[1],f=e[t+2]^n[2],d=e[t+3]^n[3],p=4,h=1;h>>24]^i[l>>>16&255]^a[f>>>8&255]^o[255&d]^n[p++],v=r[l>>>24]^i[f>>>16&255]^a[d>>>8&255]^o[255&c]^n[p++],y=r[f>>>24]^i[d>>>16&255]^a[c>>>8&255]^o[255&l]^n[p++];d=r[d>>>24]^i[c>>>16&255]^a[l>>>8&255]^o[255&f]^n[p++],c=g,l=v,f=y}g=(u[c>>>24]<<24|u[l>>>16&255]<<16|u[f>>>8&255]<<8|u[255&d])^n[p++],v=(u[l>>>24]<<24|u[f>>>16&255]<<16|u[d>>>8&255]<<8|u[255&c])^n[p++],y=(u[f>>>24]<<24|u[d>>>16&255]<<16|u[c>>>8&255]<<8|u[255&l])^n[p++],d=(u[d>>>24]<<24|u[c>>>16&255]<<16|u[l>>>8&255]<<8|u[255&f])^n[p++],e[t]=g,e[t+1]=v,e[t+2]=y,e[t+3]=d},keySize:8});e.AES=t._createHelper(n)}(),s.mode.ECB=((u=s.lib.BlockCipherMode.extend()).Encryptor=u.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),u.Decryptor=u.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),u),e.exports=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),a=r(n(5)),o=r(n(6)),u=r(n(4)),s=(r(n(18)),r(n(8)),r(n(19)),r(n(29))),c=r(n(30)),l=r(n(3)),f=(n(2),r(n(10))),d=function(){function e(t){var n=t.subscribeEndpoint,r=t.leaveEndpoint,i=t.heartbeatEndpoint,o=t.setStateEndpoint,l=t.timeEndpoint,f=t.getFileUrl,d=t.config,p=t.crypto,h=t.listenerManager;(0,a.default)(this,e),(0,u.default)(this,"_crypto",void 0),(0,u.default)(this,"_config",void 0),(0,u.default)(this,"_listenerManager",void 0),(0,u.default)(this,"_reconnectionManager",void 0),(0,u.default)(this,"_leaveEndpoint",void 0),(0,u.default)(this,"_heartbeatEndpoint",void 0),(0,u.default)(this,"_setStateEndpoint",void 0),(0,u.default)(this,"_subscribeEndpoint",void 0),(0,u.default)(this,"_getFileUrl",void 0),(0,u.default)(this,"_channels",void 0),(0,u.default)(this,"_presenceChannels",void 0),(0,u.default)(this,"_heartbeatChannels",void 0),(0,u.default)(this,"_heartbeatChannelGroups",void 0),(0,u.default)(this,"_channelGroups",void 0),(0,u.default)(this,"_presenceChannelGroups",void 0),(0,u.default)(this,"_currentTimetoken",void 0),(0,u.default)(this,"_lastTimetoken",void 0),(0,u.default)(this,"_storedTimetoken",void 0),(0,u.default)(this,"_region",void 0),(0,u.default)(this,"_subscribeCall",void 0),(0,u.default)(this,"_heartbeatTimer",void 0),(0,u.default)(this,"_subscriptionStatusAnnounced",void 0),(0,u.default)(this,"_autoNetworkDetection",void 0),(0,u.default)(this,"_isOnline",void 0),(0,u.default)(this,"_pendingChannelSubscriptions",void 0),(0,u.default)(this,"_pendingChannelGroupSubscriptions",void 0),(0,u.default)(this,"_dedupingManager",void 0),this._listenerManager=h,this._config=d,this._leaveEndpoint=r,this._heartbeatEndpoint=i,this._setStateEndpoint=o,this._subscribeEndpoint=n,this._getFileUrl=f,this._crypto=p,this._channels={},this._presenceChannels={},this._heartbeatChannels={},this._heartbeatChannelGroups={},this._channelGroups={},this._presenceChannelGroups={},this._pendingChannelSubscriptions=[],this._pendingChannelGroupSubscriptions=[],this._currentTimetoken=0,this._lastTimetoken=0,this._storedTimetoken=null,this._subscriptionStatusAnnounced=!1,this._isOnline=!0,this._reconnectionManager=new s.default({timeEndpoint:l}),this._dedupingManager=new c.default({config:d})}return(0,o.default)(e,[{key:"adaptStateChange",value:function(e,t){var n=this,r=e.state,i=e.channels,a=void 0===i?[]:i,o=e.channelGroups,u=void 0===o?[]:o;return a.forEach((function(e){e in n._channels&&(n._channels[e].state=r)})),u.forEach((function(e){e in n._channelGroups&&(n._channelGroups[e].state=r)})),this._setStateEndpoint({state:r,channels:a,channelGroups:u},t)}},{key:"adaptPresenceChange",value:function(e){var t=this,n=e.connected,r=e.channels,i=void 0===r?[]:r,a=e.channelGroups,o=void 0===a?[]:a;n?(i.forEach((function(e){t._heartbeatChannels[e]={state:{}}})),o.forEach((function(e){t._heartbeatChannelGroups[e]={state:{}}}))):(i.forEach((function(e){e in t._heartbeatChannels&&delete t._heartbeatChannels[e]})),o.forEach((function(e){e in t._heartbeatChannelGroups&&delete t._heartbeatChannelGroups[e]})),!1===this._config.suppressLeaveEvents&&this._leaveEndpoint({channels:i,channelGroups:o},(function(e){t._listenerManager.announceStatus(e)}))),this.reconnect()}},{key:"adaptSubscribeChange",value:function(e){var t=this,n=e.timetoken,r=e.channels,i=void 0===r?[]:r,a=e.channelGroups,o=void 0===a?[]:a,u=e.withPresence,s=void 0!==u&&u,c=e.withHeartbeats,l=void 0!==c&&c;this._config.subscribeKey&&""!==this._config.subscribeKey?(n&&(this._lastTimetoken=this._currentTimetoken,this._currentTimetoken=n),"0"!==this._currentTimetoken&&0!==this._currentTimetoken&&(this._storedTimetoken=this._currentTimetoken,this._currentTimetoken=0),i.forEach((function(e){t._channels[e]={state:{}},s&&(t._presenceChannels[e]={}),(l||t._config.getHeartbeatInterval())&&(t._heartbeatChannels[e]={}),t._pendingChannelSubscriptions.push(e)})),o.forEach((function(e){t._channelGroups[e]={state:{}},s&&(t._presenceChannelGroups[e]={}),(l||t._config.getHeartbeatInterval())&&(t._heartbeatChannelGroups[e]={}),t._pendingChannelGroupSubscriptions.push(e)})),this._subscriptionStatusAnnounced=!1,this.reconnect()):console&&console.log&&console.log("subscribe key missing; aborting subscribe")}},{key:"adaptUnsubscribeChange",value:function(e,t){var n=this,r=e.channels,i=void 0===r?[]:r,a=e.channelGroups,o=void 0===a?[]:a,u=[],s=[];i.forEach((function(e){e in n._channels&&(delete n._channels[e],u.push(e),e in n._heartbeatChannels&&delete n._heartbeatChannels[e]),e in n._presenceChannels&&(delete n._presenceChannels[e],u.push(e))})),o.forEach((function(e){e in n._channelGroups&&(delete n._channelGroups[e],s.push(e),e in n._heartbeatChannelGroups&&delete n._heartbeatChannelGroups[e]),e in n._presenceChannelGroups&&(delete n._channelGroups[e],s.push(e))})),0===u.length&&0===s.length||(!1!==this._config.suppressLeaveEvents||t||this._leaveEndpoint({channels:u,channelGroups:s},(function(e){e.affectedChannels=u,e.affectedChannelGroups=s,e.currentTimetoken=n._currentTimetoken,e.lastTimetoken=n._lastTimetoken,n._listenerManager.announceStatus(e)})),0===Object.keys(this._channels).length&&0===Object.keys(this._presenceChannels).length&&0===Object.keys(this._channelGroups).length&&0===Object.keys(this._presenceChannelGroups).length&&(this._lastTimetoken=0,this._currentTimetoken=0,this._storedTimetoken=null,this._region=null,this._reconnectionManager.stopPolling()),this.reconnect())}},{key:"unsubscribeAll",value:function(e){this.adaptUnsubscribeChange({channels:this.getSubscribedChannels(),channelGroups:this.getSubscribedChannelGroups()},e)}},{key:"getHeartbeatChannels",value:function(){return Object.keys(this._heartbeatChannels)}},{key:"getHeartbeatChannelGroups",value:function(){return Object.keys(this._heartbeatChannelGroups)}},{key:"getSubscribedChannels",value:function(){return Object.keys(this._channels)}},{key:"getSubscribedChannelGroups",value:function(){return Object.keys(this._channelGroups)}},{key:"reconnect",value:function(){this._startSubscribeLoop(),this._registerHeartbeatTimer()}},{key:"disconnect",value:function(){this._stopSubscribeLoop(),this._stopHeartbeatTimer(),this._reconnectionManager.stopPolling()}},{key:"_registerHeartbeatTimer",value:function(){this._stopHeartbeatTimer(),0!==this._config.getHeartbeatInterval()&&void 0!==this._config.getHeartbeatInterval()&&(this._performHeartbeatLoop(),this._heartbeatTimer=setInterval(this._performHeartbeatLoop.bind(this),1e3*this._config.getHeartbeatInterval()))}},{key:"_stopHeartbeatTimer",value:function(){this._heartbeatTimer&&(clearInterval(this._heartbeatTimer),this._heartbeatTimer=null)}},{key:"_performHeartbeatLoop",value:function(){var e=this,t=this.getHeartbeatChannels(),n=this.getHeartbeatChannelGroups(),r={};if(0!==t.length||0!==n.length){this.getSubscribedChannels().forEach((function(t){var n=e._channels[t].state;Object.keys(n).length&&(r[t]=n)})),this.getSubscribedChannelGroups().forEach((function(t){var n=e._channelGroups[t].state;Object.keys(n).length&&(r[t]=n)}));this._heartbeatEndpoint({channels:t,channelGroups:n,state:r},function(t){t.error&&e._config.announceFailedHeartbeats&&e._listenerManager.announceStatus(t),t.error&&e._config.autoNetworkDetection&&e._isOnline&&(e._isOnline=!1,e.disconnect(),e._listenerManager.announceNetworkDown(),e.reconnect()),!t.error&&e._config.announceSuccessfulHeartbeats&&e._listenerManager.announceStatus(t)}.bind(this))}}},{key:"_startSubscribeLoop",value:function(){var e=this;this._stopSubscribeLoop();var t={},n=[],r=[];if(Object.keys(this._channels).forEach((function(r){var i=e._channels[r].state;Object.keys(i).length&&(t[r]=i),n.push(r)})),Object.keys(this._presenceChannels).forEach((function(e){n.push("".concat(e,"-pnpres"))})),Object.keys(this._channelGroups).forEach((function(n){var i=e._channelGroups[n].state;Object.keys(i).length&&(t[n]=i),r.push(n)})),Object.keys(this._presenceChannelGroups).forEach((function(e){r.push("".concat(e,"-pnpres"))})),0!==n.length||0!==r.length){var i={channels:n,channelGroups:r,state:t,timetoken:this._currentTimetoken,filterExpression:this._config.filterExpression,region:this._region};this._subscribeCall=this._subscribeEndpoint(i,this._processSubscribeResponse.bind(this))}}},{key:"_processSubscribeResponse",value:function(e,t){var n=this;if(e.error)e.category===f.default.PNTimeoutCategory?this._startSubscribeLoop():e.category===f.default.PNNetworkIssuesCategory?(this.disconnect(),e.error&&this._config.autoNetworkDetection&&this._isOnline&&(this._isOnline=!1,this._listenerManager.announceNetworkDown()),this._reconnectionManager.onReconnection((function(){n._config.autoNetworkDetection&&!n._isOnline&&(n._isOnline=!0,n._listenerManager.announceNetworkUp()),n.reconnect(),n._subscriptionStatusAnnounced=!0;var t={category:f.default.PNReconnectedCategory,operation:e.operation,lastTimetoken:n._lastTimetoken,currentTimetoken:n._currentTimetoken};n._listenerManager.announceStatus(t)})),this._reconnectionManager.startPolling(),this._listenerManager.announceStatus(e)):e.category===f.default.PNBadRequestCategory?(this._stopHeartbeatTimer(),this._listenerManager.announceStatus(e)):this._listenerManager.announceStatus(e);else{if(this._storedTimetoken?(this._currentTimetoken=this._storedTimetoken,this._storedTimetoken=null):(this._lastTimetoken=this._currentTimetoken,this._currentTimetoken=t.metadata.timetoken),!this._subscriptionStatusAnnounced){var r={};r.category=f.default.PNConnectedCategory,r.operation=e.operation,r.affectedChannels=this._pendingChannelSubscriptions,r.subscribedChannels=this.getSubscribedChannels(),r.affectedChannelGroups=this._pendingChannelGroupSubscriptions,r.lastTimetoken=this._lastTimetoken,r.currentTimetoken=this._currentTimetoken,this._subscriptionStatusAnnounced=!0,this._listenerManager.announceStatus(r),this._pendingChannelSubscriptions=[],this._pendingChannelGroupSubscriptions=[]}var a=t.messages||[],o=this._config,u=o.requestMessageCountThreshold,s=o.dedupeOnSubscribe;if(u&&a.length>=u){var c={};c.category=f.default.PNRequestMessageCountExceededCategory,c.operation=e.operation,this._listenerManager.announceStatus(c)}a.forEach((function(e){var t=e.channel,r=e.subscriptionMatch,a=e.publishMetaData;if(t===r&&(r=null),s){if(n._dedupingManager.isDuplicate(e))return;n._dedupingManager.addEntry(e)}if(l.default.endsWith(e.channel,"-pnpres")){var o={channel:null,subscription:null};o.actualChannel=null!=r?t:null,o.subscribedChannel=null!=r?r:t,t&&(o.channel=t.substring(0,t.lastIndexOf("-pnpres"))),r&&(o.subscription=r.substring(0,r.lastIndexOf("-pnpres"))),o.action=e.payload.action,o.state=e.payload.data,o.timetoken=a.publishTimetoken,o.occupancy=e.payload.occupancy,o.uuid=e.payload.uuid,o.timestamp=e.payload.timestamp,e.payload.join&&(o.join=e.payload.join),e.payload.leave&&(o.leave=e.payload.leave),e.payload.timeout&&(o.timeout=e.payload.timeout),n._listenerManager.announcePresence(o)}else if(1===e.messageType){var u={channel:null,subscription:null};u.channel=t,u.subscription=r,u.timetoken=a.publishTimetoken,u.publisher=e.issuingClientId,e.userMetadata&&(u.userMetadata=e.userMetadata),u.message=e.payload,n._listenerManager.announceSignal(u)}else if(2===e.messageType){var c={channel:null,subscription:null};c.channel=t,c.subscription=r,c.timetoken=a.publishTimetoken,c.publisher=e.issuingClientId,e.userMetadata&&(c.userMetadata=e.userMetadata),c.message={event:e.payload.event,type:e.payload.type,data:e.payload.data},n._listenerManager.announceObjects(c),"user"===e.payload.type?n._listenerManager.announceUser(c):"space"===e.payload.type?n._listenerManager.announceSpace(c):"membership"===e.payload.type&&n._listenerManager.announceMembership(c)}else if(3===e.messageType){var f={};f.channel=t,f.subscription=r,f.timetoken=a.publishTimetoken,f.publisher=e.issuingClientId,f.data={messageTimetoken:e.payload.data.messageTimetoken,actionTimetoken:e.payload.data.actionTimetoken,type:e.payload.data.type,uuid:e.issuingClientId,value:e.payload.data.value},f.event=e.payload.event,n._listenerManager.announceMessageAction(f)}else if(4===e.messageType){var d={};d.channel=t,d.subscription=r,d.timetoken=a.publishTimetoken,d.publisher=e.issuingClientId;var p=e.payload;if(n._config.cipherKey){var h=n._crypto.decrypt(e.payload);"object"===(0,i.default)(h)&&null!==h&&(p=h)}e.userMetadata&&(d.userMetadata=e.userMetadata),d.message=p.message,d.file={id:p.file.id,name:p.file.name,url:n._getFileUrl({id:p.file.id,name:p.file.name,channel:t})},n._listenerManager.announceFile(d)}else{var g={channel:null,subscription:null};g.actualChannel=null!=r?t:null,g.subscribedChannel=null!=r?r:t,g.channel=t,g.subscription=r,g.timetoken=a.publishTimetoken,g.publisher=e.issuingClientId,e.userMetadata&&(g.userMetadata=e.userMetadata),n._config.cipherKey?g.message=n._crypto.decrypt(e.payload):g.message=e.payload,n._listenerManager.announceMessage(g)}})),this._region=t.metadata.region,this._startSubscribeLoop()}}},{key:"_stopSubscribeLoop",value:function(){this._subscribeCall&&("function"==typeof this._subscribeCall.abort&&this._subscribeCall.abort(),this._subscribeCall=null)}}]),e}();t.default=d,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),u=(r(n(20)),n(2),function(){function e(t){var n=t.timeEndpoint;(0,i.default)(this,e),(0,o.default)(this,"_reconnectionCallback",void 0),(0,o.default)(this,"_timeEndpoint",void 0),(0,o.default)(this,"_timeTimer",void 0),this._timeEndpoint=n}return(0,a.default)(e,[{key:"onReconnection",value:function(e){this._reconnectionCallback=e}},{key:"startPolling",value:function(){this._timeTimer=setInterval(this._performTimeLoop.bind(this),3e3)}},{key:"stopPolling",value:function(){clearInterval(this._timeTimer)}},{key:"_performTimeLoop",value:function(){var e=this;this._timeEndpoint((function(t){t.error||(clearInterval(e._timeTimer),e._reconnectionCallback())}))}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),u=(r(n(8)),n(2),function(){function e(t){var n=t.config;(0,i.default)(this,e),(0,o.default)(this,"_config",void 0),(0,o.default)(this,"hashHistory",void 0),this.hashHistory=[],this._config=n}return(0,a.default)(e,[{key:"getKey",value:function(e){var t=function(e){var t=0;if(0===e.length)return t;for(var n=0;n=this._config.maximumCacheSize&&this.hashHistory.shift(),this.hashHistory.push(this.getKey(e))}},{key:"clearHistory",value:function(){this.hashHistory=[]}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),u=r(n(1)),s=function(){function e(t){(0,i.default)(this,e),(0,o.default)(this,"_maximumSamplesCount",100),(0,o.default)(this,"_trackedLatencies",{}),(0,o.default)(this,"_latencies",{}),this._maximumSamplesCount=t.maximumSamplesCount||this._maximumSamplesCount}return(0,a.default)(e,[{key:"operationsLatencyForRequest",value:function(){var e=this,t={};return Object.keys(this._latencies).forEach((function(n){var r=e._latencies[n],i=e._averageLatency(r);i>0&&(t["l_".concat(n)]=i)})),t}},{key:"startLatencyMeasure",value:function(e,t){e!==u.default.PNSubscribeOperation&&t&&(this._trackedLatencies[t]=Date.now())}},{key:"stopLatencyMeasure",value:function(e,t){if(e!==u.default.PNSubscribeOperation&&t){var n=this._endpointName(e),r=this._latencies[n],i=this._trackedLatencies[t];r||(r=this._latencies[n]=[]),r.push(Date.now()-i),r.length>this._maximumSamplesCount&&r.splice(0,r.length-this._maximumSamplesCount),delete this._trackedLatencies[t]}}},{key:"_averageLatency",value:function(e){return Math.floor(e.reduce((function(e,t){return e+t}),0)/e.length)}},{key:"_endpointName",value:function(e){var t=null;switch(e){case u.default.PNPublishOperation:t="pub";break;case u.default.PNSignalOperation:t="sig";break;case u.default.PNHistoryOperation:case u.default.PNFetchMessagesOperation:case u.default.PNDeleteMessagesOperation:case u.default.PNMessageCounts:t="hist";break;case u.default.PNUnsubscribeOperation:case u.default.PNWhereNowOperation:case u.default.PNHereNowOperation:case u.default.PNHeartbeatOperation:case u.default.PNSetStateOperation:case u.default.PNGetStateOperation:t="pres";break;case u.default.PNAddChannelsToGroupOperation:case u.default.PNRemoveChannelsFromGroupOperation:case u.default.PNChannelGroupsOperation:case u.default.PNRemoveGroupOperation:case u.default.PNChannelsForGroupOperation:t="cg";break;case u.default.PNPushNotificationEnabledChannelsOperation:case u.default.PNRemoveAllPushNotificationsOperation:t="push";break;case u.default.PNCreateUserOperation:case u.default.PNUpdateUserOperation:case u.default.PNDeleteUserOperation:case u.default.PNGetUserOperation:case u.default.PNGetUsersOperation:case u.default.PNCreateSpaceOperation:case u.default.PNUpdateSpaceOperation:case u.default.PNDeleteSpaceOperation:case u.default.PNGetSpaceOperation:case u.default.PNGetSpacesOperation:case u.default.PNGetMembersOperation:case u.default.PNUpdateMembersOperation:case u.default.PNGetMembershipsOperation:case u.default.PNUpdateMembershipsOperation:t="obj";break;case u.default.PNAddMessageActionOperation:case u.default.PNRemoveMessageActionOperation:case u.default.PNGetMessageActionsOperation:t="msga";break;case u.default.PNAccessManagerGrant:case u.default.PNAccessManagerAudit:t="pam";break;case u.default.PNAccessManagerGrantToken:case u.default.PNAccessManagerRevokeToken:t="pamv3";break;default:t="time"}return t}}]),e}();t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.MPNSNotificationPayload=t.FCMNotificationPayload=t.APNSNotificationPayload=void 0;var i=r(n(33)),a=r(n(17)),o=r(n(12)),u=r(n(14)),s=r(n(11)),c=r(n(5)),l=r(n(6)),f=r(n(4)),d=(n(2),["notification","data"]);function p(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function h(e){for(var t=1;t2){var r=this._payload,a=(r.notification,r.data,(0,i.default)(r,d));e=h(h({},e),a)}return this._isSilent?e.notification=this._payload.notification:t=this._payload.notification,Object.keys(e).length&&(n.data=e),t&&Object.keys(t).length&&(n.notification=t),Object.keys(n).length?n:null}}]),n}(v);t.FCMNotificationPayload=m;var _=function(){function e(t,n){(0,c.default)(this,e),(0,f.default)(this,"_payload",void 0),(0,f.default)(this,"_debugging",void 0),(0,f.default)(this,"_subtitle",void 0),(0,f.default)(this,"_badge",void 0),(0,f.default)(this,"_sound",void 0),(0,f.default)(this,"_title",void 0),(0,f.default)(this,"_body",void 0),(0,f.default)(this,"apns",void 0),(0,f.default)(this,"mpns",void 0),(0,f.default)(this,"fcm",void 0),this._payload={apns:{},mpns:{},fcm:{}},this._title=t,this._body=n,this.apns=new y(this._payload.apns,t,n),this.mpns=new b(this._payload.mpns,t,n),this.fcm=new m(this._payload.fcm,t,n)}return(0,l.default)(e,[{key:"debugging",set:function(e){this._debugging=e}},{key:"title",get:function(){return this._title}},{key:"body",get:function(){return this._body}},{key:"subtitle",get:function(){return this._subtitle},set:function(e){this._subtitle=e,this.apns.subtitle=e,this.mpns.subtitle=e,this.fcm.subtitle=e}},{key:"badge",get:function(){return this._badge},set:function(e){this._badge=e,this.apns.badge=e,this.mpns.badge=e,this.fcm.badge=e}},{key:"sound",get:function(){return this._sound},set:function(e){this._sound=e,this.apns.sound=e,this.mpns.sound=e,this.fcm.sound=e}},{key:"buildPayload",value:function(e){var t={};if(e.includes("apns")||e.includes("apns2")){this.apns._apnsPushType=e.includes("apns")?"apns":"apns2";var n=this.apns.toObject();n&&Object.keys(n).length&&(t.pn_apns=n)}if(e.includes("mpns")){var r=this.mpns.toObject();r&&Object.keys(r).length&&(t.pn_mpns=r)}if(e.includes("fcm")){var i=this.fcm.toObject();i&&Object.keys(i).length&&(t.pn_gcm=i)}return Object.keys(t).length&&this._debugging&&(t.pn_debug=!0),t}}]),e}();t.default=_},function(e,t,n){var r=n(34);e.exports=function(e,t){if(null==e)return{};var n,i,a=r(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},a=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),u=(r(n(8)),n(2),function(){function e(t,n){(0,i.default)(this,e),(0,o.default)(this,"_config",void 0),(0,o.default)(this,"_cbor",void 0),(0,o.default)(this,"_token",void 0),this._config=t,this._cbor=n}return(0,a.default)(e,[{key:"setToken",value:function(e){e&&e.length>0?this._token=e:this._token=void 0}},{key:"getToken",value:function(){return this._token}},{key:"extractPermissions",value:function(e){var t={read:!1,write:!1,manage:!1,delete:!1,get:!1,update:!1,join:!1};return 128==(128&e)&&(t.join=!0),64==(64&e)&&(t.update=!0),32==(32&e)&&(t.get=!0),8==(8&e)&&(t.delete=!0),4==(4&e)&&(t.manage=!0),2==(2&e)&&(t.write=!0),1==(1&e)&&(t.read=!0),t}},{key:"parseToken",value:function(e){var t=this,n=this._cbor.decodeToken(e);if(void 0!==n){var r=n.res.uuid?Object.keys(n.res.uuid):[],i=Object.keys(n.res.chan),a=Object.keys(n.res.grp),o=n.pat.uuid?Object.keys(n.pat.uuid):[],u=Object.keys(n.pat.chan),s=Object.keys(n.pat.grp),c={version:n.v,timestamp:n.t,ttl:n.ttl,authorized_uuid:n.uuid},l=r.length>0,f=i.length>0,d=a.length>0;(l||f||d)&&(c.resources={},l&&(c.resources.uuids={},r.forEach((function(e){c.resources.uuids[e]=t.extractPermissions(n.res.uuid[e])}))),f&&(c.resources.channels={},i.forEach((function(e){c.resources.channels[e]=t.extractPermissions(n.res.chan[e])}))),d&&(c.resources.groups={},a.forEach((function(e){c.resources.groups[e]=t.extractPermissions(n.res.grp[e])}))));var p=o.length>0,h=u.length>0,g=s.length>0;return(p||h||g)&&(c.patterns={},p&&(c.patterns.uuids={},o.forEach((function(e){c.patterns.uuids[e]=t.extractPermissions(n.pat.uuid[e])}))),h&&(c.patterns.channels={},u.forEach((function(e){c.patterns.channels[e]=t.extractPermissions(n.pat.chan[e])}))),g&&(c.patterns.groups={},s.forEach((function(e){c.patterns.groups[e]=t.extractPermissions(n.pat.grp[e])})))),Object.keys(n.meta).length>0&&(c.meta=n.meta),c.signature=n.sig,c}}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){var r=n(11),i=n(13),a=n(37),o=n(38);function u(t){var n="function"==typeof Map?new Map:void 0;return e.exports=u=function(e){if(null===e||!a(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(e))return n.get(e);n.set(e,t)}function t(){return o(e,arguments,r(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),i(t,e)},e.exports.default=e.exports,e.exports.__esModule=!0,u(t)}e.exports=u,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e){return-1!==Function.toString.call(e).indexOf("[native code]")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(13),i=n(39);function a(t,n,o){return i()?(e.exports=a=Reflect.construct,e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=a=function(e,t,n){var i=[null];i.push.apply(i,t);var a=new(Function.bind.apply(e,i));return n&&r(a,n.prototype),a},e.exports.default=e.exports,e.exports.__esModule=!0),a.apply(null,arguments)}e.exports=a,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAddChannelsToGroupOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(a.default.encodeString(n))},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels;return{add:(void 0===n?[]:n).join(",")}},t.validateParams=function(e,t){var n=t.channels,r=t.channelGroup,i=e.config;if(!r)return"Missing Channel Group";if(!n||0===n.length)return"Missing Channels";if(!i.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveChannelsFromGroupOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(a.default.encodeString(n))},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels;return{remove:(void 0===n?[]:n).join(",")}},t.validateParams=function(e,t){var n=t.channels,r=t.channelGroup,i=e.config;if(!r)return"Missing Channel Group";if(!n||0===n.length)return"Missing Channels";if(!i.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveGroupOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(a.default.encodeString(n),"/remove")},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e,t){var n=t.channelGroup,r=e.config;if(!n)return"Missing Channel Group";if(!r.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNChannelGroupsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v1/channel-registration/sub-key/".concat(t.subscribeKey,"/channel-group")},t.handleResponse=function(e,t){return{groups:t.payload.groups}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNChannelsForGroupOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(a.default.encodeString(n))},t.handleResponse=function(e,t){return{channels:t.payload.channels}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e,t){var n=t.channelGroup,r=e.config;if(!n)return"Missing Channel Group";if(!r.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.channels,i=void 0===r?[]:r,a=t.environment,o=void 0===a?"development":a,u=t.topic,s={type:n,add:i.join(",")};"apns2"===n&&delete(s=Object.assign({},s,{environment:o,topic:u})).type;return s},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.channels,a=t.topic,o=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!a)return"Missing APNS2 topic";if(!i||0===i.length)return"Missing Channels";if(!o.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.channels,i=void 0===r?[]:r,a=t.environment,o=void 0===a?"development":a,u=t.topic,s={type:n,remove:i.join(",")};"apns2"===n&&delete(s=Object.assign({},s,{environment:o,topic:u})).type;return s},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.channels,a=t.topic,o=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!a)return"Missing APNS2 topic";if(!i||0===i.length)return"Missing Channels";if(!o.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.handleResponse=function(e,t){return{channels:t}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.environment,i=void 0===r?"development":r,a=t.topic,o={type:n};"apns2"===n&&delete(o=Object.assign({},o,{environment:i,topic:a})).type;return o},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.topic,a=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!i)return"Missing APNS2 topic";if(!a.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveAllPushNotificationsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n,"/remove");return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n,"/remove")},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.environment,i=void 0===r?"development":r,a=t.topic,o={type:n};"apns2"===n&&delete(o=Object.assign({},o,{environment:i,topic:a})).type;return o},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.topic,a=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!i)return"Missing APNS2 topic";if(!a.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUnsubscribeOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(o),"/leave")},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i={};r.length>0&&(i["channel-group"]=r.join(","));return i},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNWhereNowOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.uuid,i=void 0===r?n.UUID:r;return"/v2/presence/sub-key/".concat(n.subscribeKey,"/uuid/").concat(a.default.encodeString(i))},t.handleResponse=function(e,t){if(!t.payload)return{channels:[]};return{channels:t.payload.channels}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNHeartbeatOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(o),"/heartbeat")},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i=t.state,a=void 0===i?{}:i,o=e.config,u={};r.length>0&&(u["channel-group"]=r.join(","));return u.state=JSON.stringify(a),u.heartbeat=o.getPresenceTimeout(),u},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetStateOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.uuid,i=void 0===r?n.UUID:r,o=t.channels,u=void 0===o?[]:o,s=u.length>0?u.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(s),"/uuid/").concat(i)},t.handleResponse=function(e,t,n){var r=n.channels,i=void 0===r?[]:r,a=n.channelGroups,o=void 0===a?[]:a,u={};1===i.length&&0===o.length?u[i[0]]=t.payload:u=t.payload;return{channels:u}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i={};r.length>0&&(i["channel-group"]=r.join(","));return i},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSetStateOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(o),"/uuid/").concat(a.default.encodeString(n.UUID),"/data")},t.handleResponse=function(e,t){return{state:t.payload}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.state,r=t.channelGroups,i=void 0===r?[]:r,a={};a.state=JSON.stringify(n),i.length>0&&(a["channel-group"]=i.join(","));return a},t.validateParams=function(e,t){var n=e.config,r=t.state,i=t.channels,a=void 0===i?[]:i,o=t.channelGroups,u=void 0===o?[]:o;if(!r)return"Missing State";if(!n.subscribeKey)return"Missing Subscribe Key";if(0===a.length&&0===u.length)return"Please provide a list of channels and/or channel-groups"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return a.default.PNHereNowOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=t.channelGroups,u=void 0===a?[]:a,s="/v2/presence/sub-key/".concat(n.subscribeKey);if(i.length>0||u.length>0){var c=i.length>0?i.join(","):",";s+="/channel/".concat(o.default.encodeString(c))}return s},t.handleError=function(e,t,n){402!==n.statusCode||this.getURL(e,t).includes("channel")||(n.errorData.message="You have tried to perform a Global Here Now operation, your keyset configuration does not support that. Please provide a channel, or enable the Global Here Now feature from the Portal.")},t.handleResponse=function(e,t,n){var r,i=n.channels,a=void 0===i?[]:i,o=n.channelGroups,u=void 0===o?[]:o,s=n.includeUUIDs,c=void 0===s||s,l=n.includeState,f=void 0!==l&&l;r=a.length>1||u.length>0||0===u.length&&0===a.length?function(){var e={};return e.totalChannels=t.payload.total_channels,e.totalOccupancy=t.payload.total_occupancy,e.channels={},Object.keys(t.payload.channels).forEach((function(n){var r=t.payload.channels[n],i=[];return e.channels[n]={occupants:i,name:n,occupancy:r.occupancy},c&&r.uuids.forEach((function(e){f?i.push({state:e.state,uuid:e.uuid}):i.push({state:null,uuid:e})})),e})),e}():function(){var e={},n=[];return e.totalChannels=1,e.totalOccupancy=t.occupancy,e.channels={},e.channels[a[0]]={occupants:n,name:a[0],occupancy:t.occupancy},c&&t.uuids&&t.uuids.forEach((function(e){f?n.push({state:e.state,uuid:e.uuid}):n.push({state:null,uuid:e})})),e}();return r},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i=t.includeUUIDs,a=void 0===i||i,o=t.includeState,u=void 0!==o&&o,c=t.queryParameters,l=void 0===c?{}:c,f={};a||(f.disable_uuids=1);u&&(f.state=1);r.length>0&&(f["channel-group"]=r.join(","));return f=s(s({},f),l)},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};var i=r(n(4)),a=(n(2),r(n(1))),o=r(n(3));function u(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function s(e){for(var t=1;t15)return"Action.type value exceed maximum length of 15"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveMessageActionOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.actionTimetoken,o=t.messageTimetoken;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(r),"/message/").concat(o,"/action/").concat(i)},t.handleResponse=function(e,t){return{data:t.data}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.useDelete=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.channel,i=t.actionTimetoken;if(!t.messageTimetoken)return"Missing message timetoken";if(!i)return"Missing action timetoken";if(!n.subscribeKey)return"Missing Subscribe Key";if(!r)return"Missing message channel"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMessageActionsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channel;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(a.default.encodeString(r))},t.handleResponse=function(e,t){var n={data:t.data,start:null,end:null};n.data.length&&(n.end=n.data[n.data.length-1].actionTimetoken,n.start=n.data[0].actionTimetoken);return n},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.limit,r=t.start,i=t.end,a={};n&&(a.limit=n);r&&(a.start=r);i&&(a.end=i);return a},t.validateParams=function(e,t){var n=e.config,r=t.channel;if(!n.subscribeKey)return"Missing Subscribe Key";if(!r)return"Missing message channel"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),a=r(n(3)),o={getOperation:function(){return i.default.PNListFilesOperation},validateParams:function(e,t){if(null==t||!t.channel)return"channel can't be empty"},getURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(a.default.encodeString(t.channel),"/files")},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(e,t){var n={};return t.limit&&(n.limit=t.limit),t.next&&(n.next=t.next),n},handleResponse:function(e,t){return{status:t.status,data:t.data,next:t.next,count:t.count}}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),a=r(n(3)),o={getOperation:function(){return i.default.PNGenerateUploadUrlOperation},validateParams:function(e,t){return null!=t&&t.channel?null!=t&&t.name?void 0:"name can't be empty":"channel can't be empty"},usePost:function(){return!0},postURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(a.default.encodeString(t.channel),"/generate-upload-url")},postPayload:function(e,t){return{name:t.name}},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(){return{}},handleResponse:function(e,t){return{status:t.status,data:t.data,file_upload_request:t.file_upload_request}}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),a=r(n(1)),o=r(n(3)),u={getOperation:function(){return a.default.PNPublishFileOperation},validateParams:function(e,t){return null!=t&&t.channel?null!=t&&t.fileId?null!=t&&t.fileName?void 0:"file name can't be empty":"file id can't be empty":"channel can't be empty"},getURL:function(e,t){var n=e.config,r=n.publishKey,i=n.subscribeKey,a=function(e,t){var n=e.crypto,r=e.config,i=JSON.stringify(t);return r.cipherKey&&(i=n.encrypt(i),i=JSON.stringify(i)),i||""}(e,{message:t.message,file:{name:t.fileName,id:t.fileId}});return"/v1/files/publish-file/".concat(r,"/").concat(i,"/0/").concat(o.default.encodeString(t.channel),"/0/").concat(o.default.encodeString(a))},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(e,t){var n={};return t.ttl&&(n.ttl=t.ttl),void 0!==t.storeInHistory&&(n.store=t.storeInHistory?"1":"0"),t.meta&&"object"===(0,i.default)(t.meta)&&(n.meta=JSON.stringify(t.meta)),n},handleResponse:function(e,t){return{timetoken:t[2]}}};t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(21)),a=r(n(22)),o=n(16),u=function(e){return new Promise((function(t){var n="";e.on("data",(function(e){n+=e.toString("utf8")})),e.on("end",(function(){t(n)}))}))};t.default=function(e){var t,n,r,s,c,l,f,d,p,h=(r=(t=e).generateUploadUrl,s=t.publishFile,c=t.modules,l=c.PubNubFile,f=c.config,d=c.cryptography,p=c.networking,n=(0,a.default)(i.default.mark((function e(t){var n,a,c,h,g,v,y,b,m,_,P,O,k,S,M,T,x,w,N,j,U,C;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.channel,a=t.file,c=t.message,h=t.cipherKey,g=t.meta,v=t.ttl,y=t.storeInHistory,n){e.next=3;break}throw new o.PubNubError("Validation failed, check status for details",(0,o.createValidationError)("channel can't be empty"));case 3:if(a){e.next=5;break}throw new o.PubNubError("Validation failed, check status for details",(0,o.createValidationError)("file can't be empty"));case 5:return b=l.create(a),e.next=8,r({channel:n,name:b.name});case 8:if(m=e.sent,_=m.file_upload_request,P=_.url,O=_.form_fields,k=m.data,S=k.id,M=k.name,!l.supportsEncryptFile||!(null!=h?h:f.cipherKey)){e.next=19;break}return e.next=18,d.encryptFile(null!=h?h:f.cipherKey,b,l);case 18:b=e.sent;case 19:if(T=O,b.mimeType&&(T=O.map((function(e){return"Content-Type"===e.key?{key:e.key,value:b.mimeType}:e}))),e.prev=21,!l.supportsFileUri||!a.uri){e.next=34;break}return e.t0=p,e.t1=P,e.t2=T,e.next=28,b.toFileUri();case 28:return e.t3=e.sent,e.next=31,e.t0.POSTFILE.call(e.t0,e.t1,e.t2,e.t3);case 31:x=e.sent,e.next=71;break;case 34:if(!l.supportsFile){e.next=46;break}return e.t4=p,e.t5=P,e.t6=T,e.next=40,b.toFile();case 40:return e.t7=e.sent,e.next=43,e.t4.POSTFILE.call(e.t4,e.t5,e.t6,e.t7);case 43:x=e.sent,e.next=71;break;case 46:if(!l.supportsBuffer){e.next=58;break}return e.t8=p,e.t9=P,e.t10=T,e.next=52,b.toBuffer();case 52:return e.t11=e.sent,e.next=55,e.t8.POSTFILE.call(e.t8,e.t9,e.t10,e.t11);case 55:x=e.sent,e.next=71;break;case 58:if(!l.supportsBlob){e.next=70;break}return e.t12=p,e.t13=P,e.t14=T,e.next=64,b.toBlob();case 64:return e.t15=e.sent,e.next=67,e.t12.POSTFILE.call(e.t12,e.t13,e.t14,e.t15);case 67:x=e.sent,e.next=71;break;case 70:throw new Error("Unsupported environment");case 71:e.next=80;break;case 73:return e.prev=73,e.t16=e.catch(21),e.next=77,u(e.t16.response);case 77:throw w=e.sent,N=/(.*)<\/Message>/gi.exec(w),new o.PubNubError(N?"Upload to bucket failed: ".concat(N[1]):"Upload to bucket failed.",e.t16);case 80:if(204===x.status){e.next=82;break}throw new o.PubNubError("Upload to bucket was unsuccessful",x);case 82:j=f.fileUploadPublishRetryLimit,U=!1,C={timetoken:"0"};case 85:return e.prev=85,e.next=88,s({channel:n,message:c,fileId:S,fileName:M,meta:g,storeInHistory:y,ttl:v});case 88:C=e.sent,U=!0,e.next=95;break;case 92:e.prev=92,e.t17=e.catch(85),j-=1;case 95:if(!U&&j>0){e.next=85;break}case 96:if(U){e.next=100;break}throw new o.PubNubError("Publish failed. You may want to execute that operation manually using pubnub.publishFile",{channel:n,id:S,name:M});case 100:return e.abrupt("return",{timetoken:C.timetoken,id:S,name:M});case 101:case"end":return e.stop()}}),e,null,[[21,73],[85,92]])}))),function(e){return n.apply(this,arguments)});return function(e,t){var n=h(e);return"function"==typeof t?(n.then((function(e){return t(null,e)})).catch((function(e){return t(e,null)})),n):n}},e.exports=t.default},function(e,t,n){var r=function(e){"use strict";var t=Object.prototype,n=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",o=r.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function s(e,t,n,r){var i=t&&t.prototype instanceof f?t:f,a=Object.create(i.prototype),o=new k(r||[]);return a._invoke=function(e,t,n){var r="suspendedStart";return function(i,a){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw a;return M()}for(n.method=i,n.arg=a;;){var o=n.delegate;if(o){var u=_(o,n);if(u){if(u===l)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var s=c(e,t,n);if("normal"===s.type){if(r=n.done?"completed":"suspendedYield",s.arg===l)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(r="completed",n.method="throw",n.arg=s.arg)}}}(e,n,o),a}function c(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var l={};function f(){}function d(){}function p(){}var h={};u(h,i,(function(){return this}));var g=Object.getPrototypeOf,v=g&&g(g(S([])));v&&v!==t&&n.call(v,i)&&(h=v);var y=p.prototype=f.prototype=Object.create(h);function b(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function m(e,t){var r;this._invoke=function(i,a){function o(){return new t((function(r,o){!function r(i,a,o,u){var s=c(e[i],e,a);if("throw"!==s.type){var l=s.arg,f=l.value;return f&&"object"==typeof f&&n.call(f,"__await")?t.resolve(f.__await).then((function(e){r("next",e,o,u)}),(function(e){r("throw",e,o,u)})):t.resolve(f).then((function(e){l.value=e,o(l)}),(function(e){return r("throw",e,o,u)}))}u(s.arg)}(i,a,r,o)}))}return r=r?r.then(o,o):o()}}function _(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method))return l;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var r=c(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,l;var i=r.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,l):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,l)}function P(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function O(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function k(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(P,this),this.reset(!0)}function S(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,a=function t(){for(;++r=0;--i){var a=this.tryEntries[i],o=a.completion;if("root"===a.tryLoc)return r("end");if(a.tryLoc<=this.prev){var u=n.call(a,"catchLoc"),s=n.call(a,"finallyLoc");if(u&&s){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),O(n),l}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;O(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:S(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),l}},e}(e.exports);try{regeneratorRuntime=r}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=n(16),a=r(n(3));t.default=function(e,t){var n=t.channel,r=t.id,o=t.name,u=e.config,s=e.networking;if(!n)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("channel can't be empty"));if(!r)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("file id can't be empty"));if(!o)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("file name can't be empty"));var c="/v1/files/".concat(u.subscribeKey,"/channels/").concat(a.default.encodeString(n),"/files/").concat(r,"/").concat(o),l={};l.uuid=u.getUUID(),l.pnsdk=(0,i.generatePNSDK)(u),u.getAuthKey()&&(l.auth=u.getAuthKey()),u.secretKey&&(0,i.signRequest)(e,c,l,{},{getOperation:function(){return"PubNubGetFileUrlOperation"}});var f=Object.keys(l).map((function(e){return"".concat(encodeURIComponent(e),"=").concat(encodeURIComponent(l[e]))})).join("&");return""!==f?"".concat(s.getStandardOrigin()).concat(c,"?").concat(f):"".concat(s.getStandardOrigin()).concat(c)},e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i,a=r(n(21)),o=r(n(22)),u=r(n(1)),s=r(n(3)),c={getOperation:function(){return u.default.PNDownloadFileOperation},validateParams:function(e,t){return null!=t&&t.channel?null!=t&&t.name?null!=t&&t.id?void 0:"id can't be empty":"name can't be empty":"channel can't be empty"},useGetFile:function(){return!0},getFileURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(s.default.encodeString(t.channel),"/files/").concat(t.id,"/").concat(t.name)},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},ignoreBody:function(){return!0},forceBuffered:function(){return!0},prepareParams:function(){return{}},handleResponse:(i=(0,o.default)(a.default.mark((function e(t,n,r){var i,o,u,s,c,l,f;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(u=t.PubNubFile,s=t.config,c=t.cryptography,l=n.response.body,!u.supportsEncryptFile||!(null!==(i=r.cipherKey)&&void 0!==i?i:s.cipherKey)){e.next=6;break}return e.next=5,c.decrypt(null!==(f=r.cipherKey)&&void 0!==f?f:s.cipherKey,l);case 5:l=e.sent;case 6:return e.abrupt("return",u.create({data:l,name:null!==(o=n.response.name)&&void 0!==o?o:r.name,mimeType:n.response.type}));case 7:case"end":return e.stop()}}),e)}))),function(e,t,n){return i.apply(this,arguments)})};t.default=c,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),a=r(n(3)),o={getOperation:function(){return i.default.PNListFilesOperation},validateParams:function(e,t){return null!=t&&t.channel?null!=t&&t.id?null!=t&&t.name?void 0:"file name can't be empty":"file id can't be empty":"channel can't be empty"},useDelete:function(){return!0},getURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(a.default.encodeString(t.channel),"/files/").concat(t.id,"/").concat(t.name)},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(){return{}},handleResponse:function(e,t){return{status:t.status}}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(9)),a=r(n(1)),o={getOperation:function(){return a.default.PNGetAllUUIDMetadataOperation},validateParams:function(){},getURL:function(e){var t=e.config;return"/v2/objects/".concat(t.subscribeKey,"/uuids")},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(e,t){var n,r,a,o,u,s,c,l,f,d={};(null!=t&&null!==(n=t.include)&&void 0!==n&&n.customFields&&(d.include="custom"),null!=t&&null!==(r=t.include)&&void 0!==r&&r.totalCount)&&(d.count=null===(s=t.include)||void 0===s?void 0:s.totalCount);null!=t&&null!==(a=t.page)&&void 0!==a&&a.next&&(d.start=null===(c=t.page)||void 0===c?void 0:c.next);null!=t&&null!==(o=t.page)&&void 0!==o&&o.prev&&(d.end=null===(l=t.page)||void 0===l?void 0:l.prev);(null!=t&&t.filter&&(d.filter=t.filter),d.limit=null!==(u=null==t?void 0:t.limit)&&void 0!==u?u:100,null!=t&&t.sort)&&(d.sort=Object.entries(null!==(f=t.sort)&&void 0!==f?f:{}).map((function(e){var t=(0,i.default)(e,2),n=t[0],r=t[1];return"asc"===r||"desc"===r?"".concat(n,":").concat(r):n})));return d},handleResponse:function(e,t){return{status:t.status,data:t.data,totalCount:t.totalCount,next:t.next,prev:t.prev}}};t.default=o,e.exports=t.default},function(e,t){e.exports=function(e){if(Array.isArray(e))return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,a=[],o=!0,u=!1;try{for(n=n.call(e);!(o=(r=n.next()).done)&&(a.push(r.value),!t||a.length!==t);o=!0);}catch(e){u=!0,i=e}finally{try{o||null==n.return||n.return()}finally{if(u)throw i}}return a}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(72);e.exports=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&(r.include=a)}return r},t.usePost=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,a=t.custom;if(!r)return"Missing User.id";if(!i)return"Missing User.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(a&&!Object.values(a).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateUserOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(r))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){return t}(0,t)},t.patchURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(r))},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,a=t.custom;if(!r)return"Missing User.id";if(!i)return"Missing User.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(a&&!Object.values(a).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteUserOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.useDelete=function(){return!0},t.validateParams=function(e,t){var n=e.config;if(!t)return"Missing UserId";if(!n.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetUserOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.validateParams=function(e,t){if(!t.userId)return"Missing userId"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetUsersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a=t.filter,o={};r&&(o.limit=r);if(n){var u=[];n.totalCount&&(o.count=!0),n.customFields&&u.push("custom");var s=u.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));a&&(o.filter=a);return o},t.validateParams=function(){};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNCreateSpaceOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.postPayload=function(e,t){return function(e,t){return t}(0,t)},t.postURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.usePost=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,a=t.custom;if(!r)return"Missing Space.id";if(!i)return"Missing Space.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(a&&!Object.values(a).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateSpaceOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(r))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){return t}(0,t)},t.patchURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(r))},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,a=t.custom;if(!r)return"Missing Space.id";if(!i)return"Missing Space.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(a&&!Object.values(a).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteSpaceOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.useDelete=function(){return!0},t.validateParams=function(e,t){var n=e.config;if(!t)return"Missing SpaceId";if(!n.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetSpacesOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a=t.filter,o={};r&&(o.limit=r);if(n){var u=[];n.totalCount&&(o.count=!0),n.customFields&&u.push("custom");var s=u.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));a&&(o.filter=a);return o},t.validateParams=function(){};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetSpaceOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var a=i.join(",");a.length>0&&(r.include=a)}return r},t.validateParams=function(e,t){if(!t.spaceId)return"Missing spaceId"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMembersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a=t.filter,o={};r&&(o.limit=r);if(n){var u=[];n.totalCount&&(o.count=!0),n.customFields&&u.push("custom"),n.userFields&&u.push("user"),n.customUserFields&&u.push("user.custom");var s=u.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));a&&(o.filter=a);return o},t.validateParams=function(e,t){if(!t.spaceId)return"Missing spaceId"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.users,r={};n&&n.length>0&&(r.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),r.add.push(t)})));return r}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var u=o.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.addMembers,r=t.updateMembers,i=t.removeMembers,a=t.users,o={};n&&n.length>0&&(o.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.add.push(t)})));r&&r.length>0&&(o.update=[],r.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.update.push(t)})));a&&a.length>0&&(o.update=o.update||[],a.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.update.push(t)})));i&&i.length>0&&(o.remove=[],i.forEach((function(e){o.remove.push({id:e})})));return o}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var u=o.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.users,r={};n&&n.length>0&&(r.remove=[],n.forEach((function(e){r.remove.push({id:e})})));return r}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(a.default.encodeString(t.spaceId),"/users")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var u=o.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMembershipsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a=t.filter,o={};r&&(o.limit=r);if(n){var u=[];n.totalCount&&(o.count=!0),n.customFields&&u.push("custom"),n.spaceFields&&u.push("space"),n.customSpaceFields&&u.push("space.custom");var s=u.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));a&&(o.filter=a);return o},t.validateParams=function(e,t){if(!t.userId)return"Missing userId"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.addMemberships,r=t.updateMemberships,i=t.removeMemberships,a=t.spaces,o={};n&&n.length>0&&(o.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.add.push(t)})));r&&r.length>0&&(o.update=[],r.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.update.push(t)})));a&&a.length>0&&(o.update=o.update||[],a.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),o.update.push(t)})));i&&i.length>0&&(o.remove=[],i.forEach((function(e){o.remove.push({id:e})})));return o}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var u=o.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.spaces,r={};n&&n.length>0&&(r.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),r.add.push(t)})));return r}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var u=o.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.spaces,r={};n&&n.length>0&&(r.remove=[],n.forEach((function(e){r.remove.push({id:e})})));return r}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(a.default.encodeString(t.userId),"/spaces")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,a={};r&&(a.limit=r);if(n){var o=[];n.totalCount&&(a.count=!0),n.customFields&&o.push("custom"),n.spaceFields&&o.push("space"),n.customSpaceFields&&o.push("space.custom");var u=o.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));return a},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerAudit},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v2/auth/audit/sub-key/".concat(t.subscribeKey)},t.handleResponse=function(e,t){return t.payload},t.isAuthSupported=function(){return!1},t.prepareParams=function(e,t){var n=t.channel,r=t.channelGroup,i=t.authKeys,a=void 0===i?[]:i,o={};n&&(o.channel=n);r&&(o["channel-group"]=r);a.length>0&&(o.auth=a.join(","));return o},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerGrant},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v2/auth/grant/sub-key/".concat(t.subscribeKey)},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!1},t.prepareParams=function(e,t){var n=t.channels,r=void 0===n?[]:n,i=t.channelGroups,a=void 0===i?[]:i,o=t.uuids,u=void 0===o?[]:o,s=t.ttl,c=t.read,l=void 0!==c&&c,f=t.write,d=void 0!==f&&f,p=t.manage,h=void 0!==p&&p,g=t.get,v=void 0!==g&&g,y=t.join,b=void 0!==y&&y,m=t.update,_=void 0!==m&&m,P=t.authKeys,O=void 0===P?[]:P,k=t.delete,S={};S.r=l?"1":"0",S.w=d?"1":"0",S.m=h?"1":"0",S.d=k?"1":"0",S.g=v?"1":"0",S.j=b?"1":"0",S.u=_?"1":"0",r.length>0&&(S.channel=r.join(","));a.length>0&&(S["channel-group"]=a.join(","));O.length>0&&(S.auth=O.join(","));u.length>0&&(S["target-uuid"]=u.join(","));(s||0===s)&&(S.ttl=s);return S},t.validateParams=function(e,t){var n=e.config;if(!n.subscribeKey)return"Missing Subscribe Key";if(!n.publishKey)return"Missing Publish Key";if(!n.secretKey)return"Missing Secret Key";if(null!=t.uuids&&!t.authKeys)return"authKeys are required for grant request on uuids";if(null!=t.uuids&&(null!=t.channels||null!=t.channelGroups))return"Both channel/channelgroup and uuid cannot be used in the same request"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.extractPermissions=a,t.getOperation=function(){return i.default.PNAccessManagerGrantToken},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.handleResponse=function(e,t){return t.data.token},t.isAuthSupported=function(){return!1},t.postPayload=function(e,t){return function(e,t){var n=t.ttl,r=t.resources,i=t.patterns,o=t.meta,u=t.authorized_uuid,s={ttl:0,permissions:{resources:{channels:{},groups:{},uuids:{},users:{},spaces:{}},patterns:{channels:{},groups:{},uuids:{},users:{},spaces:{}},meta:{}}};if(r){var c=r.uuids,l=r.channels,f=r.groups;c&&Object.keys(c).forEach((function(e){s.permissions.resources.uuids[e]=a(c[e])})),l&&Object.keys(l).forEach((function(e){s.permissions.resources.channels[e]=a(l[e])})),f&&Object.keys(f).forEach((function(e){s.permissions.resources.groups[e]=a(f[e])}))}if(i){var d=i.uuids,p=i.channels,h=i.groups;d&&Object.keys(d).forEach((function(e){s.permissions.patterns.uuids[e]=a(d[e])})),p&&Object.keys(p).forEach((function(e){s.permissions.patterns.channels[e]=a(p[e])})),h&&Object.keys(h).forEach((function(e){s.permissions.patterns.groups[e]=a(h[e])}))}(n||0===n)&&(s.ttl=n);o&&(s.permissions.meta=o);u&&(s.permissions.uuid="".concat(u));return s}(0,t)},t.postURL=function(e){var t=e.config;return"/v3/pam/".concat(t.subscribeKey,"/grant")},t.prepareParams=function(){return{}},t.usePost=function(){return!0},t.validateParams=function(e,t){var n=e.config;if(!n.subscribeKey)return"Missing Subscribe Key";if(!n.publishKey)return"Missing Publish Key";if(!n.secretKey)return"Missing Secret Key";if(!t.resources&&!t.patterns)return"Missing either Resources or Patterns.";if(t.resources&&(!t.resources.uuids||0===Object.keys(t.resources.uuids).length)&&(!t.resources.channels||0===Object.keys(t.resources.channels).length)&&(!t.resources.groups||0===Object.keys(t.resources.groups).length)||t.patterns&&(!t.patterns.uuids||0===Object.keys(t.patterns.uuids).length)&&(!t.patterns.channels||0===Object.keys(t.patterns.channels).length)&&(!t.patterns.groups||0===Object.keys(t.patterns.groups).length))return"Missing values for either Resources or Patterns."};n(2);var i=r(n(1));function a(e){var t=0;return e.join&&(t|=128),e.update&&(t|=64),e.get&&(t|=32),e.delete&&(t|=8),e.manage&&(t|=4),e.write&&(t|=2),e.read&&(t|=1),t}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),a=r(n(3)),o={getOperation:function(){return i.default.PNAccessManagerRevokeToken},validateParams:function(e,t){return e.config.secretKey?t?void 0:"token can't be empty":"Missing Secret Key"},getURL:function(e,t){var n=e.config;return"/v3/pam/".concat(n.subscribeKey,"/grant/").concat(a.default.encodeString(t))},useDelete:function(){return!0},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!1},prepareParams:function(e){return{uuid:e.config.getUUID()}},handleResponse:function(e,t){return{status:t.status,data:t.data}}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return a.default.PNPublishOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.message,a=u(e,i);return"/publish/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(o.default.encodeString(r),"/0/").concat(o.default.encodeString(a))},t.handleResponse=function(e,t){return{timetoken:t[2]}},t.isAuthSupported=function(){return!0},t.postPayload=function(e,t){var n=t.message;return u(e,n)},t.postURL=function(e,t){var n=e.config,r=t.channel;return"/publish/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(o.default.encodeString(r),"/0")},t.prepareParams=function(e,t){var n=t.meta,r=t.replicate,a=void 0===r||r,o=t.storeInHistory,u=t.ttl,s={};null!=o&&(s.store=o?"1":"0");u&&(s.ttl=u);!1===a&&(s.norep="true");n&&"object"===(0,i.default)(n)&&(s.meta=JSON.stringify(n));return s},t.usePost=function(e,t){var n=t.sendByPost;return void 0!==n&&n},t.validateParams=function(e,t){var n=e.config,r=t.message;if(!t.channel)return"Missing Channel";if(!r)return"Missing Message";if(!n.subscribeKey)return"Missing Subscribe Key"};var i=r(n(7)),a=(n(2),r(n(1))),o=r(n(3));function u(e,t){var n=e.crypto,r=e.config,i=JSON.stringify(t);return r.cipherKey&&(i=n.encrypt(i),i=JSON.stringify(i)),i}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSignalOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.message,o=(u=i,JSON.stringify(u));var u;return"/signal/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(a.default.encodeString(r),"/0/").concat(a.default.encodeString(o))},t.handleResponse=function(e,t){return{timetoken:t[2]}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e,t){var n=e.config,r=t.message;if(!t.channel)return"Missing Channel";if(!r)return"Missing Message";if(!n.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNHistoryOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channel,r=e.config;return"/v2/history/sub-key/".concat(r.subscribeKey,"/channel/").concat(a.default.encodeString(n))},t.handleResponse=function(e,t){var n={messages:[],startTimeToken:t[1],endTimeToken:t[2]};Array.isArray(t[0])&&t[0].forEach((function(t){var r={timetoken:t.timetoken,entry:o(e,t.message)};t.meta&&(r.meta=t.meta),n.messages.push(r)}));return n},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.start,r=t.end,i=t.reverse,a=t.count,o=void 0===a?100:a,u=t.stringifiedTimeToken,s=void 0!==u&&u,c=t.includeMeta,l=void 0!==c&&c,f={include_token:"true"};f.count=o,n&&(f.start=n);r&&(f.end=r);s&&(f.string_message_token="true");null!=i&&(f.reverse=i.toString());l&&(f.include_meta="true");return f},t.validateParams=function(e,t){var n=t.channel,r=e.config;if(!n)return"Missing channel";if(!r.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3));function o(e,t){var n=e.config,r=e.crypto;if(!n.cipherKey)return t;try{return r.decrypt(t)}catch(e){return t}}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteMessagesOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channel,r=e.config;return"/v3/history/sub-key/".concat(r.subscribeKey,"/channel/").concat(a.default.encodeString(n))},t.handleResponse=function(e,t){return t.payload},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.start,r=t.end,i={};n&&(i.start=n);r&&(i.end=r);return i},t.useDelete=function(){return!0},t.validateParams=function(e,t){var n=t.channel,r=e.config;if(!n)return"Missing channel";if(!r.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return a.default.PNMessageCounts},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channels,r=e.config,i=n.join(",");return"/v3/history/sub-key/".concat(r.subscribeKey,"/message-counts/").concat(o.default.encodeString(i))},t.handleResponse=function(e,t){return{channels:t.channels}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.timetoken,r=t.channelTimetokens,a={};if(r&&1===r.length){var o=(0,i.default)(r,1)[0];a.timetoken=o}else r?a.channelsTimetoken=r.join(","):n&&(a.timetoken=n);return a},t.validateParams=function(e,t){var n=t.channels,r=t.timetoken,i=t.channelTimetokens,a=e.config;if(!n)return"Missing channel";if(r&&i)return"timetoken and channelTimetokens are incompatible together";if(r&&i&&i.length>1&&n.length!==i.length)return"Length of channelTimetokens and channels do not match";if(!a.subscribeKey)return"Missing Subscribe Key"};var i=r(n(9)),a=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNFetchMessagesOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channels,r=void 0===n?[]:n,i=t.includeMessageActions,o=void 0!==i&&i,u=e.config,s=o?"history-with-actions":"history",c=r.length>0?r.join(","):",";return"/v3/".concat(s,"/sub-key/").concat(u.subscribeKey,"/channel/").concat(a.default.encodeString(c))},t.handleResponse=function(e,t){var n={channels:{}};Object.keys(t.channels||{}).forEach((function(r){n.channels[r]=[],(t.channels[r]||[]).forEach((function(t){var i={};i.channel=r,i.timetoken=t.timetoken,i.message=function(e,t){var n=e.config,r=e.crypto;if(!n.cipherKey)return t;try{return r.decrypt(t)}catch(e){return t}}(e,t.message),i.messageType=t.message_type,i.uuid=t.uuid,t.actions&&(i.actions=t.actions,i.data=t.actions),t.meta&&(i.meta=t.meta),n.channels[r].push(i)}))})),t.more&&(n.more=t.more);return n},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels,r=t.start,i=t.end,a=t.includeMessageActions,o=t.count,u=t.stringifiedTimeToken,s=void 0!==u&&u,c=t.includeMeta,l=void 0!==c&&c,f=t.includeUuid,d=t.includeUUID,p=void 0===d||d,h=t.includeMessageType,g=void 0===h||h,v={};v.max=o||(n.length>1||!0===a?25:100);r&&(v.start=r);i&&(v.end=i);s&&(v.string_message_token="true");l&&(v.include_meta="true");p&&!1!==f&&(v.include_uuid="true");g&&(v.include_message_type="true");return v},t.validateParams=function(e,t){var n=t.channels,r=t.includeMessageActions,i=void 0!==r&&r,a=e.config;if(!n||0===n.length)return"Missing channels";if(!a.subscribeKey)return"Missing Subscribe Key";if(i&&n.length>1)throw new TypeError("History can return actions data for a single channel only. Either pass a single channel or disable the includeMessageActions flag.")};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSubscribeOperation},t.getRequestTimeout=function(e){return e.config.getSubscribeTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=i.length>0?i.join(","):",";return"/v2/subscribe/".concat(n.subscribeKey,"/").concat(a.default.encodeString(o),"/0")},t.handleResponse=function(e,t){var n=[];t.m.forEach((function(e){var t={publishTimetoken:e.p.t,region:e.p.r},r={shard:parseInt(e.a,10),subscriptionMatch:e.b,channel:e.c,messageType:e.e,payload:e.d,flags:e.f,issuingClientId:e.i,subscribeKey:e.k,originationTimetoken:e.o,userMetadata:e.u,publishMetaData:t};n.push(r)}));var r={timetoken:t.t.t,region:t.t.r};return{messages:n,metadata:r}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=e.config,r=t.state,i=t.channelGroups,a=void 0===i?[]:i,o=t.timetoken,u=t.filterExpression,s=t.region,c={heartbeat:n.getPresenceTimeout()};a.length>0&&(c["channel-group"]=a.join(","));u&&u.length>0&&(c["filter-expr"]=u);Object.keys(r).length&&(c.state=JSON.stringify(r));o&&(c.tt=o);s&&(c.tr=s);return c},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),u=(r(n(8)),r(n(10))),s=(n(2),function(){function e(t){var n=this;(0,i.default)(this,e),(0,o.default)(this,"_modules",void 0),(0,o.default)(this,"_config",void 0),(0,o.default)(this,"_currentSubDomain",void 0),(0,o.default)(this,"_standardOrigin",void 0),(0,o.default)(this,"_subscribeOrigin",void 0),(0,o.default)(this,"_requestTimeout",void 0),(0,o.default)(this,"_coreParams",void 0),this._modules={},Object.keys(t).forEach((function(e){n._modules[e]=t[e].bind(n)}))}return(0,a.default)(e,[{key:"init",value:function(e){this._config=e,Array.isArray(this._config.origin)?this._currentSubDomain=Math.floor(Math.random()*this._config.origin.length):this._currentSubDomain=0,this._coreParams={},this.shiftStandardOrigin()}},{key:"nextOrigin",value:function(){var e=this._config.secure?"https://":"http://";if("string"==typeof this._config.origin)return"".concat(e).concat(this._config.origin);this._currentSubDomain+=1,this._currentSubDomain>=this._config.origin.length&&(this._currentSubDomain=0);var t=this._config.origin[this._currentSubDomain];return"".concat(e).concat(t)}},{key:"hasModule",value:function(e){return e in this._modules}},{key:"shiftStandardOrigin",value:function(){return this._standardOrigin=this.nextOrigin(),this._standardOrigin}},{key:"getStandardOrigin",value:function(){return this._standardOrigin}},{key:"POSTFILE",value:function(e,t,n){return this._modules.postfile(e,t,n)}},{key:"GETFILE",value:function(e,t,n){return this._modules.getfile(e,t,n)}},{key:"POST",value:function(e,t,n,r){return this._modules.post(e,t,n,r)}},{key:"PATCH",value:function(e,t,n,r){return this._modules.patch(e,t,n,r)}},{key:"GET",value:function(e,t,n){return this._modules.get(e,t,n)}},{key:"DELETE",value:function(e,t,n){return this._modules.del(e,t,n)}},{key:"_detectErrorCategory",value:function(e){if("ENOTFOUND"===e.code)return u.default.PNNetworkIssuesCategory;if("ECONNREFUSED"===e.code)return u.default.PNNetworkIssuesCategory;if("ECONNRESET"===e.code)return u.default.PNNetworkIssuesCategory;if("EAI_AGAIN"===e.code)return u.default.PNNetworkIssuesCategory;if(0===e.status||e.hasOwnProperty("status")&&void 0===e.status)return u.default.PNNetworkIssuesCategory;if(e.timeout)return u.default.PNTimeoutCategory;if("ETIMEDOUT"===e.code)return u.default.PNNetworkIssuesCategory;if(e.response){if(e.response.badRequest)return u.default.PNBadRequestCategory;if(e.response.forbidden)return u.default.PNAccessDeniedCategory}return u.default.PNUnknownCategory}}]),e}());t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),a=r(n(6)),o=r(n(4)),u=function(){function e(){(0,i.default)(this,e),(0,o.default)(this,"storage",void 0),this.storage={}}return(0,a.default)(e,[{key:"get",value:function(e){return this.storage[e]}},{key:"set",value:function(e,t){this.storage[e]=t}}]),e}();t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),a=r(n(5)),o=r(n(6)),u=r(n(4)),s=function(){function e(t,n){(0,a.default)(this,e),(0,u.default)(this,"_base64ToBinary",void 0),(0,u.default)(this,"_cborReader",void 0),this._base64ToBinary=n,this._decode=t}return(0,o.default)(e,[{key:"decodeToken",value:function(e){var t="";e.length%4==3?t="=":e.length%4==2&&(t="==");var n=e.replace(/-/gi,"+").replace(/_/gi,"/")+t,r=this._decode(this._base64ToBinary(n));if("object"===(0,i.default)(r))return r}}]),e}();t.default=s,e.exports=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.del=function(e,t,n){var r=i(),a=this.getStandardOrigin()+t.url;return o.call(this,r,"DELETE",a,e,{},t,n)},t.get=function(e,t,n){var r=i(),a=this.getStandardOrigin()+t.url;return o.call(this,r,"GET",a,e,{},t,n)},t.patch=function(e,t,n,r){var a=i(),u=this.getStandardOrigin()+n.url;return o.call(this,a,"PATCH",u,e,JSON.parse(t),n,r)},t.post=function(e,t,n,r){var a=i(),u=this.getStandardOrigin()+n.url;return o.call(this,a,"POST",u,e,JSON.parse(t),n,r)};n(2);var r=n(118);function i(){return"mobileweb"===Ti.Platform.osname?new XMLHttpRequest:Ti.Network.createHTTPClient()}function a(e){"mobileweb"!==Ti.Platform.osname&&this._config.keepAlive&&(e.enableKeepAlive=!0)}function o(e,t,n,i,o,u,s){var c=this,l={};l.operation=u.operation,e.open(t,(0,r.buildUrl)(n,i),!0),a.call(this,e),e.onload=function(){l.error=!1,e.status&&(l.statusCode=e.status);var t=JSON.parse(e.responseText);return c._config.logVerbosity&&function(e,t,n){var r=(new Date).getTime(),i=(new Date).toISOString(),a=Ti&&Ti.API&&Ti.API.log?Ti.API:console;a.log("<<<<<"),a.log("[".concat(i,"]"),"\n",e,"\n",t),a.log("-----");var o=(new Date).getTime()-r,u=(new Date).toISOString();a.log(">>>>>>"),a.log("[".concat(u," / ").concat(o,"]"),"\n",e,"\n",t,"\n",n),a.log("-----")}(n,i,e.responseText),s(l,t)},e.onerror=function(e){return l.error=!0,l.errorData=e.error,l.category=c._detectErrorCategory(e.error),s(l,null)},e.timeout="android"===Ti.Platform.osname?2147483647:1/0,e.send(o)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.buildUrl=function(e,t){var n=[];return Object.keys(t).forEach((function(e){a(n,e,t[e])})),"".concat(e,"?").concat(n.join("&"))},t.encodedKeyValuePair=a;var i=r(n(7));function a(e,t,n){null!=n?Array.isArray(n)?n.forEach((function(n){a(e,t,n)})):"object"===(0,i.default)(n)?Object.keys(n).forEach((function(r){a(e,"".concat(t,"[").concat(r,"]"),n[r])})):e.push("".concat(encodeURIComponent(t),"=").concat(encodeURIComponent(n))):null===n&&e.push(encodeURIComponent("".concat(encodeURIComponent(t))))}}]),module.exports=exports.PubNub; \ No newline at end of file diff --git a/dist/web/pubnub.js b/dist/web/pubnub.js index 9e8fc300b..deb18aa21 100644 --- a/dist/web/pubnub.js +++ b/dist/web/pubnub.js @@ -1,4 +1,4 @@ -/*! 4.32.1 / Consumer */ +/*! 5.0.0 / Consumer */ (function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); @@ -92,7 +92,7 @@ return /******/ (function(modules) { // webpackBootstrap /******/ /******/ /******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 27); +/******/ return __webpack_require__(__webpack_require__.s = 31); /******/ }) /************************************************************************/ /******/ ([ @@ -106,6 +106,7 @@ function _interopRequireDefault(obj) { } module.exports = _interopRequireDefault; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 1 */ @@ -174,7 +175,8 @@ var _default = { PNRemoveChannelsFromGroupOperation: 'PNRemoveChannelsFromGroupOperation', PNAccessManagerGrant: 'PNAccessManagerGrant', PNAccessManagerGrantToken: 'PNAccessManagerGrantToken', - PNAccessManagerAudit: 'PNAccessManagerAudit' + PNAccessManagerAudit: 'PNAccessManagerAudit', + PNAccessManagerRevokeToken: 'PNAccessManagerRevokeToken' }; exports["default"] = _default; module.exports = exports.default; @@ -261,7 +263,7 @@ module.exports = { encodeString: encodeString, deprecated: deprecated }; -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(39))) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(42))) /***/ }), /* 4 */ @@ -283,6 +285,7 @@ function _defineProperty(obj, key, value) { } module.exports = _defineProperty; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 5 */ @@ -295,6 +298,7 @@ function _classCallCheck(instance, Constructor) { } module.exports = _classCallCheck; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 6 */ @@ -317,6 +321,7 @@ function _createClass(Constructor, protoProps, staticProps) { } module.exports = _createClass; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 7 */ @@ -329,16 +334,21 @@ function _typeof(obj) { module.exports = _typeof = function _typeof(obj) { return typeof obj; }; + + module.exports["default"] = module.exports, module.exports.__esModule = true; } else { module.exports = _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + module.exports["default"] = module.exports, module.exports.__esModule = true; } return _typeof(obj); } module.exports = _typeof; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 8 */ @@ -367,14 +377,20 @@ var _flow_interfaces = __webpack_require__(2); var PRESENCE_TIMEOUT_MINIMUM = 20; var PRESENCE_TIMEOUT_DEFAULT = 300; +var makeDefaultOrigins = function makeDefaultOrigins() { + return Array.from({ + length: 20 + }, function (_, i) { + return "ps".concat(i + 1, ".pndsn.com"); + }); +}; + var _default = function () { function _default(_ref) { var _setup$fileUploadPubl, _setup$useRandomIVs; - var setup = _ref.setup, - db = _ref.db; + var setup = _ref.setup; (0, _classCallCheck2["default"])(this, _default); - (0, _defineProperty2["default"])(this, "_db", void 0); (0, _defineProperty2["default"])(this, "subscribeKey", void 0); (0, _defineProperty2["default"])(this, "publishKey", void 0); (0, _defineProperty2["default"])(this, "secretKey", void 0); @@ -413,7 +429,6 @@ var _default = function () { (0, _defineProperty2["default"])(this, "fileUploadPublishRetryLimit", void 0); (0, _defineProperty2["default"])(this, "useRandomIVs", void 0); this._PNSDKSuffix = {}; - this._db = db; this.instanceId = "pn-".concat(_uuid["default"].createUUID()); this.secretKey = setup.secretKey || setup.secret_key; this.subscribeKey = setup.subscribeKey || setup.subscribe_key; @@ -424,7 +439,12 @@ var _default = function () { this.setAuthKey(setup.authKey); this.setCipherKey(setup.cipherKey); this.setFilterExpression(setup.filterExpression); - this.origin = setup.origin || 'ps.pndsn.com'; + + if (typeof setup.origin !== 'string' && !Array.isArray(setup.origin) && setup.origin !== undefined) { + throw new Error('Origin must be either undefined, a string or a list of strings.'); + } + + this.origin = setup.origin || makeDefaultOrigins(); this.secure = setup.ssl || false; this.restore = setup.restore || false; this.proxy = setup.proxy; @@ -463,7 +483,7 @@ var _default = function () { this.setHeartbeatInterval(setup.heartbeatInterval); } - this.setUUID(this._decideUUID(setup.uuid)); + this.setUUID(setup.uuid); } (0, _createClass2["default"])(_default, [{ @@ -491,7 +511,10 @@ var _default = function () { }, { key: "setUUID", value: function setUUID(val) { - if (this._db && this._db.set) this._db.set("".concat(this.subscribeKey, "uuid"), val); + if (!val || typeof val !== 'string' || val.trim().length === 0) { + throw new Error('Missing uuid parameter. Provide a valid string uuid'); + } + this.UUID = val; return this; } @@ -576,7 +599,7 @@ var _default = function () { }, { key: "getVersion", value: function getVersion() { - return '4.32.1'; + return '5.0.0'; } }, { key: "_addPnsdkSuffix", @@ -592,19 +615,6 @@ var _default = function () { return result + separator + _this._PNSDKSuffix[key]; }, ''); } - }, { - key: "_decideUUID", - value: function _decideUUID(providedUUID) { - if (providedUUID) { - return providedUUID; - } - - if (this._db && this._db.get && this._db.get("".concat(this.subscribeKey, "uuid"))) { - return this._db.get("".concat(this.subscribeKey, "uuid")); - } - - return "pn-".concat(_uuid["default"].createUUID()); - } }]); return _default; }(); @@ -616,19 +626,20 @@ module.exports = exports.default; /* 9 */ /***/ (function(module, exports, __webpack_require__) { -var arrayWithHoles = __webpack_require__(77); +var arrayWithHoles = __webpack_require__(80); -var iterableToArrayLimit = __webpack_require__(78); +var iterableToArrayLimit = __webpack_require__(81); -var unsupportedIterableToArray = __webpack_require__(79); +var unsupportedIterableToArray = __webpack_require__(82); -var nonIterableRest = __webpack_require__(81); +var nonIterableRest = __webpack_require__(84); function _slicedToArray(arr, i) { return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest(); } module.exports = _slicedToArray; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 10 */ @@ -660,7 +671,7 @@ module.exports = exports.default; /* 11 */ /***/ (function(module, exports, __webpack_require__) { -module.exports = __webpack_require__(72); +module.exports = __webpack_require__(75); /***/ }), @@ -704,6 +715,7 @@ function _asyncToGenerator(fn) { } module.exports = _asyncToGenerator; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 13 */ @@ -713,10 +725,12 @@ function _getPrototypeOf(o) { module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; + module.exports["default"] = module.exports, module.exports.__esModule = true; return _getPrototypeOf(o); } module.exports = _getPrototypeOf; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 14 */ @@ -740,6 +754,7 @@ function _inherits(subClass, superClass) { } module.exports = _inherits; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 15 */ @@ -751,28 +766,33 @@ function _setPrototypeOf(o, p) { return o; }; + module.exports["default"] = module.exports, module.exports.__esModule = true; return _setPrototypeOf(o, p); } module.exports = _setPrototypeOf; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 16 */ /***/ (function(module, exports, __webpack_require__) { -var _typeof = __webpack_require__(7); +var _typeof = __webpack_require__(7)["default"]; -var assertThisInitialized = __webpack_require__(19); +var assertThisInitialized = __webpack_require__(22); function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; + } else if (call !== void 0) { + throw new TypeError("Derived constructors may only return object or undefined"); } return assertThisInitialized(self); } module.exports = _possibleConstructorReturn; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), /* 17 */ @@ -788,7 +808,7 @@ Object.defineProperty(exports, "__esModule", { }); exports["default"] = void 0; -var _lilUuid = _interopRequireDefault(__webpack_require__(31)); +var _lilUuid = _interopRequireDefault(__webpack_require__(34)); var _default = { createUUID: function createUUID() { @@ -814,11 +834,11 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); +exports.PubNubError = void 0; exports.createValidationError = createValidationError; +exports["default"] = _default; exports.generatePNSDK = generatePNSDK; exports.signRequest = signRequest; -exports["default"] = _default; -exports.PubNubError = void 0; var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); @@ -830,7 +850,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(16) var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(13)); -var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(45)); +var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(48)); var _uuid = _interopRequireDefault(__webpack_require__(17)); @@ -844,13 +864,13 @@ var _operations = _interopRequireDefault(__webpack_require__(1)); var _categories = _interopRequireDefault(__webpack_require__(10)); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var PubNubError = function (_Error) { (0, _inherits2["default"])(PubNubError, _Error); @@ -897,16 +917,6 @@ function decideURL(endpoint, modules, incomingParams) { } } -function getAuthToken(endpoint, modules, incomingParams) { - var token; - - if (endpoint.getAuthToken) { - token = endpoint.getAuthToken(modules, incomingParams); - } - - return token; -} - function generatePNSDK(config) { if (config.sdkName) { return config.sdkName; @@ -987,7 +997,8 @@ function signRequest(modules, url, outgoingParams, incomingParams, endpoint) { function _default(modules, endpoint) { var networking = modules.networking, config = modules.config, - telemetryManager = modules.telemetryManager; + telemetryManager = modules.telemetryManager, + tokenManager = modules.tokenManager; var requestId = _uuid["default"].createUUID(); @@ -1047,8 +1058,7 @@ function _default(modules, endpoint) { } if (endpoint.isAuthSupported()) { - var token = getAuthToken(endpoint, modules, incomingParams); - var tokenOrKey = token || config.getAuthKey(); + var tokenOrKey = tokenManager.getToken() || config.getAuthKey(); if (tokenOrKey) { outgoingParams.auth = tokenOrKey; @@ -1138,6 +1148,385 @@ function _default(modules, endpoint) { /***/ }), /* 19 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var undefined; + +var $SyntaxError = SyntaxError; +var $Function = Function; +var $TypeError = TypeError; + +// eslint-disable-next-line consistent-return +var getEvalledConstructor = function (expressionSyntax) { + try { + return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')(); + } catch (e) {} +}; + +var $gOPD = Object.getOwnPropertyDescriptor; +if ($gOPD) { + try { + $gOPD({}, ''); + } catch (e) { + $gOPD = null; // this is IE 8, which has a broken gOPD + } +} + +var throwTypeError = function () { + throw new $TypeError(); +}; +var ThrowTypeError = $gOPD + ? (function () { + try { + // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties + arguments.callee; // IE 8 does not throw here + return throwTypeError; + } catch (calleeThrows) { + try { + // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '') + return $gOPD(arguments, 'callee').get; + } catch (gOPDthrows) { + return throwTypeError; + } + } + }()) + : throwTypeError; + +var hasSymbols = __webpack_require__(135)(); + +var getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto + +var needsEval = {}; + +var TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array); + +var INTRINSICS = { + '%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError, + '%Array%': Array, + '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer, + '%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined, + '%AsyncFromSyncIteratorPrototype%': undefined, + '%AsyncFunction%': needsEval, + '%AsyncGenerator%': needsEval, + '%AsyncGeneratorFunction%': needsEval, + '%AsyncIteratorPrototype%': needsEval, + '%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics, + '%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt, + '%Boolean%': Boolean, + '%DataView%': typeof DataView === 'undefined' ? undefined : DataView, + '%Date%': Date, + '%decodeURI%': decodeURI, + '%decodeURIComponent%': decodeURIComponent, + '%encodeURI%': encodeURI, + '%encodeURIComponent%': encodeURIComponent, + '%Error%': Error, + '%eval%': eval, // eslint-disable-line no-eval + '%EvalError%': EvalError, + '%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array, + '%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array, + '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry, + '%Function%': $Function, + '%GeneratorFunction%': needsEval, + '%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array, + '%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array, + '%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array, + '%isFinite%': isFinite, + '%isNaN%': isNaN, + '%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined, + '%JSON%': typeof JSON === 'object' ? JSON : undefined, + '%Map%': typeof Map === 'undefined' ? undefined : Map, + '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()), + '%Math%': Math, + '%Number%': Number, + '%Object%': Object, + '%parseFloat%': parseFloat, + '%parseInt%': parseInt, + '%Promise%': typeof Promise === 'undefined' ? undefined : Promise, + '%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy, + '%RangeError%': RangeError, + '%ReferenceError%': ReferenceError, + '%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect, + '%RegExp%': RegExp, + '%Set%': typeof Set === 'undefined' ? undefined : Set, + '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()), + '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer, + '%String%': String, + '%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined, + '%Symbol%': hasSymbols ? Symbol : undefined, + '%SyntaxError%': $SyntaxError, + '%ThrowTypeError%': ThrowTypeError, + '%TypedArray%': TypedArray, + '%TypeError%': $TypeError, + '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array, + '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray, + '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array, + '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array, + '%URIError%': URIError, + '%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap, + '%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef, + '%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet +}; + +var doEval = function doEval(name) { + var value; + if (name === '%AsyncFunction%') { + value = getEvalledConstructor('async function () {}'); + } else if (name === '%GeneratorFunction%') { + value = getEvalledConstructor('function* () {}'); + } else if (name === '%AsyncGeneratorFunction%') { + value = getEvalledConstructor('async function* () {}'); + } else if (name === '%AsyncGenerator%') { + var fn = doEval('%AsyncGeneratorFunction%'); + if (fn) { + value = fn.prototype; + } + } else if (name === '%AsyncIteratorPrototype%') { + var gen = doEval('%AsyncGenerator%'); + if (gen) { + value = getProto(gen.prototype); + } + } + + INTRINSICS[name] = value; + + return value; +}; + +var LEGACY_ALIASES = { + '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'], + '%ArrayPrototype%': ['Array', 'prototype'], + '%ArrayProto_entries%': ['Array', 'prototype', 'entries'], + '%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'], + '%ArrayProto_keys%': ['Array', 'prototype', 'keys'], + '%ArrayProto_values%': ['Array', 'prototype', 'values'], + '%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'], + '%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'], + '%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'], + '%BooleanPrototype%': ['Boolean', 'prototype'], + '%DataViewPrototype%': ['DataView', 'prototype'], + '%DatePrototype%': ['Date', 'prototype'], + '%ErrorPrototype%': ['Error', 'prototype'], + '%EvalErrorPrototype%': ['EvalError', 'prototype'], + '%Float32ArrayPrototype%': ['Float32Array', 'prototype'], + '%Float64ArrayPrototype%': ['Float64Array', 'prototype'], + '%FunctionPrototype%': ['Function', 'prototype'], + '%Generator%': ['GeneratorFunction', 'prototype'], + '%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'], + '%Int8ArrayPrototype%': ['Int8Array', 'prototype'], + '%Int16ArrayPrototype%': ['Int16Array', 'prototype'], + '%Int32ArrayPrototype%': ['Int32Array', 'prototype'], + '%JSONParse%': ['JSON', 'parse'], + '%JSONStringify%': ['JSON', 'stringify'], + '%MapPrototype%': ['Map', 'prototype'], + '%NumberPrototype%': ['Number', 'prototype'], + '%ObjectPrototype%': ['Object', 'prototype'], + '%ObjProto_toString%': ['Object', 'prototype', 'toString'], + '%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'], + '%PromisePrototype%': ['Promise', 'prototype'], + '%PromiseProto_then%': ['Promise', 'prototype', 'then'], + '%Promise_all%': ['Promise', 'all'], + '%Promise_reject%': ['Promise', 'reject'], + '%Promise_resolve%': ['Promise', 'resolve'], + '%RangeErrorPrototype%': ['RangeError', 'prototype'], + '%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'], + '%RegExpPrototype%': ['RegExp', 'prototype'], + '%SetPrototype%': ['Set', 'prototype'], + '%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'], + '%StringPrototype%': ['String', 'prototype'], + '%SymbolPrototype%': ['Symbol', 'prototype'], + '%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'], + '%TypedArrayPrototype%': ['TypedArray', 'prototype'], + '%TypeErrorPrototype%': ['TypeError', 'prototype'], + '%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'], + '%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'], + '%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'], + '%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'], + '%URIErrorPrototype%': ['URIError', 'prototype'], + '%WeakMapPrototype%': ['WeakMap', 'prototype'], + '%WeakSetPrototype%': ['WeakSet', 'prototype'] +}; + +var bind = __webpack_require__(20); +var hasOwn = __webpack_require__(138); +var $concat = bind.call(Function.call, Array.prototype.concat); +var $spliceApply = bind.call(Function.apply, Array.prototype.splice); +var $replace = bind.call(Function.call, String.prototype.replace); +var $strSlice = bind.call(Function.call, String.prototype.slice); + +/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */ +var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; +var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */ +var stringToPath = function stringToPath(string) { + var first = $strSlice(string, 0, 1); + var last = $strSlice(string, -1); + if (first === '%' && last !== '%') { + throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`'); + } else if (last === '%' && first !== '%') { + throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`'); + } + var result = []; + $replace(string, rePropName, function (match, number, quote, subString) { + result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match; + }); + return result; +}; +/* end adaptation */ + +var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) { + var intrinsicName = name; + var alias; + if (hasOwn(LEGACY_ALIASES, intrinsicName)) { + alias = LEGACY_ALIASES[intrinsicName]; + intrinsicName = '%' + alias[0] + '%'; + } + + if (hasOwn(INTRINSICS, intrinsicName)) { + var value = INTRINSICS[intrinsicName]; + if (value === needsEval) { + value = doEval(intrinsicName); + } + if (typeof value === 'undefined' && !allowMissing) { + throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!'); + } + + return { + alias: alias, + name: intrinsicName, + value: value + }; + } + + throw new $SyntaxError('intrinsic ' + name + ' does not exist!'); +}; + +module.exports = function GetIntrinsic(name, allowMissing) { + if (typeof name !== 'string' || name.length === 0) { + throw new $TypeError('intrinsic name must be a non-empty string'); + } + if (arguments.length > 1 && typeof allowMissing !== 'boolean') { + throw new $TypeError('"allowMissing" argument must be a boolean'); + } + + var parts = stringToPath(name); + var intrinsicBaseName = parts.length > 0 ? parts[0] : ''; + + var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing); + var intrinsicRealName = intrinsic.name; + var value = intrinsic.value; + var skipFurtherCaching = false; + + var alias = intrinsic.alias; + if (alias) { + intrinsicBaseName = alias[0]; + $spliceApply(parts, $concat([0, 1], alias)); + } + + for (var i = 1, isOwn = true; i < parts.length; i += 1) { + var part = parts[i]; + var first = $strSlice(part, 0, 1); + var last = $strSlice(part, -1); + if ( + ( + (first === '"' || first === "'" || first === '`') + || (last === '"' || last === "'" || last === '`') + ) + && first !== last + ) { + throw new $SyntaxError('property names with quotes must have matching quotes'); + } + if (part === 'constructor' || !isOwn) { + skipFurtherCaching = true; + } + + intrinsicBaseName += '.' + part; + intrinsicRealName = '%' + intrinsicBaseName + '%'; + + if (hasOwn(INTRINSICS, intrinsicRealName)) { + value = INTRINSICS[intrinsicRealName]; + } else if (value != null) { + if (!(part in value)) { + if (!allowMissing) { + throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.'); + } + return void undefined; + } + if ($gOPD && (i + 1) >= parts.length) { + var desc = $gOPD(value, part); + isOwn = !!desc; + + // By convention, when a data property is converted to an accessor + // property to emulate a data property that does not suffer from + // the override mistake, that accessor's getter is marked with + // an `originalValue` property. Here, when we detect this, we + // uphold the illusion by pretending to see that original data + // property, i.e., returning the value rather than the getter + // itself. + if (isOwn && 'get' in desc && !('originalValue' in desc.get)) { + value = desc.get; + } else { + value = value[part]; + } + } else { + isOwn = hasOwn(value, part); + value = value[part]; + } + + if (isOwn && !skipFurtherCaching) { + INTRINSICS[intrinsicRealName] = value; + } + } + } + return value; +}; + + +/***/ }), +/* 20 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var implementation = __webpack_require__(137); + +module.exports = Function.prototype.bind || implementation; + + +/***/ }), +/* 21 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var replace = String.prototype.replace; +var percentTwenties = /%20/g; + +var Format = { + RFC1738: 'RFC1738', + RFC3986: 'RFC3986' +}; + +module.exports = { + 'default': Format.RFC3986, + formatters: { + RFC1738: function (value) { + return replace.call(value, percentTwenties, '+'); + }, + RFC3986: function (value) { + return String(value); + } + }, + RFC1738: Format.RFC1738, + RFC3986: Format.RFC3986 +}; + + +/***/ }), +/* 22 */ /***/ (function(module, exports) { function _assertThisInitialized(self) { @@ -1149,9 +1538,10 @@ function _assertThisInitialized(self) { } module.exports = _assertThisInitialized; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 20 */ +/* 23 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1172,7 +1562,7 @@ var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); var _config = _interopRequireDefault(__webpack_require__(8)); -var _hmacSha = _interopRequireDefault(__webpack_require__(22)); +var _hmacSha = _interopRequireDefault(__webpack_require__(25)); function bufferToWordArray(b) { var wa = []; @@ -1388,10 +1778,10 @@ var _default = function () { exports["default"] = _default; module.exports = exports.default; -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(21).Buffer)) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24).Buffer)) /***/ }), -/* 21 */ +/* 24 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1405,9 +1795,9 @@ module.exports = exports.default; -var base64 = __webpack_require__(33) -var ieee754 = __webpack_require__(34) -var isArray = __webpack_require__(35) +var base64 = __webpack_require__(36) +var ieee754 = __webpack_require__(37) +var isArray = __webpack_require__(38) exports.Buffer = Buffer exports.SlowBuffer = SlowBuffer @@ -3185,10 +3575,10 @@ function isnan (val) { return val !== val // eslint-disable-line no-self-compare } -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(32))) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(35))) /***/ }), -/* 22 */ +/* 25 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4095,7 +4485,7 @@ CryptoJS.mode.ECB = function () { module.exports = CryptoJS; /***/ }), -/* 23 */ +/* 26 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4238,7 +4628,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 24 */ +/* 27 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4250,11 +4640,11 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; -exports.prepareParams = prepareParams; -exports.isAuthSupported = isAuthSupported; +exports.getURL = getURL; exports.handleResponse = handleResponse; +exports.isAuthSupported = isAuthSupported; +exports.prepareParams = prepareParams; exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -4291,19 +4681,280 @@ function handleResponse(modules, serverResponse) { function validateParams() {} /***/ }), -/* 25 */ +/* 28 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; /***/ }), -/* 26 */ +/* 29 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var formats = __webpack_require__(21); + +var has = Object.prototype.hasOwnProperty; +var isArray = Array.isArray; + +var hexTable = (function () { + var array = []; + for (var i = 0; i < 256; ++i) { + array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase()); + } + + return array; +}()); + +var compactQueue = function compactQueue(queue) { + while (queue.length > 1) { + var item = queue.pop(); + var obj = item.obj[item.prop]; + + if (isArray(obj)) { + var compacted = []; + + for (var j = 0; j < obj.length; ++j) { + if (typeof obj[j] !== 'undefined') { + compacted.push(obj[j]); + } + } + + item.obj[item.prop] = compacted; + } + } +}; + +var arrayToObject = function arrayToObject(source, options) { + var obj = options && options.plainObjects ? Object.create(null) : {}; + for (var i = 0; i < source.length; ++i) { + if (typeof source[i] !== 'undefined') { + obj[i] = source[i]; + } + } + + return obj; +}; + +var merge = function merge(target, source, options) { + /* eslint no-param-reassign: 0 */ + if (!source) { + return target; + } + + if (typeof source !== 'object') { + if (isArray(target)) { + target.push(source); + } else if (target && typeof target === 'object') { + if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) { + target[source] = true; + } + } else { + return [target, source]; + } + + return target; + } + + if (!target || typeof target !== 'object') { + return [target].concat(source); + } + + var mergeTarget = target; + if (isArray(target) && !isArray(source)) { + mergeTarget = arrayToObject(target, options); + } + + if (isArray(target) && isArray(source)) { + source.forEach(function (item, i) { + if (has.call(target, i)) { + var targetItem = target[i]; + if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') { + target[i] = merge(targetItem, item, options); + } else { + target.push(item); + } + } else { + target[i] = item; + } + }); + return target; + } + + return Object.keys(source).reduce(function (acc, key) { + var value = source[key]; + + if (has.call(acc, key)) { + acc[key] = merge(acc[key], value, options); + } else { + acc[key] = value; + } + return acc; + }, mergeTarget); +}; + +var assign = function assignSingleSource(target, source) { + return Object.keys(source).reduce(function (acc, key) { + acc[key] = source[key]; + return acc; + }, target); +}; + +var decode = function (str, decoder, charset) { + var strWithoutPlus = str.replace(/\+/g, ' '); + if (charset === 'iso-8859-1') { + // unescape never throws, no try...catch needed: + return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape); + } + // utf-8 + try { + return decodeURIComponent(strWithoutPlus); + } catch (e) { + return strWithoutPlus; + } +}; + +var encode = function encode(str, defaultEncoder, charset, kind, format) { + // This code was originally written by Brian White (mscdex) for the io.js core querystring library. + // It has been adapted here for stricter adherence to RFC 3986 + if (str.length === 0) { + return str; + } + + var string = str; + if (typeof str === 'symbol') { + string = Symbol.prototype.toString.call(str); + } else if (typeof str !== 'string') { + string = String(str); + } + + if (charset === 'iso-8859-1') { + return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) { + return '%26%23' + parseInt($0.slice(2), 16) + '%3B'; + }); + } + + var out = ''; + for (var i = 0; i < string.length; ++i) { + var c = string.charCodeAt(i); + + if ( + c === 0x2D // - + || c === 0x2E // . + || c === 0x5F // _ + || c === 0x7E // ~ + || (c >= 0x30 && c <= 0x39) // 0-9 + || (c >= 0x41 && c <= 0x5A) // a-z + || (c >= 0x61 && c <= 0x7A) // A-Z + || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( ) + ) { + out += string.charAt(i); + continue; + } + + if (c < 0x80) { + out = out + hexTable[c]; + continue; + } + + if (c < 0x800) { + out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]); + continue; + } + + if (c < 0xD800 || c >= 0xE000) { + out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]); + continue; + } + + i += 1; + c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF)); + /* eslint operator-linebreak: [2, "before"] */ + out += hexTable[0xF0 | (c >> 18)] + + hexTable[0x80 | ((c >> 12) & 0x3F)] + + hexTable[0x80 | ((c >> 6) & 0x3F)] + + hexTable[0x80 | (c & 0x3F)]; + } + + return out; +}; + +var compact = function compact(value) { + var queue = [{ obj: { o: value }, prop: 'o' }]; + var refs = []; + + for (var i = 0; i < queue.length; ++i) { + var item = queue[i]; + var obj = item.obj[item.prop]; + + var keys = Object.keys(obj); + for (var j = 0; j < keys.length; ++j) { + var key = keys[j]; + var val = obj[key]; + if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) { + queue.push({ obj: obj, prop: key }); + refs.push(val); + } + } + } + + compactQueue(queue); + + return value; +}; + +var isRegExp = function isRegExp(obj) { + return Object.prototype.toString.call(obj) === '[object RegExp]'; +}; + +var isBuffer = function isBuffer(obj) { + if (!obj || typeof obj !== 'object') { + return false; + } + + return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj)); +}; + +var combine = function combine(a, b) { + return [].concat(a, b); +}; + +var maybeMap = function maybeMap(val, fn) { + if (isArray(val)) { + var mapped = []; + for (var i = 0; i < val.length; i += 1) { + mapped.push(fn(val[i])); + } + return mapped; + } + return fn(val); +}; + +module.exports = { + arrayToObject: arrayToObject, + assign: assign, + combine: combine, + compact: compact, + decode: decode, + encode: encode, + isBuffer: isBuffer, + isRegExp: isRegExp, + maybeMap: maybeMap, + merge: merge +}; + + +/***/ }), +/* 30 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + /** * Check if `obj` is an object. * @@ -4311,16 +4962,15 @@ function validateParams() {} * @return {Boolean} * @api private */ - function isObject(obj) { - return null !== obj && 'object' === typeof obj; + return obj !== null && _typeof(obj) === 'object'; } module.exports = isObject; - +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pcy1vYmplY3QuanMiXSwibmFtZXMiOlsiaXNPYmplY3QiLCJvYmoiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7Ozs7Ozs7QUFRQSxTQUFTQSxRQUFULENBQWtCQyxHQUFsQixFQUF1QjtBQUNyQixTQUFPQSxHQUFHLEtBQUssSUFBUixJQUFnQixRQUFPQSxHQUFQLE1BQWUsUUFBdEM7QUFDRDs7QUFFREMsTUFBTSxDQUFDQyxPQUFQLEdBQWlCSCxRQUFqQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ2hlY2sgaWYgYG9iamAgaXMgYW4gb2JqZWN0LlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBvYmpcbiAqIEByZXR1cm4ge0Jvb2xlYW59XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBpc09iamVjdChvYmopIHtcbiAgcmV0dXJuIG9iaiAhPT0gbnVsbCAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0Jztcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBpc09iamVjdDtcbiJdfQ== /***/ }), -/* 27 */ +/* 31 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4343,29 +4993,29 @@ var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(13)); var _typeof2 = _interopRequireDefault(__webpack_require__(7)); -var _cborJs = _interopRequireDefault(__webpack_require__(28)); +var _cborJs = _interopRequireDefault(__webpack_require__(32)); -var _pubnubCommon = _interopRequireDefault(__webpack_require__(29)); +var _pubnubCommon = _interopRequireDefault(__webpack_require__(33)); -var _networking = _interopRequireDefault(__webpack_require__(121)); +var _networking = _interopRequireDefault(__webpack_require__(125)); -var _hmacSha = _interopRequireDefault(__webpack_require__(22)); +var _hmacSha = _interopRequireDefault(__webpack_require__(25)); -var _web = _interopRequireDefault(__webpack_require__(122)); +var _web = _interopRequireDefault(__webpack_require__(126)); -var _common = _interopRequireDefault(__webpack_require__(123)); +var _common = _interopRequireDefault(__webpack_require__(127)); -var _webNode = __webpack_require__(124); +var _webNode = __webpack_require__(128); var _flow_interfaces = __webpack_require__(2); -var _web2 = _interopRequireDefault(__webpack_require__(131)); +var _web2 = _interopRequireDefault(__webpack_require__(148)); -var _web3 = _interopRequireDefault(__webpack_require__(132)); +var _web3 = _interopRequireDefault(__webpack_require__(149)); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } function sendBeacon(url) { if (navigator && navigator.sendBeacon) { @@ -4494,7 +5144,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 28 */ +/* 32 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/* @@ -4907,16 +5557,16 @@ else {} /***/ }), -/* 29 */ +/* 33 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; -var _interopRequireWildcard = __webpack_require__(30); - var _interopRequireDefault = __webpack_require__(0); +var _typeof = __webpack_require__(7); + Object.defineProperty(exports, "__esModule", { value: true }); @@ -4930,157 +5580,159 @@ var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); var _config = _interopRequireDefault(__webpack_require__(8)); -var _index = _interopRequireDefault(__webpack_require__(20)); +var _index = _interopRequireDefault(__webpack_require__(23)); -var _subscription_manager = _interopRequireDefault(__webpack_require__(36)); +var _subscription_manager = _interopRequireDefault(__webpack_require__(39)); -var _telemetry_manager = _interopRequireDefault(__webpack_require__(40)); +var _telemetry_manager = _interopRequireDefault(__webpack_require__(43)); -var _push_payload = _interopRequireDefault(__webpack_require__(41)); +var _push_payload = _interopRequireDefault(__webpack_require__(44)); -var _listener_manager = _interopRequireDefault(__webpack_require__(23)); +var _listener_manager = _interopRequireDefault(__webpack_require__(26)); -var _token_manager = _interopRequireDefault(__webpack_require__(44)); +var _token_manager = _interopRequireDefault(__webpack_require__(47)); var _endpoint = _interopRequireDefault(__webpack_require__(18)); var _utils = __webpack_require__(3); -var addChannelsChannelGroupConfig = _interopRequireWildcard(__webpack_require__(49)); +var addChannelsChannelGroupConfig = _interopRequireWildcard(__webpack_require__(52)); + +var removeChannelsChannelGroupConfig = _interopRequireWildcard(__webpack_require__(53)); -var removeChannelsChannelGroupConfig = _interopRequireWildcard(__webpack_require__(50)); +var deleteChannelGroupConfig = _interopRequireWildcard(__webpack_require__(54)); -var deleteChannelGroupConfig = _interopRequireWildcard(__webpack_require__(51)); +var listChannelGroupsConfig = _interopRequireWildcard(__webpack_require__(55)); -var listChannelGroupsConfig = _interopRequireWildcard(__webpack_require__(52)); +var listChannelsInChannelGroupConfig = _interopRequireWildcard(__webpack_require__(56)); -var listChannelsInChannelGroupConfig = _interopRequireWildcard(__webpack_require__(53)); +var addPushChannelsConfig = _interopRequireWildcard(__webpack_require__(57)); -var addPushChannelsConfig = _interopRequireWildcard(__webpack_require__(54)); +var removePushChannelsConfig = _interopRequireWildcard(__webpack_require__(58)); -var removePushChannelsConfig = _interopRequireWildcard(__webpack_require__(55)); +var listPushChannelsConfig = _interopRequireWildcard(__webpack_require__(59)); -var listPushChannelsConfig = _interopRequireWildcard(__webpack_require__(56)); +var removeDevicePushConfig = _interopRequireWildcard(__webpack_require__(60)); -var removeDevicePushConfig = _interopRequireWildcard(__webpack_require__(57)); +var presenceLeaveEndpointConfig = _interopRequireWildcard(__webpack_require__(61)); -var presenceLeaveEndpointConfig = _interopRequireWildcard(__webpack_require__(58)); +var presenceWhereNowEndpointConfig = _interopRequireWildcard(__webpack_require__(62)); -var presenceWhereNowEndpointConfig = _interopRequireWildcard(__webpack_require__(59)); +var presenceHeartbeatEndpointConfig = _interopRequireWildcard(__webpack_require__(63)); -var presenceHeartbeatEndpointConfig = _interopRequireWildcard(__webpack_require__(60)); +var presenceGetStateConfig = _interopRequireWildcard(__webpack_require__(64)); -var presenceGetStateConfig = _interopRequireWildcard(__webpack_require__(61)); +var presenceSetStateConfig = _interopRequireWildcard(__webpack_require__(65)); -var presenceSetStateConfig = _interopRequireWildcard(__webpack_require__(62)); +var presenceHereNowConfig = _interopRequireWildcard(__webpack_require__(66)); -var presenceHereNowConfig = _interopRequireWildcard(__webpack_require__(63)); +var addMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(67)); -var addMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(64)); +var removeMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(68)); -var removeMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(65)); +var getMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(69)); -var getMessageActionEndpointConfig = _interopRequireWildcard(__webpack_require__(66)); +var _file = __webpack_require__(28); -var _file = __webpack_require__(25); +var fileUploadTypes = _interopRequireWildcard(__webpack_require__(70)); -var fileUploadTypes = _interopRequireWildcard(__webpack_require__(67)); +var _list_files = _interopRequireDefault(__webpack_require__(71)); -var _list_files = _interopRequireDefault(__webpack_require__(68)); +var _generate_upload_url = _interopRequireDefault(__webpack_require__(72)); -var _generate_upload_url = _interopRequireDefault(__webpack_require__(69)); +var _publish_file = _interopRequireDefault(__webpack_require__(73)); -var _publish_file = _interopRequireDefault(__webpack_require__(70)); +var _send_file = _interopRequireDefault(__webpack_require__(74)); -var _send_file = _interopRequireDefault(__webpack_require__(71)); +var _get_file_url = _interopRequireDefault(__webpack_require__(76)); -var _get_file_url = _interopRequireDefault(__webpack_require__(73)); +var _download_file = _interopRequireDefault(__webpack_require__(77)); -var _download_file = _interopRequireDefault(__webpack_require__(74)); +var _delete_file = _interopRequireDefault(__webpack_require__(78)); -var _delete_file = _interopRequireDefault(__webpack_require__(75)); +var _get_all = _interopRequireDefault(__webpack_require__(79)); -var _get_all = _interopRequireDefault(__webpack_require__(76)); +var _get = _interopRequireDefault(__webpack_require__(85)); -var _get = _interopRequireDefault(__webpack_require__(82)); +var _set = _interopRequireDefault(__webpack_require__(86)); -var _set = _interopRequireDefault(__webpack_require__(83)); +var _remove = _interopRequireDefault(__webpack_require__(87)); -var _remove = _interopRequireDefault(__webpack_require__(84)); +var _get_all2 = _interopRequireDefault(__webpack_require__(88)); -var _get_all2 = _interopRequireDefault(__webpack_require__(85)); +var _get2 = _interopRequireDefault(__webpack_require__(89)); -var _get2 = _interopRequireDefault(__webpack_require__(86)); +var _set2 = _interopRequireDefault(__webpack_require__(90)); -var _set2 = _interopRequireDefault(__webpack_require__(87)); +var _remove2 = _interopRequireDefault(__webpack_require__(91)); -var _remove2 = _interopRequireDefault(__webpack_require__(88)); +var _get3 = _interopRequireDefault(__webpack_require__(92)); -var _get3 = _interopRequireDefault(__webpack_require__(89)); +var _set3 = _interopRequireDefault(__webpack_require__(93)); -var _set3 = _interopRequireDefault(__webpack_require__(90)); +var _get4 = _interopRequireDefault(__webpack_require__(94)); -var _get4 = _interopRequireDefault(__webpack_require__(91)); +var _set4 = _interopRequireDefault(__webpack_require__(95)); -var _set4 = _interopRequireDefault(__webpack_require__(92)); +var createUserEndpointConfig = _interopRequireWildcard(__webpack_require__(96)); -var createUserEndpointConfig = _interopRequireWildcard(__webpack_require__(93)); +var updateUserEndpointConfig = _interopRequireWildcard(__webpack_require__(97)); -var updateUserEndpointConfig = _interopRequireWildcard(__webpack_require__(94)); +var deleteUserEndpointConfig = _interopRequireWildcard(__webpack_require__(98)); -var deleteUserEndpointConfig = _interopRequireWildcard(__webpack_require__(95)); +var getUserEndpointConfig = _interopRequireWildcard(__webpack_require__(99)); -var getUserEndpointConfig = _interopRequireWildcard(__webpack_require__(96)); +var getUsersEndpointConfig = _interopRequireWildcard(__webpack_require__(100)); -var getUsersEndpointConfig = _interopRequireWildcard(__webpack_require__(97)); +var createSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(101)); -var createSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(98)); +var updateSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(102)); -var updateSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(99)); +var deleteSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(103)); -var deleteSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(100)); +var getSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(104)); -var getSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(101)); +var getSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(105)); -var getSpaceEndpointConfig = _interopRequireWildcard(__webpack_require__(102)); +var getMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(106)); -var getMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(103)); +var addMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(107)); -var addMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(104)); +var updateMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(108)); -var updateMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(105)); +var removeMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(109)); -var removeMembersEndpointConfig = _interopRequireWildcard(__webpack_require__(106)); +var getMembershipsEndpointConfig = _interopRequireWildcard(__webpack_require__(110)); -var getMembershipsEndpointConfig = _interopRequireWildcard(__webpack_require__(107)); +var updateMembershipsEndpointConfig = _interopRequireWildcard(__webpack_require__(111)); -var updateMembershipsEndpointConfig = _interopRequireWildcard(__webpack_require__(108)); +var joinSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(112)); -var joinSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(109)); +var leaveSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(113)); -var leaveSpacesEndpointConfig = _interopRequireWildcard(__webpack_require__(110)); +var auditEndpointConfig = _interopRequireWildcard(__webpack_require__(114)); -var auditEndpointConfig = _interopRequireWildcard(__webpack_require__(111)); +var grantEndpointConfig = _interopRequireWildcard(__webpack_require__(115)); -var grantEndpointConfig = _interopRequireWildcard(__webpack_require__(112)); +var grantTokenEndpointConfig = _interopRequireWildcard(__webpack_require__(116)); -var grantTokenEndpointConfig = _interopRequireWildcard(__webpack_require__(113)); +var _revoke_token = _interopRequireDefault(__webpack_require__(117)); -var publishEndpointConfig = _interopRequireWildcard(__webpack_require__(114)); +var publishEndpointConfig = _interopRequireWildcard(__webpack_require__(118)); -var signalEndpointConfig = _interopRequireWildcard(__webpack_require__(115)); +var signalEndpointConfig = _interopRequireWildcard(__webpack_require__(119)); -var historyEndpointConfig = _interopRequireWildcard(__webpack_require__(116)); +var historyEndpointConfig = _interopRequireWildcard(__webpack_require__(120)); -var deleteMessagesEndpointConfig = _interopRequireWildcard(__webpack_require__(117)); +var deleteMessagesEndpointConfig = _interopRequireWildcard(__webpack_require__(121)); -var messageCountsEndpointConfig = _interopRequireWildcard(__webpack_require__(118)); +var messageCountsEndpointConfig = _interopRequireWildcard(__webpack_require__(122)); -var fetchMessagesEndpointConfig = _interopRequireWildcard(__webpack_require__(119)); +var fetchMessagesEndpointConfig = _interopRequireWildcard(__webpack_require__(123)); -var timeEndpointConfig = _interopRequireWildcard(__webpack_require__(24)); +var timeEndpointConfig = _interopRequireWildcard(__webpack_require__(27)); -var subscribeEndpointConfig = _interopRequireWildcard(__webpack_require__(120)); +var subscribeEndpointConfig = _interopRequireWildcard(__webpack_require__(124)); var _operations = _interopRequireDefault(__webpack_require__(1)); @@ -5090,7 +5742,11 @@ var _flow_interfaces = __webpack_require__(2); var _uuid = _interopRequireDefault(__webpack_require__(17)); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } + +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } @@ -5119,6 +5775,7 @@ var _default = function () { (0, _defineProperty2["default"])(this, "grant", void 0); (0, _defineProperty2["default"])(this, "grantToken", void 0); (0, _defineProperty2["default"])(this, "audit", void 0); + (0, _defineProperty2["default"])(this, "revokeToken", void 0); (0, _defineProperty2["default"])(this, "subscribe", void 0); (0, _defineProperty2["default"])(this, "signal", void 0); (0, _defineProperty2["default"])(this, "presence", void 0); @@ -5166,10 +5823,7 @@ var _default = function () { (0, _defineProperty2["default"])(this, "removeAllListeners", void 0); (0, _defineProperty2["default"])(this, "parseToken", void 0); (0, _defineProperty2["default"])(this, "setToken", void 0); - (0, _defineProperty2["default"])(this, "setTokens", void 0); (0, _defineProperty2["default"])(this, "getToken", void 0); - (0, _defineProperty2["default"])(this, "getTokens", void 0); - (0, _defineProperty2["default"])(this, "clearTokens", void 0); (0, _defineProperty2["default"])(this, "getAuthKey", void 0); (0, _defineProperty2["default"])(this, "setAuthKey", void 0); (0, _defineProperty2["default"])(this, "setCipherKey", void 0); @@ -5181,12 +5835,10 @@ var _default = function () { (0, _defineProperty2["default"])(this, "setProxy", void 0); (0, _defineProperty2["default"])(this, "encrypt", void 0); (0, _defineProperty2["default"])(this, "decrypt", void 0); - var db = setup.db, - networking = setup.networking, + var networking = setup.networking, cbor = setup.cbor; var config = this._config = new _config["default"]({ - setup: setup, - db: db + setup: setup }); var crypto = new _index["default"]({ config: config @@ -5245,10 +5897,7 @@ var _default = function () { this.removeAllListeners = listenerManager.removeAllListeners.bind(listenerManager); this.parseToken = tokenManager.parseToken.bind(tokenManager); this.setToken = tokenManager.setToken.bind(tokenManager); - this.setTokens = tokenManager.setTokens.bind(tokenManager); this.getToken = tokenManager.getToken.bind(tokenManager); - this.getTokens = tokenManager.getTokens.bind(tokenManager); - this.clearTokens = tokenManager.clearTokens.bind(tokenManager); this.channelGroups = { listGroups: _endpoint["default"].bind(this, modules, listChannelGroupsConfig), listChannels: _endpoint["default"].bind(this, modules, listChannelsInChannelGroupConfig), @@ -5269,6 +5918,7 @@ var _default = function () { this.grant = _endpoint["default"].bind(this, modules, grantEndpointConfig); this.grantToken = _endpoint["default"].bind(this, modules, grantTokenEndpointConfig); this.audit = _endpoint["default"].bind(this, modules, auditEndpointConfig); + this.revokeToken = _endpoint["default"].bind(this, modules, _revoke_token["default"]); this.publish = _endpoint["default"].bind(this, modules, publishEndpointConfig); this.fire = function (args, callback) { @@ -5452,67 +6102,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 30 */ -/***/ (function(module, exports, __webpack_require__) { - -var _typeof = __webpack_require__(7); - -function _getRequireWildcardCache() { - if (typeof WeakMap !== "function") return null; - var cache = new WeakMap(); - - _getRequireWildcardCache = function _getRequireWildcardCache() { - return cache; - }; - - return cache; -} - -function _interopRequireWildcard(obj) { - if (obj && obj.__esModule) { - return obj; - } - - if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { - return { - "default": obj - }; - } - - var cache = _getRequireWildcardCache(); - - if (cache && cache.has(obj)) { - return cache.get(obj); - } - - var newObj = {}; - var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; - - for (var key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) { - var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; - - if (desc && (desc.get || desc.set)) { - Object.defineProperty(newObj, key, desc); - } else { - newObj[key] = obj[key]; - } - } - } - - newObj["default"] = obj; - - if (cache) { - cache.set(obj, newObj); - } - - return newObj; -} - -module.exports = _interopRequireWildcard; - -/***/ }), -/* 31 */ +/* 34 */ /***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*! lil-uuid - v0.1 - MIT License - https://github.com/lil-js/uuid */ @@ -5556,7 +6146,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ /***/ }), -/* 32 */ +/* 35 */ /***/ (function(module, exports) { var g; @@ -5582,7 +6172,7 @@ module.exports = g; /***/ }), -/* 33 */ +/* 36 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5713,9 +6303,7 @@ function fromByteArray (uint8) { // go through the array every three bytes, we'll deal with trailing stuff later for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) { - parts.push(encodeChunk( - uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength) - )) + parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength))) } // pad the end with zeros, but make sure to not forget the extra bytes @@ -5741,9 +6329,10 @@ function fromByteArray (uint8) { /***/ }), -/* 34 */ +/* 37 */ /***/ (function(module, exports) { +/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ exports.read = function (buffer, offset, isLE, mLen, nBytes) { var e, m var eLen = (nBytes * 8) - mLen - 1 @@ -5831,7 +6420,7 @@ exports.write = function (buffer, value, offset, isLE, mLen, nBytes) { /***/ }), -/* 35 */ +/* 38 */ /***/ (function(module, exports) { var toString = {}.toString; @@ -5842,7 +6431,7 @@ module.exports = Array.isArray || function (arr) { /***/ }), -/* 36 */ +/* 39 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5863,15 +6452,15 @@ var _createClass2 = _interopRequireDefault(__webpack_require__(6)); var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); -var _cryptography = _interopRequireDefault(__webpack_require__(20)); +var _cryptography = _interopRequireDefault(__webpack_require__(23)); var _config = _interopRequireDefault(__webpack_require__(8)); -var _listener_manager = _interopRequireDefault(__webpack_require__(23)); +var _listener_manager = _interopRequireDefault(__webpack_require__(26)); -var _reconnection_manager = _interopRequireDefault(__webpack_require__(37)); +var _reconnection_manager = _interopRequireDefault(__webpack_require__(40)); -var _deduping_manager = _interopRequireDefault(__webpack_require__(38)); +var _deduping_manager = _interopRequireDefault(__webpack_require__(41)); var _utils = _interopRequireDefault(__webpack_require__(3)); @@ -6590,7 +7179,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 37 */ +/* 40 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6609,7 +7198,7 @@ var _createClass2 = _interopRequireDefault(__webpack_require__(6)); var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); -var _time = _interopRequireDefault(__webpack_require__(24)); +var _time = _interopRequireDefault(__webpack_require__(27)); var _flow_interfaces = __webpack_require__(2); @@ -6659,7 +7248,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 38 */ +/* 41 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -6739,7 +7328,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 39 */ +/* 42 */ /***/ (function(module, exports) { // shim for using process in browser @@ -6929,7 +7518,7 @@ process.umask = function() { return 0; }; /***/ }), -/* 40 */ +/* 43 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7090,7 +7679,8 @@ var _default = function () { break; case _operations["default"].PNAccessManagerGrantToken: - operation = 'pam3'; + case _operations["default"].PNAccessManagerRevokeToken: + operation = 'pamv3'; break; default: @@ -7108,7 +7698,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 41 */ +/* 44 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7119,11 +7709,11 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); -exports["default"] = exports.FCMNotificationPayload = exports.MPNSNotificationPayload = exports.APNSNotificationPayload = void 0; +exports["default"] = exports.MPNSNotificationPayload = exports.FCMNotificationPayload = exports.APNSNotificationPayload = void 0; -var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(42)); +var _objectWithoutProperties2 = _interopRequireDefault(__webpack_require__(45)); -var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(19)); +var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(22)); var _inherits2 = _interopRequireDefault(__webpack_require__(14)); @@ -7139,15 +7729,33 @@ var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); var _flow_interfaces = __webpack_require__(2); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +var _excluded = ["notification", "data"]; + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var BaseNotificationPayload = function () { + function BaseNotificationPayload(payload, title, body) { + (0, _classCallCheck2["default"])(this, BaseNotificationPayload); + (0, _defineProperty2["default"])(this, "_subtitle", void 0); + (0, _defineProperty2["default"])(this, "_payload", void 0); + (0, _defineProperty2["default"])(this, "_badge", void 0); + (0, _defineProperty2["default"])(this, "_sound", void 0); + (0, _defineProperty2["default"])(this, "_title", void 0); + (0, _defineProperty2["default"])(this, "_body", void 0); + this._payload = payload; + + this._setDefaultPayloadStructure(); + + this.title = title; + this.body = body; + } + (0, _createClass2["default"])(BaseNotificationPayload, [{ key: "payload", get: function get() { @@ -7178,25 +7786,7 @@ var BaseNotificationPayload = function () { set: function set(value) { this._sound = value; } - }]); - - function BaseNotificationPayload(payload, title, body) { - (0, _classCallCheck2["default"])(this, BaseNotificationPayload); - (0, _defineProperty2["default"])(this, "_subtitle", void 0); - (0, _defineProperty2["default"])(this, "_payload", void 0); - (0, _defineProperty2["default"])(this, "_badge", void 0); - (0, _defineProperty2["default"])(this, "_sound", void 0); - (0, _defineProperty2["default"])(this, "_title", void 0); - (0, _defineProperty2["default"])(this, "_body", void 0); - this._payload = payload; - - this._setDefaultPayloadStructure(); - - this.title = title; - this.body = body; - } - - (0, _createClass2["default"])(BaseNotificationPayload, [{ + }, { key: "_setDefaultPayloadStructure", value: function _setDefaultPayloadStructure() {} }, { @@ -7230,6 +7820,72 @@ var APNSNotificationPayload = function (_BaseNotificationPayl) { } (0, _createClass2["default"])(APNSNotificationPayload, [{ + key: "configurations", + set: function set(value) { + if (!value || !value.length) return; + this._configurations = value; + } + }, { + key: "notification", + get: function get() { + return this._payload.aps; + } + }, { + key: "title", + get: function get() { + return this._title; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.title = value; + this._title = value; + } + }, { + key: "subtitle", + get: function get() { + return this._subtitle; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.subtitle = value; + this._subtitle = value; + } + }, { + key: "body", + get: function get() { + return this._body; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.body = value; + this._body = value; + } + }, { + key: "badge", + get: function get() { + return this._badge; + }, + set: function set(value) { + if (value === undefined || value === null) return; + this._payload.aps.badge = value; + this._badge = value; + } + }, { + key: "sound", + get: function get() { + return this._sound; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.sound = value; + this._sound = value; + } + }, { + key: "silent", + set: function set(value) { + this._isSilent = value; + } + }, { key: "_setDefaultPayloadStructure", value: function _setDefaultPayloadStructure() { this._payload.aps = { @@ -7333,72 +7989,6 @@ var APNSNotificationPayload = function (_BaseNotificationPayl) { return objectifiedTarget; } - }, { - key: "configurations", - set: function set(value) { - if (!value || !value.length) return; - this._configurations = value; - } - }, { - key: "notification", - get: function get() { - return this._payload.aps; - } - }, { - key: "title", - get: function get() { - return this._title; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.title = value; - this._title = value; - } - }, { - key: "subtitle", - get: function get() { - return this._subtitle; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.subtitle = value; - this._subtitle = value; - } - }, { - key: "body", - get: function get() { - return this._body; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.body = value; - this._body = value; - } - }, { - key: "badge", - get: function get() { - return this._badge; - }, - set: function set(value) { - if (value === undefined || value === null) return; - this._payload.aps.badge = value; - this._badge = value; - } - }, { - key: "sound", - get: function get() { - return this._sound; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.sound = value; - this._sound = value; - } - }, { - key: "silent", - set: function set(value) { - this._isSilent = value; - } }]); return APNSNotificationPayload; }(BaseNotificationPayload); @@ -7428,11 +8018,6 @@ var MPNSNotificationPayload = function (_BaseNotificationPayl2) { } (0, _createClass2["default"])(MPNSNotificationPayload, [{ - key: "toObject", - value: function toObject() { - return Object.keys(this._payload).length ? _objectSpread({}, this._payload) : null; - } - }, { key: "backContent", get: function get() { return this._backContent; @@ -7506,6 +8091,11 @@ var MPNSNotificationPayload = function (_BaseNotificationPayl2) { set: function set(value) { this.count = value; } + }, { + key: "toObject", + value: function toObject() { + return Object.keys(this._payload).length ? _objectSpread({}, this._payload) : null; + } }]); return MPNSNotificationPayload; }(BaseNotificationPayload); @@ -7534,44 +8124,6 @@ var FCMNotificationPayload = function (_BaseNotificationPayl3) { } (0, _createClass2["default"])(FCMNotificationPayload, [{ - key: "_setDefaultPayloadStructure", - value: function _setDefaultPayloadStructure() { - this._payload.notification = {}; - this._payload.data = {}; - } - }, { - key: "toObject", - value: function toObject() { - var data = _objectSpread({}, this._payload.data); - - var notification = null; - var payload = {}; - - if (Object.keys(this._payload).length > 2) { - var _this$_payload = this._payload, - initialNotification = _this$_payload.notification, - initialData = _this$_payload.data, - additionalData = (0, _objectWithoutProperties2["default"])(_this$_payload, ["notification", "data"]); - data = _objectSpread(_objectSpread({}, data), additionalData); - } - - if (this._isSilent) { - data.notification = this._payload.notification; - } else { - notification = this._payload.notification; - } - - if (Object.keys(data).length) { - payload.data = data; - } - - if (notification && Object.keys(notification).length) { - payload.notification = notification; - } - - return Object.keys(payload).length ? payload : null; - } - }, { key: "notification", get: function get() { return this._payload.notification; @@ -7636,26 +8188,88 @@ var FCMNotificationPayload = function (_BaseNotificationPayl3) { set: function set(value) { this._isSilent = value; } - }]); - return FCMNotificationPayload; -}(BaseNotificationPayload); - -exports.FCMNotificationPayload = FCMNotificationPayload; - -var NotificationsPayload = function () { - (0, _createClass2["default"])(NotificationsPayload, [{ - key: "debugging", - set: function set(value) { - this._debugging = value; - } }, { - key: "title", - get: function get() { - return this._title; + key: "_setDefaultPayloadStructure", + value: function _setDefaultPayloadStructure() { + this._payload.notification = {}; + this._payload.data = {}; } }, { - key: "body", - get: function get() { + key: "toObject", + value: function toObject() { + var data = _objectSpread({}, this._payload.data); + + var notification = null; + var payload = {}; + + if (Object.keys(this._payload).length > 2) { + var _this$_payload = this._payload, + initialNotification = _this$_payload.notification, + initialData = _this$_payload.data, + additionalData = (0, _objectWithoutProperties2["default"])(_this$_payload, _excluded); + data = _objectSpread(_objectSpread({}, data), additionalData); + } + + if (this._isSilent) { + data.notification = this._payload.notification; + } else { + notification = this._payload.notification; + } + + if (Object.keys(data).length) { + payload.data = data; + } + + if (notification && Object.keys(notification).length) { + payload.notification = notification; + } + + return Object.keys(payload).length ? payload : null; + } + }]); + return FCMNotificationPayload; +}(BaseNotificationPayload); + +exports.FCMNotificationPayload = FCMNotificationPayload; + +var NotificationsPayload = function () { + function NotificationsPayload(title, body) { + (0, _classCallCheck2["default"])(this, NotificationsPayload); + (0, _defineProperty2["default"])(this, "_payload", void 0); + (0, _defineProperty2["default"])(this, "_debugging", void 0); + (0, _defineProperty2["default"])(this, "_subtitle", void 0); + (0, _defineProperty2["default"])(this, "_badge", void 0); + (0, _defineProperty2["default"])(this, "_sound", void 0); + (0, _defineProperty2["default"])(this, "_title", void 0); + (0, _defineProperty2["default"])(this, "_body", void 0); + (0, _defineProperty2["default"])(this, "apns", void 0); + (0, _defineProperty2["default"])(this, "mpns", void 0); + (0, _defineProperty2["default"])(this, "fcm", void 0); + this._payload = { + apns: {}, + mpns: {}, + fcm: {} + }; + this._title = title; + this._body = body; + this.apns = new APNSNotificationPayload(this._payload.apns, title, body); + this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body); + this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body); + } + + (0, _createClass2["default"])(NotificationsPayload, [{ + key: "debugging", + set: function set(value) { + this._debugging = value; + } + }, { + key: "title", + get: function get() { + return this._title; + } + }, { + key: "body", + get: function get() { return this._body; } }, { @@ -7691,33 +8305,7 @@ var NotificationsPayload = function () { this.mpns.sound = value; this.fcm.sound = value; } - }]); - - function NotificationsPayload(title, body) { - (0, _classCallCheck2["default"])(this, NotificationsPayload); - (0, _defineProperty2["default"])(this, "_payload", void 0); - (0, _defineProperty2["default"])(this, "_debugging", void 0); - (0, _defineProperty2["default"])(this, "_subtitle", void 0); - (0, _defineProperty2["default"])(this, "_badge", void 0); - (0, _defineProperty2["default"])(this, "_sound", void 0); - (0, _defineProperty2["default"])(this, "_title", void 0); - (0, _defineProperty2["default"])(this, "_body", void 0); - (0, _defineProperty2["default"])(this, "apns", void 0); - (0, _defineProperty2["default"])(this, "mpns", void 0); - (0, _defineProperty2["default"])(this, "fcm", void 0); - this._payload = { - apns: {}, - mpns: {}, - fcm: {} - }; - this._title = title; - this._body = body; - this.apns = new APNSNotificationPayload(this._payload.apns, title, body); - this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body); - this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body); - } - - (0, _createClass2["default"])(NotificationsPayload, [{ + }, { key: "buildPayload", value: function buildPayload(platforms) { var payload = {}; @@ -7761,10 +8349,10 @@ var _default = NotificationsPayload; exports["default"] = _default; /***/ }), -/* 42 */ +/* 45 */ /***/ (function(module, exports, __webpack_require__) { -var objectWithoutPropertiesLoose = __webpack_require__(43); +var objectWithoutPropertiesLoose = __webpack_require__(46); function _objectWithoutProperties(source, excluded) { if (source == null) return {}; @@ -7786,9 +8374,10 @@ function _objectWithoutProperties(source, excluded) { } module.exports = _objectWithoutProperties; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 43 */ +/* 46 */ /***/ (function(module, exports) { function _objectWithoutPropertiesLoose(source, excluded) { @@ -7807,9 +8396,10 @@ function _objectWithoutPropertiesLoose(source, excluded) { } module.exports = _objectWithoutPropertiesLoose; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 44 */ +/* 47 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -7822,8 +8412,6 @@ Object.defineProperty(exports, "__esModule", { }); exports["default"] = void 0; -var _typeof2 = _interopRequireDefault(__webpack_require__(7)); - var _classCallCheck2 = _interopRequireDefault(__webpack_require__(5)); var _createClass2 = _interopRequireDefault(__webpack_require__(6)); @@ -7839,154 +8427,48 @@ var _default = function () { (0, _classCallCheck2["default"])(this, _default); (0, _defineProperty2["default"])(this, "_config", void 0); (0, _defineProperty2["default"])(this, "_cbor", void 0); - (0, _defineProperty2["default"])(this, "_userTokens", void 0); - (0, _defineProperty2["default"])(this, "_spaceTokens", void 0); - (0, _defineProperty2["default"])(this, "_userToken", void 0); - (0, _defineProperty2["default"])(this, "_spaceToken", void 0); + (0, _defineProperty2["default"])(this, "_token", void 0); this._config = config; this._cbor = cbor; - - this._initializeTokens(); } (0, _createClass2["default"])(_default, [{ - key: "_initializeTokens", - value: function _initializeTokens() { - this._userTokens = {}; - this._spaceTokens = {}; - this._userToken = undefined; - this._spaceToken = undefined; - } - }, { - key: "_setToken", - value: function _setToken(token) { - var _this = this; - - var tokenObject = this.parseToken(token); - - if (tokenObject && tokenObject.resources) { - if (tokenObject.resources.users) { - Object.keys(tokenObject.resources.users).forEach(function (id) { - _this._userTokens[id] = token; - }); - } - - if (tokenObject.resources.spaces) { - Object.keys(tokenObject.resources.spaces).forEach(function (id) { - _this._spaceTokens[id] = token; - }); - } - } - - if (tokenObject && tokenObject.patterns) { - if (tokenObject.patterns.users && Object.keys(tokenObject.patterns.users).length > 0) { - this._userToken = token; - } - - if (tokenObject.patterns.spaces && Object.keys(tokenObject.patterns.spaces).length > 0) { - this._spaceToken = token; - } - } - } - }, { key: "setToken", value: function setToken(token) { if (token && token.length > 0) { - this._setToken(token); - } - } - }, { - key: "setTokens", - value: function setTokens(tokens) { - var _this2 = this; - - if (tokens && tokens.length && (0, _typeof2["default"])(tokens) === 'object') { - tokens.forEach(function (token) { - _this2.setToken(token); - }); - } - } - }, { - key: "getTokens", - value: function getTokens(tokenDef) { - var _this3 = this; - - var result = { - users: {}, - spaces: {} - }; - - if (tokenDef) { - if (tokenDef.user) { - result.user = this._userToken; - } - - if (tokenDef.space) { - result.space = this._spaceToken; - } - - if (tokenDef.users) { - tokenDef.users.forEach(function (user) { - result.users[user] = _this3._userTokens[user]; - }); - } - - if (tokenDef.space) { - tokenDef.spaces.forEach(function (space) { - result.spaces[space] = _this3._spaceTokens[space]; - }); - } + this._token = token; } else { - if (this._userToken) { - result.user = this._userToken; - } - - if (this._spaceToken) { - result.space = this._spaceToken; - } - - Object.keys(this._userTokens).forEach(function (user) { - result.users[user] = _this3._userTokens[user]; - }); - Object.keys(this._spaceTokens).forEach(function (space) { - result.spaces[space] = _this3._spaceTokens[space]; - }); + this._token = undefined; } - - return result; } }, { key: "getToken", - value: function getToken(type, id) { - var result; - - if (id) { - if (type === 'user') { - result = this._userTokens[id]; - } else if (type === 'space') { - result = this._spaceTokens[id]; - } - } else if (type === 'user') { - result = this._userToken; - } else if (type === 'space') { - result = this._spaceToken; - } - - return result; + value: function getToken() { + return this._token; } }, { key: "extractPermissions", value: function extractPermissions(permissions) { var permissionsResult = { - create: false, read: false, write: false, manage: false, - "delete": false + "delete": false, + get: false, + update: false, + join: false }; - if ((permissions & 16) === 16) { - permissionsResult.create = true; + if ((permissions & 128) === 128) { + permissionsResult.join = true; + } + + if ((permissions & 64) === 64) { + permissionsResult.update = true; + } + + if ((permissions & 32) === 32) { + permissionsResult.get = true; } if ((permissions & 8) === 8) { @@ -8010,94 +8492,77 @@ var _default = function () { }, { key: "parseToken", value: function parseToken(tokenString) { - var _this4 = this; + var _this = this; var parsed = this._cbor.decodeToken(tokenString); if (parsed !== undefined) { - var userResourcePermissions = Object.keys(parsed.res.usr); - var spaceResourcePermissions = Object.keys(parsed.res.spc); + var uuidResourcePermissions = parsed.res.uuid ? Object.keys(parsed.res.uuid) : []; var channelResourcePermissions = Object.keys(parsed.res.chan); var groupResourcePermissions = Object.keys(parsed.res.grp); - var userPatternPermissions = Object.keys(parsed.pat.usr); - var spacePatternPermissions = Object.keys(parsed.pat.spc); + var uuidPatternPermissions = parsed.pat.uuid ? Object.keys(parsed.pat.uuid) : []; var channelPatternPermissions = Object.keys(parsed.pat.chan); var groupPatternPermissions = Object.keys(parsed.pat.grp); var result = { version: parsed.v, timestamp: parsed.t, - ttl: parsed.ttl + ttl: parsed.ttl, + authorized_uuid: parsed.uuid }; - var userResources = userResourcePermissions.length > 0; - var spaceResources = spaceResourcePermissions.length > 0; + var uuidResources = uuidResourcePermissions.length > 0; var channelResources = channelResourcePermissions.length > 0; var groupResources = groupResourcePermissions.length > 0; - if (userResources || spaceResources || channelResources || groupResources) { + if (uuidResources || channelResources || groupResources) { result.resources = {}; - if (userResources) { - result.resources.users = {}; - userResourcePermissions.forEach(function (id) { - result.resources.users[id] = _this4.extractPermissions(parsed.res.usr[id]); - }); - } - - if (spaceResources) { - result.resources.spaces = {}; - spaceResourcePermissions.forEach(function (id) { - result.resources.spaces[id] = _this4.extractPermissions(parsed.res.spc[id]); + if (uuidResources) { + result.resources.uuids = {}; + uuidResourcePermissions.forEach(function (id) { + result.resources.uuids[id] = _this.extractPermissions(parsed.res.uuid[id]); }); } if (channelResources) { result.resources.channels = {}; channelResourcePermissions.forEach(function (id) { - result.resources.channels[id] = _this4.extractPermissions(parsed.res.chan[id]); + result.resources.channels[id] = _this.extractPermissions(parsed.res.chan[id]); }); } if (groupResources) { result.resources.groups = {}; groupResourcePermissions.forEach(function (id) { - result.resources.groups[id] = _this4.extractPermissions(parsed.res.grp[id]); + result.resources.groups[id] = _this.extractPermissions(parsed.res.grp[id]); }); } } - var userPatterns = userPatternPermissions.length > 0; - var spacePatterns = spacePatternPermissions.length > 0; + var uuidPatterns = uuidPatternPermissions.length > 0; var channelPatterns = channelPatternPermissions.length > 0; var groupPatterns = groupPatternPermissions.length > 0; - if (userPatterns || spacePatterns || channelPatterns || groupPatterns) { + if (uuidPatterns || channelPatterns || groupPatterns) { result.patterns = {}; - if (userPatterns) { - result.patterns.users = {}; - userPatternPermissions.forEach(function (id) { - result.patterns.users[id] = _this4.extractPermissions(parsed.pat.usr[id]); - }); - } - - if (spacePatterns) { - result.patterns.spaces = {}; - spacePatternPermissions.forEach(function (id) { - result.patterns.spaces[id] = _this4.extractPermissions(parsed.pat.spc[id]); + if (uuidPatterns) { + result.patterns.uuids = {}; + uuidPatternPermissions.forEach(function (id) { + result.patterns.uuids[id] = _this.extractPermissions(parsed.pat.uuid[id]); }); } if (channelPatterns) { result.patterns.channels = {}; channelPatternPermissions.forEach(function (id) { - result.patterns.channels[id] = _this4.extractPermissions(parsed.pat.chan[id]); + result.patterns.channels[id] = _this.extractPermissions(parsed.pat.chan[id]); }); } if (groupPatterns) { result.patterns.groups = {}; groupPatternPermissions.forEach(function (id) { - result.patterns.groups[id] = _this4.extractPermissions(parsed.pat.grp[id]); + result.patterns.groups[id] = _this.extractPermissions(parsed.pat.grp[id]); }); } } @@ -8112,11 +8577,6 @@ var _default = function () { return undefined; } } - }, { - key: "clearTokens", - value: function clearTokens() { - this._initializeTokens(); - } }]); return _default; }(); @@ -8125,16 +8585,16 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 45 */ +/* 48 */ /***/ (function(module, exports, __webpack_require__) { var getPrototypeOf = __webpack_require__(13); var setPrototypeOf = __webpack_require__(15); -var isNativeFunction = __webpack_require__(46); +var isNativeFunction = __webpack_require__(49); -var construct = __webpack_require__(47); +var construct = __webpack_require__(50); function _wrapNativeSuper(Class) { var _cache = typeof Map === "function" ? new Map() : undefined; @@ -8167,13 +8627,15 @@ function _wrapNativeSuper(Class) { return setPrototypeOf(Wrapper, Class); }; + module.exports["default"] = module.exports, module.exports.__esModule = true; return _wrapNativeSuper(Class); } module.exports = _wrapNativeSuper; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 46 */ +/* 49 */ /***/ (function(module, exports) { function _isNativeFunction(fn) { @@ -8181,18 +8643,20 @@ function _isNativeFunction(fn) { } module.exports = _isNativeFunction; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 47 */ +/* 50 */ /***/ (function(module, exports, __webpack_require__) { var setPrototypeOf = __webpack_require__(15); -var isNativeReflectConstruct = __webpack_require__(48); +var isNativeReflectConstruct = __webpack_require__(51); function _construct(Parent, args, Class) { if (isNativeReflectConstruct()) { module.exports = _construct = Reflect.construct; + module.exports["default"] = module.exports, module.exports.__esModule = true; } else { module.exports = _construct = function _construct(Parent, args, Class) { var a = [null]; @@ -8202,15 +8666,18 @@ function _construct(Parent, args, Class) { if (Class) setPrototypeOf(instance, Class.prototype); return instance; }; + + module.exports["default"] = module.exports, module.exports.__esModule = true; } return _construct.apply(null, arguments); } module.exports = _construct; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 48 */ +/* 51 */ /***/ (function(module, exports) { function _isNativeReflectConstruct() { @@ -8219,7 +8686,7 @@ function _isNativeReflectConstruct() { if (typeof Proxy === "function") return true; try { - Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); + Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; @@ -8227,9 +8694,10 @@ function _isNativeReflectConstruct() { } module.exports = _isNativeReflectConstruct; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 49 */ +/* 52 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8241,12 +8709,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8295,7 +8763,7 @@ function handleResponse() { } /***/ }), -/* 50 */ +/* 53 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8307,12 +8775,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8361,7 +8829,7 @@ function handleResponse() { } /***/ }), -/* 51 */ +/* 54 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8373,12 +8841,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; +exports.getRequestTimeout = getRequestTimeout; exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getRequestTimeout = getRequestTimeout; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8421,7 +8889,7 @@ function handleResponse() { } /***/ }), -/* 52 */ +/* 55 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8433,12 +8901,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8478,7 +8946,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 53 */ +/* 56 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8490,12 +8958,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8540,7 +9008,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 54 */ +/* 57 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8552,12 +9020,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8629,7 +9097,7 @@ function handleResponse() { } /***/ }), -/* 55 */ +/* 58 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8641,12 +9109,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8718,7 +9186,7 @@ function handleResponse() { } /***/ }), -/* 56 */ +/* 59 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8730,12 +9198,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8804,7 +9272,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 57 */ +/* 60 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8816,12 +9284,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8888,7 +9356,7 @@ function handleResponse() { } /***/ }), -/* 58 */ +/* 61 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8900,12 +9368,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -8956,7 +9424,7 @@ function handleResponse() { } /***/ }), -/* 59 */ +/* 62 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -8968,12 +9436,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -9023,7 +9491,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 60 */ +/* 63 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9035,12 +9503,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; +exports.getRequestTimeout = getRequestTimeout; exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getRequestTimeout = getRequestTimeout; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -9096,7 +9564,7 @@ function handleResponse() { } /***/ }), -/* 61 */ +/* 64 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9108,12 +9576,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -9180,7 +9648,7 @@ function handleResponse(modules, serverResponse, incomingParams) { } /***/ }), -/* 62 */ +/* 65 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9192,12 +9660,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -9259,7 +9727,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 63 */ +/* 66 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9271,13 +9739,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleError = handleError; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; -exports.handleError = handleError; +exports.validateParams = validateParams; var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); @@ -9287,7 +9755,7 @@ var _operations = _interopRequireDefault(__webpack_require__(1)); var _utils = _interopRequireDefault(__webpack_require__(3)); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } @@ -9440,7 +9908,7 @@ function handleError(modules, params, status) { } /***/ }), -/* 64 */ +/* 67 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9452,15 +9920,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.postURL = postURL; -exports.getRequestTimeout = getRequestTimeout; exports.getRequestHeaders = getRequestHeaders; +exports.getRequestTimeout = getRequestTimeout; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -9527,7 +9995,7 @@ function handleResponse(modules, addMessageActionResponse) { } /***/ }), -/* 65 */ +/* 68 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9539,13 +10007,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -9600,7 +10068,7 @@ function handleResponse(modules, removeMessageActionResponse) { } /***/ }), -/* 66 */ +/* 69 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9612,12 +10080,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -9678,14 +10146,14 @@ function handleResponse(modules, getMessageActionsResponse) { } /***/ }), -/* 67 */ +/* 70 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; /***/ }), -/* 68 */ +/* 71 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9707,7 +10175,7 @@ var endpoint = { return _operations["default"].PNListFilesOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'channel can\'t be empty'; } }, @@ -9722,10 +10190,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams(_, params) { var outParams = {}; @@ -9753,7 +10217,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 69 */ +/* 72 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9775,11 +10239,11 @@ var endpoint = { return _operations["default"].PNGenerateUploadUrlOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'channel can\'t be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return 'name can\'t be empty'; } }, @@ -9802,10 +10266,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams() { return {}; }, @@ -9822,7 +10282,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 70 */ +/* 73 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -9859,15 +10319,15 @@ var endpoint = { return _operations["default"].PNPublishFileOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.fileId)) { + if (!(params !== null && params !== void 0 && params.fileId)) { return "file id can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.fileName)) { + if (!(params !== null && params !== void 0 && params.fileName)) { return "file name can't be empty"; } }, @@ -9892,10 +10352,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams(_, params) { var outParams = {}; @@ -9924,7 +10380,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 71 */ +/* 74 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -10144,20 +10600,15 @@ var sendFile = function sendFile(_ref) { throw new _endpoint.PubNubError('Upload to bucket was unsuccessful', result); case 82: - retries = 5; + retries = config.fileUploadPublishRetryLimit; wasSuccessful = false; publishResult = { timetoken: '0' }; case 85: - if (!(!wasSuccessful && retries > 0)) { - _context.next = 98; - break; - } - - _context.prev = 86; - _context.next = 89; + _context.prev = 85; + _context.next = 88; return publishFile({ channel: channel, message: message, @@ -10168,24 +10619,26 @@ var sendFile = function sendFile(_ref) { ttl: ttl }); - case 89: + case 88: publishResult = _context.sent; wasSuccessful = true; - _context.next = 96; + _context.next = 95; break; - case 93: - _context.prev = 93; - _context.t17 = _context["catch"](86); + case 92: + _context.prev = 92; + _context.t17 = _context["catch"](85); retries -= 1; - case 96: - _context.next = 85; - break; + case 95: + if (!wasSuccessful && retries > 0) { + _context.next = 85; + break; + } - case 98: + case 96: if (wasSuccessful) { - _context.next = 102; + _context.next = 100; break; } @@ -10195,19 +10648,19 @@ var sendFile = function sendFile(_ref) { name: name }); - case 102: + case 100: return _context.abrupt("return", { timetoken: publishResult.timetoken, id: id, name: name }); - case 103: + case 101: case "end": return _context.stop(); } } - }, _callee, null, [[21, 73], [86, 93]]); + }, _callee, null, [[21, 73], [85, 92]]); })); return function (_x) { @@ -10238,7 +10691,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 72 */ +/* 75 */ /***/ (function(module, exports, __webpack_require__) { /** @@ -10329,9 +10782,9 @@ var runtime = (function (exports) { // This is a polyfill for %IteratorPrototype% for environments that // don't natively support it. var IteratorPrototype = {}; - IteratorPrototype[iteratorSymbol] = function () { + define(IteratorPrototype, iteratorSymbol, function () { return this; - }; + }); var getProto = Object.getPrototypeOf; var NativeIteratorPrototype = getProto && getProto(getProto(values([]))); @@ -10345,8 +10798,9 @@ var runtime = (function (exports) { var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); - GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype; - GeneratorFunctionPrototype.constructor = GeneratorFunction; + GeneratorFunction.prototype = GeneratorFunctionPrototype; + define(Gp, "constructor", GeneratorFunctionPrototype); + define(GeneratorFunctionPrototype, "constructor", GeneratorFunction); GeneratorFunction.displayName = define( GeneratorFunctionPrototype, toStringTagSymbol, @@ -10460,9 +10914,9 @@ var runtime = (function (exports) { } defineIteratorMethods(AsyncIterator.prototype); - AsyncIterator.prototype[asyncIteratorSymbol] = function () { + define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; - }; + }); exports.AsyncIterator = AsyncIterator; // Note that simple async functions are implemented on top of @@ -10655,13 +11109,13 @@ var runtime = (function (exports) { // iterator prototype chain incorrectly implement this, causing the Generator // object to not be returned from this call. This ensures that doesn't happen. // See https://github.com/facebook/regenerator/issues/274 for more details. - Gp[iteratorSymbol] = function() { + define(Gp, iteratorSymbol, function() { return this; - }; + }); - Gp.toString = function() { + define(Gp, "toString", function() { return "[object Generator]"; - }; + }); function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; @@ -10980,19 +11434,24 @@ try { } catch (accidentalStrictMode) { // This module should not be running in strict mode, so the above // assignment should always work unless something is misconfigured. Just - // in case runtime.js accidentally runs in strict mode, we can escape + // in case runtime.js accidentally runs in strict mode, in modern engines + // we can explicitly access globalThis. In older engines we can escape // strict mode using a global Function call. This could conceivably fail // if a Content Security Policy forbids using Function, but in that case // the proper solution is to fix the accidental strict mode problem. If // you've misconfigured your bundler to force strict mode and applied a // CSP to forbid Function, and you're not willing to fix either of those // problems, please detail your unique predicament in a GitHub issue. - Function("r", "regeneratorRuntime = r")(runtime); + if (typeof globalThis === "object") { + globalThis.regeneratorRuntime = runtime; + } else { + Function("r", "regeneratorRuntime = r")(runtime); + } } /***/ }), -/* 73 */ +/* 76 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11013,7 +11472,8 @@ var _default = function _default(modules, _ref) { var channel = _ref.channel, id = _ref.id, name = _ref.name; - var config = modules.config; + var config = modules.config, + networking = modules.networking; if (!channel) { throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)("channel can't be empty")); @@ -11049,17 +11509,17 @@ var _default = function _default(modules, _ref) { }).join('&'); if (queryParams !== '') { - return "https://".concat(config.origin).concat(url, "?").concat(queryParams); + return "".concat(networking.getStandardOrigin()).concat(url, "?").concat(queryParams); } - return "https://".concat(config.origin).concat(url); + return "".concat(networking.getStandardOrigin()).concat(url); }; exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 74 */ +/* 77 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11085,15 +11545,15 @@ var endpoint = { return _operations["default"].PNDownloadFileOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return "name can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.id)) { + if (!(params !== null && params !== void 0 && params.id)) { return "id can't be empty"; } }, @@ -11122,9 +11582,9 @@ var endpoint = { }, handleResponse: function () { var _handleResponse = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(_ref3, res, params) { - var _res$response$name; + var _params$cipherKey, _res$response$name; - var PubNubFile, config, cryptography, body, _params$cipherKey; + var PubNubFile, config, cryptography, body, _params$cipherKey2; return _regenerator["default"].wrap(function _callee$(_context) { while (1) { @@ -11133,13 +11593,13 @@ var endpoint = { PubNubFile = _ref3.PubNubFile, config = _ref3.config, cryptography = _ref3.cryptography; body = res.response.body; - if (!(PubNubFile.supportsEncryptFile && config.cipherKey)) { + if (!(PubNubFile.supportsEncryptFile && ((_params$cipherKey = params.cipherKey) !== null && _params$cipherKey !== void 0 ? _params$cipherKey : config.cipherKey))) { _context.next = 6; break; } _context.next = 5; - return cryptography.decrypt((_params$cipherKey = params.cipherKey) !== null && _params$cipherKey !== void 0 ? _params$cipherKey : config.cipherKey, body); + return cryptography.decrypt((_params$cipherKey2 = params.cipherKey) !== null && _params$cipherKey2 !== void 0 ? _params$cipherKey2 : config.cipherKey, body); case 5: body = _context.sent; @@ -11171,7 +11631,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 75 */ +/* 78 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11193,15 +11653,15 @@ var endpoint = { return _operations["default"].PNListFilesOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.id)) { + if (!(params !== null && params !== void 0 && params.id)) { return "file id can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return "file name can't be empty"; } }, @@ -11219,10 +11679,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams() { return {}; }, @@ -11237,7 +11693,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 76 */ +/* 79 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11270,50 +11726,46 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include, _params$include2, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if (params !== null && params !== void 0 && (_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include = 'custom'; } - if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) { + if (params !== null && params !== void 0 && (_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.totalCount) { var _params$include3; queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -11340,7 +11792,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 77 */ +/* 80 */ /***/ (function(module, exports) { function _arrayWithHoles(arr) { @@ -11348,20 +11800,24 @@ function _arrayWithHoles(arr) { } module.exports = _arrayWithHoles; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 78 */ +/* 81 */ /***/ (function(module, exports) { function _iterableToArrayLimit(arr, i) { - if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; + var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; + + if (_i == null) return; var _arr = []; var _n = true; var _d = false; - var _e = undefined; + + var _s, _e; try { - for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { + for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; @@ -11381,12 +11837,13 @@ function _iterableToArrayLimit(arr, i) { } module.exports = _iterableToArrayLimit; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 79 */ +/* 82 */ /***/ (function(module, exports, __webpack_require__) { -var arrayLikeToArray = __webpack_require__(80); +var arrayLikeToArray = __webpack_require__(83); function _unsupportedIterableToArray(o, minLen) { if (!o) return; @@ -11398,9 +11855,10 @@ function _unsupportedIterableToArray(o, minLen) { } module.exports = _unsupportedIterableToArray; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 80 */ +/* 83 */ /***/ (function(module, exports) { function _arrayLikeToArray(arr, len) { @@ -11414,9 +11872,10 @@ function _arrayLikeToArray(arr, len) { } module.exports = _arrayLikeToArray; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 81 */ +/* 84 */ /***/ (function(module, exports) { function _nonIterableRest() { @@ -11424,9 +11883,10 @@ function _nonIterableRest() { } module.exports = _nonIterableRest; +module.exports["default"] = module.exports, module.exports.__esModule = true; /***/ }), -/* 82 */ +/* 85 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11461,14 +11921,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2, _params$include$custo, _params$include; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(), include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom' @@ -11486,7 +11942,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 83 */ +/* 86 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11508,7 +11964,7 @@ var endpoint = { return _operations["default"].PNSetUUIDMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.data)) { + if (!(params !== null && params !== void 0 && params.data)) { return 'Data cannot be empty'; } }, @@ -11531,14 +11987,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2, _params$include$custo, _params$include; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(), include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom' @@ -11556,7 +12008,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 84 */ +/* 87 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11594,14 +12046,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID() }; @@ -11618,7 +12066,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 85 */ +/* 88 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11651,50 +12099,46 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include, _params$include2, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if (params !== null && params !== void 0 && (_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include = 'custom'; } - if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) { + if (params !== null && params !== void 0 && (_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.totalCount) { var _params$include3; queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -11721,7 +12165,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 86 */ +/* 89 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11743,7 +12187,7 @@ var endpoint = { return _operations["default"].PNGetChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } }, @@ -11758,10 +12202,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_, params) { var _params$include$custo, _params$include; @@ -11781,7 +12221,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 87 */ +/* 90 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11803,11 +12243,11 @@ var endpoint = { return _operations["default"].PNSetChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.data)) { + if (!(params !== null && params !== void 0 && params.data)) { return 'Data cannot be empty'; } }, @@ -11828,10 +12268,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_, params) { var _params$include$custo, _params$include; @@ -11851,7 +12287,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 88 */ +/* 91 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11873,7 +12309,7 @@ var endpoint = { return _operations["default"].PNRemoveChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } }, @@ -11891,10 +12327,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams() { return {}; }, @@ -11910,7 +12342,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 89 */ +/* 92 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -11934,7 +12366,7 @@ var endpoint = { return _operations["default"].PNGetMembersOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'UUID cannot be empty'; } }, @@ -11949,25 +12381,21 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('member'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include$UUIDF, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customUUIDFields) { queryParams.include.push('uuid.custom'); } @@ -11978,37 +12406,37 @@ var endpoint = { queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { var _params$include5; queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -12035,7 +12463,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 90 */ +/* 93 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12061,11 +12489,11 @@ var endpoint = { return _operations["default"].PNSetMembersOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.uuids) || (params === null || params === void 0 ? void 0 : params.uuids.length) === 0) { + if (!(params !== null && params !== void 0 && params.uuids) || (params === null || params === void 0 ? void 0 : params.uuids.length) === 0) { return 'UUIDs cannot be empty'; } }, @@ -12104,66 +12532,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref4) { - var tokenManager = _ref4.tokenManager; - return tokenManager.getToken('member'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customUUIDFields) { queryParams.include.push('uuid.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.UUIDFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.UUIDFields) { queryParams.include.push('uuid'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { queryParams.count = true; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } - if (params === null || params === void 0 ? void 0 : params.limit) { + if (params !== null && params !== void 0 && params.limit) { queryParams.limit = params.limit; } - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) { - var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2), - key = _ref6[0], - value = _ref6[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { + var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), + key = _ref5[0], + value = _ref5[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -12190,7 +12614,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 91 */ +/* 94 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12227,66 +12651,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('membership'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customChannelFields) { queryParams.include.push('channel.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.channelFields) { queryParams.include.push('channel'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { var _params$include5; queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -12313,7 +12733,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 92 */ +/* 95 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12339,7 +12759,7 @@ var endpoint = { return _operations["default"].PNSetMembershipsOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channels) || (params === null || params === void 0 ? void 0 : params.channels.length) === 0) { + if (!(params !== null && params !== void 0 && params.channels) || (params === null || params === void 0 ? void 0 : params.channels.length) === 0) { return 'Channels cannot be empty'; } }, @@ -12380,66 +12800,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref4) { - var tokenManager = _ref4.tokenManager; - return tokenManager.getToken('membership'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customChannelFields) { queryParams.include.push('channel.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.channelFields) { queryParams.include.push('channel'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { queryParams.count = true; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } - if (params === null || params === void 0 ? void 0 : params.limit) { + if (params !== null && params !== void 0 && params.limit) { queryParams.limit = params.limit; } - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) { - var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2), - key = _ref6[0], - value = _ref6[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { + var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), + key = _ref5[0], + value = _ref5[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); @@ -12466,7 +12882,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 93 */ +/* 96 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12478,16 +12894,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12542,11 +12957,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -12585,7 +12995,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 94 */ +/* 97 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12597,16 +13007,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePatch = usePatch; -exports.getURL = getURL; -exports.patchURL = patchURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12665,11 +13074,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -12708,7 +13112,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 95 */ +/* 98 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12720,14 +13124,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12763,11 +13166,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, userId) { - var token = modules.tokenManager.getToken('user', userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams() { return {}; } @@ -12777,7 +13175,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 96 */ +/* 99 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12789,13 +13187,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12826,11 +13223,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -12865,7 +13257,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 97 */ +/* 100 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12877,13 +13269,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -12909,11 +13300,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules) { - var token = modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -12965,7 +13351,7 @@ function handleResponse(modules, usersResponse) { } /***/ }), -/* 98 */ +/* 101 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -12977,16 +13363,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13041,11 +13426,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -13084,7 +13464,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 99 */ +/* 102 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13096,16 +13476,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePatch = usePatch; -exports.getURL = getURL; -exports.patchURL = patchURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13164,11 +13543,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -13207,7 +13581,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 100 */ +/* 103 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13219,14 +13593,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13262,11 +13635,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, spaceId) { - var token = modules.tokenManager.getToken('space', spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams() { return {}; } @@ -13276,7 +13644,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 101 */ +/* 104 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13288,13 +13656,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13320,11 +13687,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules) { - var token = modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -13376,7 +13738,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 102 */ +/* 105 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13388,13 +13750,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13425,11 +13786,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; @@ -13464,7 +13820,7 @@ function handleResponse(modules, spacesResponse) { } /***/ }), -/* 103 */ +/* 106 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13476,13 +13832,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13513,11 +13868,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -13577,7 +13927,7 @@ function handleResponse(modules, membersResponse) { } /***/ }), -/* 104 */ +/* 107 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13589,16 +13939,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13662,11 +14011,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -13725,7 +14069,7 @@ function handleResponse(modules, membersResponse) { } /***/ }), -/* 105 */ +/* 108 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13737,16 +14081,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13852,11 +14195,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -13915,7 +14253,7 @@ function handleResponse(modules, membersResponse) { } /***/ }), -/* 106 */ +/* 109 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -13927,16 +14265,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -13994,11 +14331,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -14057,7 +14389,7 @@ function handleResponse(modules, membersResponse) { } /***/ }), -/* 107 */ +/* 110 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14069,13 +14401,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -14106,11 +14437,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -14170,7 +14496,7 @@ function handleResponse(modules, membershipsResponse) { } /***/ }), -/* 108 */ +/* 111 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14182,16 +14508,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -14297,11 +14622,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -14360,7 +14680,7 @@ function handleResponse(modules, membershipsResponse) { } /***/ }), -/* 109 */ +/* 112 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14372,16 +14692,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -14445,11 +14764,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -14508,7 +14822,7 @@ function handleResponse(modules, membershipsResponse) { } /***/ }), -/* 110 */ +/* 113 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14520,16 +14834,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -14587,11 +14900,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, @@ -14650,7 +14958,7 @@ function handleResponse(modules, membershipsResponse) { } /***/ }), -/* 111 */ +/* 114 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14662,12 +14970,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -14723,7 +15031,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 112 */ +/* 115 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14735,12 +15043,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -14839,7 +15147,7 @@ function handleResponse() { } /***/ }), -/* 113 */ +/* 116 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -14850,16 +15158,16 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); -exports.getOperation = getOperation; exports.extractPermissions = extractPermissions; -exports.validateParams = validateParams; -exports.postURL = postURL; -exports.usePost = usePost; +exports.getOperation = getOperation; exports.getRequestTimeout = getRequestTimeout; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -14872,8 +15180,16 @@ function getOperation() { function extractPermissions(permissions) { var permissionsResult = 0; - if (permissions.create) { - permissionsResult |= 16; + if (permissions.join) { + permissionsResult |= 128; + } + + if (permissions.update) { + permissionsResult |= 64; + } + + if (permissions.get) { + permissionsResult |= 32; } if (permissions["delete"]) { @@ -14899,19 +15215,22 @@ function prepareMessagePayload(modules, incomingParams) { var ttl = incomingParams.ttl, resources = incomingParams.resources, patterns = incomingParams.patterns, - meta = incomingParams.meta; + meta = incomingParams.meta, + authorized_uuid = incomingParams.authorized_uuid; var params = { ttl: 0, permissions: { resources: { channels: {}, groups: {}, + uuids: {}, users: {}, spaces: {} }, patterns: { channels: {}, groups: {}, + uuids: {}, users: {}, spaces: {} }, @@ -14920,20 +15239,13 @@ function prepareMessagePayload(modules, incomingParams) { }; if (resources) { - var users = resources.users, - spaces = resources.spaces, + var uuids = resources.uuids, channels = resources.channels, groups = resources.groups; - if (users) { - Object.keys(users).forEach(function (user) { - params.permissions.resources.users[user] = extractPermissions(users[user]); - }); - } - - if (spaces) { - Object.keys(spaces).forEach(function (space) { - params.permissions.resources.spaces[space] = extractPermissions(spaces[space]); + if (uuids) { + Object.keys(uuids).forEach(function (uuid) { + params.permissions.resources.uuids[uuid] = extractPermissions(uuids[uuid]); }); } @@ -14951,20 +15263,13 @@ function prepareMessagePayload(modules, incomingParams) { } if (patterns) { - var _users = patterns.users, - _spaces = patterns.spaces, + var _uuids = patterns.uuids, _channels = patterns.channels, _groups = patterns.groups; - if (_users) { - Object.keys(_users).forEach(function (user) { - params.permissions.patterns.users[user] = extractPermissions(_users[user]); - }); - } - - if (_spaces) { - Object.keys(_spaces).forEach(function (space) { - params.permissions.patterns.spaces[space] = extractPermissions(_spaces[space]); + if (_uuids) { + Object.keys(_uuids).forEach(function (uuid) { + params.permissions.patterns.uuids[uuid] = extractPermissions(_uuids[uuid]); }); } @@ -14989,6 +15294,10 @@ function prepareMessagePayload(modules, incomingParams) { params.permissions.meta = meta; } + if (authorized_uuid) { + params.permissions.uuid = "".concat(authorized_uuid); + } + return params; } @@ -14999,7 +15308,7 @@ function validateParams(modules, incomingParams) { if (!config.secretKey) return 'Missing Secret Key'; if (!incomingParams.resources && !incomingParams.patterns) return 'Missing either Resources or Patterns.'; - if (incomingParams.resources && (!incomingParams.resources.users || Object.keys(incomingParams.resources.users).length === 0) && (!incomingParams.resources.spaces || Object.keys(incomingParams.resources.spaces).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) || incomingParams.patterns && (!incomingParams.patterns.users || Object.keys(incomingParams.patterns.users).length === 0) && (!incomingParams.patterns.spaces || Object.keys(incomingParams.patterns.spaces).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)) { + if (incomingParams.resources && (!incomingParams.resources.uuids || Object.keys(incomingParams.resources.uuids).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) || incomingParams.patterns && (!incomingParams.patterns.uuids || Object.keys(incomingParams.patterns.uuids).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)) { return 'Missing values for either Resources or Patterns.'; } } @@ -15036,7 +15345,7 @@ function handleResponse(modules, response) { } /***/ }), -/* 114 */ +/* 117 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15047,16 +15356,80 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); -exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; +exports["default"] = void 0; + +var _operations = _interopRequireDefault(__webpack_require__(1)); + +var _utils = _interopRequireDefault(__webpack_require__(3)); + +var endpoint = { + getOperation: function getOperation() { + return _operations["default"].PNAccessManagerRevokeToken; + }, + validateParams: function validateParams(modules, token) { + var secretKey = modules.config.secretKey; + + if (!secretKey) { + return 'Missing Secret Key'; + } + + if (!token) { + return "token can't be empty"; + } + }, + getURL: function getURL(_ref, token) { + var config = _ref.config; + return "/v3/pam/".concat(config.subscribeKey, "/grant/").concat(_utils["default"].encodeString(token)); + }, + useDelete: function useDelete() { + return true; + }, + getRequestTimeout: function getRequestTimeout(_ref2) { + var config = _ref2.config; + return config.getTransactionTimeout(); + }, + isAuthSupported: function isAuthSupported() { + return false; + }, + prepareParams: function prepareParams(_ref3) { + var config = _ref3.config; + return { + uuid: config.getUUID() + }; + }, + handleResponse: function handleResponse(_, response) { + return { + status: response.status, + data: response.data + }; + } +}; +var _default = endpoint; +exports["default"] = _default; +module.exports = exports.default; + +/***/ }), +/* 118 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _interopRequireDefault = __webpack_require__(0); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.getOperation = getOperation; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.postPayload = postPayload; +exports.postURL = postURL; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.usePost = usePost; +exports.validateParams = validateParams; var _typeof2 = _interopRequireDefault(__webpack_require__(7)); @@ -15164,7 +15537,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 115 */ +/* 119 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15176,12 +15549,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -15236,7 +15609,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 116 */ +/* 120 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15248,12 +15621,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -15347,7 +15720,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 117 */ +/* 121 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15359,13 +15732,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -15417,7 +15790,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 118 */ +/* 122 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15429,12 +15802,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _slicedToArray2 = _interopRequireDefault(__webpack_require__(9)); @@ -15499,7 +15872,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 119 */ +/* 123 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15511,12 +15884,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -15640,7 +16013,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 120 */ +/* 124 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15652,12 +16025,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = __webpack_require__(2); @@ -15759,7 +16132,7 @@ function handleResponse(modules, serverResponse) { } /***/ }), -/* 121 */ +/* 125 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15791,11 +16164,9 @@ var _default = function () { (0, _classCallCheck2["default"])(this, _default); (0, _defineProperty2["default"])(this, "_modules", void 0); (0, _defineProperty2["default"])(this, "_config", void 0); - (0, _defineProperty2["default"])(this, "_maxSubDomain", void 0); (0, _defineProperty2["default"])(this, "_currentSubDomain", void 0); (0, _defineProperty2["default"])(this, "_standardOrigin", void 0); (0, _defineProperty2["default"])(this, "_subscribeOrigin", void 0); - (0, _defineProperty2["default"])(this, "_providedFQDN", void 0); (0, _defineProperty2["default"])(this, "_requestTimeout", void 0); (0, _defineProperty2["default"])(this, "_coreParams", void 0); this._modules = {}; @@ -15808,28 +16179,33 @@ var _default = function () { key: "init", value: function init(config) { this._config = config; - this._maxSubDomain = 20; - this._currentSubDomain = Math.floor(Math.random() * this._maxSubDomain); - this._providedFQDN = (this._config.secure ? 'https://' : 'http://') + this._config.origin; + + if (Array.isArray(this._config.origin)) { + this._currentSubDomain = Math.floor(Math.random() * this._config.origin.length); + } else { + this._currentSubDomain = 0; + } + this._coreParams = {}; this.shiftStandardOrigin(); } }, { key: "nextOrigin", value: function nextOrigin() { - if (!this._providedFQDN.match(/ps\.pndsn\.com$/i)) { - return this._providedFQDN; + var protocol = this._config.secure ? 'https://' : 'http://'; + + if (typeof this._config.origin === 'string') { + return "".concat(protocol).concat(this._config.origin); } - var newSubDomain; this._currentSubDomain += 1; - if (this._currentSubDomain >= this._maxSubDomain) { - this._currentSubDomain = 1; + if (this._currentSubDomain >= this._config.origin.length) { + this._currentSubDomain = 0; } - newSubDomain = this._currentSubDomain.toString(); - return this._providedFQDN.replace('ps.pndsn.com', "ps".concat(newSubDomain, ".pndsn.com")); + var origin = this._config.origin[this._currentSubDomain]; + return "".concat(protocol).concat(origin); } }, { key: "hasModule", @@ -15926,7 +16302,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 122 */ +/* 126 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -15956,7 +16332,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 123 */ +/* 127 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -16015,7 +16391,7 @@ exports["default"] = _default; module.exports = exports.default; /***/ }), -/* 124 */ +/* 128 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -16026,18 +16402,18 @@ var _interopRequireDefault = __webpack_require__(0); Object.defineProperty(exports, "__esModule", { value: true }); -exports.postfile = postfile; -exports.getfile = getfile; +exports.del = del; exports.get = get; -exports.post = post; +exports.getfile = getfile; exports.patch = patch; -exports.del = del; +exports.post = post; +exports.postfile = postfile; var _regenerator = _interopRequireDefault(__webpack_require__(11)); var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(12)); -var _superagent = _interopRequireDefault(__webpack_require__(125)); +var _superagent = _interopRequireDefault(__webpack_require__(129)); var _flow_interfaces = __webpack_require__(2); @@ -16093,7 +16469,8 @@ function xdr(superagentConstruct, endpoint, callback) { sc = sc.buffer(false); } - return sc.timeout(endpoint.timeout).end(function (err, resp) { + sc = sc.timeout(endpoint.timeout); + sc.end(function (err, resp) { var parsedResponse; var status = {}; status.error = err !== null; @@ -16146,6 +16523,7 @@ function xdr(superagentConstruct, endpoint, callback) { return callback(status, parsedResponse); }); + return sc; } function postfile(_x, _x2, _x3) { @@ -16216,73 +16594,99 @@ function del(params, endpoint, callback) { } /***/ }), -/* 125 */ +/* 129 */ /***/ (function(module, exports, __webpack_require__) { +"use strict"; + + +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + /** * Root reference for iframes. */ - var root; -if (typeof window !== 'undefined') { // Browser window + +if (typeof window !== 'undefined') { + // Browser window root = window; -} else if (typeof self !== 'undefined') { // Web Worker +} else if (typeof self === 'undefined') { + // Other environments + console.warn('Using browser-only version of superagent in non-browser environment'); + root = void 0; +} else { + // Web Worker root = self; -} else { // Other environments - console.warn("Using browser-only version of superagent in non-browser environment"); - root = this; } -var Emitter = __webpack_require__(126); -var RequestBase = __webpack_require__(127); -var isObject = __webpack_require__(26); -var ResponseBase = __webpack_require__(128); -var Agent = __webpack_require__(130); +var Emitter = __webpack_require__(130); + +var safeStringify = __webpack_require__(131); + +var qs = __webpack_require__(132); + +var RequestBase = __webpack_require__(144); + +var isObject = __webpack_require__(30); + +var ResponseBase = __webpack_require__(145); +var Agent = __webpack_require__(147); /** * Noop. */ -function noop(){}; +function noop() {} /** * Expose `request`. */ -var request = exports = module.exports = function(method, url) { + +module.exports = function (method, url) { // callback - if ('function' == typeof url) { + if (typeof url === 'function') { return new exports.Request('GET', method).end(url); - } + } // url first + - // url first - if (1 == arguments.length) { + if (arguments.length === 1) { return new exports.Request('GET', method); } return new exports.Request(method, url); -} +}; +exports = module.exports; +var request = exports; exports.Request = Request; - /** * Determine XHR. */ request.getXHR = function () { - if (root.XMLHttpRequest - && (!root.location || 'file:' != root.location.protocol - || !root.ActiveXObject)) { - return new XMLHttpRequest; - } else { - try { return new ActiveXObject('Microsoft.XMLHTTP'); } catch(e) {} - try { return new ActiveXObject('Msxml2.XMLHTTP.6.0'); } catch(e) {} - try { return new ActiveXObject('Msxml2.XMLHTTP.3.0'); } catch(e) {} - try { return new ActiveXObject('Msxml2.XMLHTTP'); } catch(e) {} + if (root.XMLHttpRequest && (!root.location || root.location.protocol !== 'file:' || !root.ActiveXObject)) { + return new XMLHttpRequest(); } - throw Error("Browser-only version of superagent could not find XHR"); -}; + try { + return new ActiveXObject('Microsoft.XMLHTTP'); + } catch (_unused) {} + + try { + return new ActiveXObject('Msxml2.XMLHTTP.6.0'); + } catch (_unused2) {} + + try { + return new ActiveXObject('Msxml2.XMLHTTP.3.0'); + } catch (_unused3) {} + + try { + return new ActiveXObject('Msxml2.XMLHTTP'); + } catch (_unused4) {} + + throw new Error('Browser-only version of superagent could not find XHR'); +}; /** * Removes leading and trailing whitespace, added to support IE. * @@ -16291,10 +16695,12 @@ request.getXHR = function () { * @api private */ -var trim = ''.trim - ? function(s) { return s.trim(); } - : function(s) { return s.replace(/(^\s*|\s*$)/g, ''); }; +var trim = ''.trim ? function (s) { + return s.trim(); +} : function (s) { + return s.replace(/(^\s*|\s*$)/g, ''); +}; /** * Serialize the given `obj`. * @@ -16306,12 +16712,13 @@ var trim = ''.trim function serialize(obj) { if (!isObject(obj)) return obj; var pairs = []; + for (var key in obj) { - pushEncodedKeyValuePair(pairs, key, obj[key]); + if (Object.prototype.hasOwnProperty.call(obj, key)) pushEncodedKeyValuePair(pairs, key, obj[key]); } + return pairs.join('&'); } - /** * Helps 'serialize' with serializing arrays. * Mutates the pairs array. @@ -16321,38 +16728,40 @@ function serialize(obj) { * @param {Mixed} val */ + function pushEncodedKeyValuePair(pairs, key, val) { - if (val != null) { - if (Array.isArray(val)) { - val.forEach(function(v) { - pushEncodedKeyValuePair(pairs, key, v); - }); - } else if (isObject(val)) { - for(var subkey in val) { - pushEncodedKeyValuePair(pairs, key + '[' + subkey + ']', val[subkey]); - } - } else { - pairs.push(encodeURIComponent(key) - + '=' + encodeURIComponent(val)); + if (val === undefined) return; + + if (val === null) { + pairs.push(encodeURI(key)); + return; + } + + if (Array.isArray(val)) { + val.forEach(function (v) { + pushEncodedKeyValuePair(pairs, key, v); + }); + } else if (isObject(val)) { + for (var subkey in val) { + if (Object.prototype.hasOwnProperty.call(val, subkey)) pushEncodedKeyValuePair(pairs, "".concat(key, "[").concat(subkey, "]"), val[subkey]); } - } else if (val === null) { - pairs.push(encodeURIComponent(key)); + } else { + pairs.push(encodeURI(key) + '=' + encodeURIComponent(val)); } } - /** * Expose serialization method. */ -request.serializeObject = serialize; +request.serializeObject = serialize; /** - * Parse the given x-www-form-urlencoded `str`. - * - * @param {String} str - * @return {Object} - * @api private - */ + * Parse the given x-www-form-urlencoded `str`. + * + * @param {String} str + * @return {Object} + * @api private + */ function parseString(str) { var obj = {}; @@ -16363,23 +16772,22 @@ function parseString(str) { for (var i = 0, len = pairs.length; i < len; ++i) { pair = pairs[i]; pos = pair.indexOf('='); - if (pos == -1) { + + if (pos === -1) { obj[decodeURIComponent(pair)] = ''; } else { - obj[decodeURIComponent(pair.slice(0, pos))] = - decodeURIComponent(pair.slice(pos + 1)); + obj[decodeURIComponent(pair.slice(0, pos))] = decodeURIComponent(pair.slice(pos + 1)); } } return obj; } - /** * Expose parser. */ -request.parseString = parseString; +request.parseString = parseString; /** * Default MIME type map. * @@ -16392,10 +16800,9 @@ request.types = { json: 'application/json', xml: 'text/xml', urlencoded: 'application/x-www-form-urlencoded', - 'form': 'application/x-www-form-urlencoded', + form: 'application/x-www-form-urlencoded', 'form-data': 'application/x-www-form-urlencoded' }; - /** * Default serialization map. * @@ -16406,24 +16813,22 @@ request.types = { */ request.serialize = { - 'application/x-www-form-urlencoded': serialize, - 'application/json': JSON.stringify + 'application/x-www-form-urlencoded': qs.stringify, + 'application/json': safeStringify }; - /** - * Default parsers. - * - * superagent.parse['application/xml'] = function(str){ - * return { object parsed from str }; - * }; - * - */ + * Default parsers. + * + * superagent.parse['application/xml'] = function(str){ + * return { object parsed from str }; + * }; + * + */ request.parse = { 'application/x-www-form-urlencoded': parseString, 'application/json': JSON.parse }; - /** * Parse the given header `str` into * an object containing the mapped fields. @@ -16444,9 +16849,12 @@ function parseHeader(str) { for (var i = 0, len = lines.length; i < len; ++i) { line = lines[i]; index = line.indexOf(':'); - if (index === -1) { // could be empty line, just skip it + + if (index === -1) { + // could be empty line, just skip it continue; } + field = line.slice(0, index).toLowerCase(); val = trim(line.slice(index + 1)); fields[field] = val; @@ -16454,7 +16862,6 @@ function parseHeader(str) { return fields; } - /** * Check if `mime` is json or has +json structured syntax suffix. * @@ -16463,12 +16870,12 @@ function parseHeader(str) { * @api private */ + function isJSON(mime) { // should match /json or +json // but not /json-seq - return /[\/+]json($|[^-\w])/.test(mime); + return /[/+]json($|[^-\w])/i.test(mime); } - /** * Initialize a new `Response` with the given `xhr`. * @@ -16515,38 +16922,39 @@ function isJSON(mime) { * @api private */ + function Response(req) { this.req = req; - this.xhr = this.req.xhr; - // responseText is accessible only if responseType is '' or 'text' and on older browsers - this.text = ((this.req.method !='HEAD' && (this.xhr.responseType === '' || this.xhr.responseType === 'text')) || typeof this.xhr.responseType === 'undefined') - ? this.xhr.responseText - : null; + this.xhr = this.req.xhr; // responseText is accessible only if responseType is '' or 'text' and on older browsers + + this.text = this.req.method !== 'HEAD' && (this.xhr.responseType === '' || this.xhr.responseType === 'text') || typeof this.xhr.responseType === 'undefined' ? this.xhr.responseText : null; this.statusText = this.req.xhr.statusText; - var status = this.xhr.status; - // handle IE9 bug: http://stackoverflow.com/questions/10046972/msie-returns-status-code-of-1223-for-ajax-request + var status = this.xhr.status; // handle IE9 bug: http://stackoverflow.com/questions/10046972/msie-returns-status-code-of-1223-for-ajax-request + if (status === 1223) { status = 204; } + this._setStatusProperties(status); - this.header = this.headers = parseHeader(this.xhr.getAllResponseHeaders()); - // getAllResponseHeaders sometimes falsely returns "" for CORS requests, but + + this.headers = parseHeader(this.xhr.getAllResponseHeaders()); + this.header = this.headers; // getAllResponseHeaders sometimes falsely returns "" for CORS requests, but // getResponseHeader still works. so we get content-type even if getting // other headers fails. + this.header['content-type'] = this.xhr.getResponseHeader('content-type'); + this._setHeaderProperties(this.header); - if (null === this.text && req._responseType) { + if (this.text === null && req._responseType) { this.body = this.xhr.response; } else { - this.body = this.req.method != 'HEAD' - ? this._parseBody(this.text ? this.text : this.xhr.response) - : null; + this.body = this.req.method === 'HEAD' ? null : this._parseBody(this.text ? this.text : this.xhr.response); } -} +} // eslint-disable-next-line new-cap -ResponseBase(Response.prototype); +ResponseBase(Response.prototype); /** * Parse the given body `str`. * @@ -16558,19 +16966,19 @@ ResponseBase(Response.prototype); * @api private */ -Response.prototype._parseBody = function(str) { +Response.prototype._parseBody = function (str) { var parse = request.parse[this.type]; + if (this.req._parser) { return this.req._parser(this, str); } + if (!parse && isJSON(this.type)) { parse = request.parse['application/json']; } - return parse && str && (str.length || str instanceof Object) - ? parse(str) - : null; -}; + return parse && str && (str.length > 0 || str instanceof Object) ? parse(str) : null; +}; /** * Return an `Error` representative of this response. * @@ -16578,26 +16986,24 @@ Response.prototype._parseBody = function(str) { * @api public */ -Response.prototype.toError = function(){ + +Response.prototype.toError = function () { var req = this.req; var method = req.method; var url = req.url; - - var msg = 'cannot ' + method + ' ' + url + ' (' + this.status + ')'; + var msg = "cannot ".concat(method, " ").concat(url, " (").concat(this.status, ")"); var err = new Error(msg); err.status = this.status; err.method = method; err.url = url; - return err; }; - /** * Expose `Response`. */ -request.Response = Response; +request.Response = Response; /** * Initialize a new `Request` with the given `method` and `url`. * @@ -16612,22 +17018,24 @@ function Request(method, url) { this.method = method; this.url = url; this.header = {}; // preserves header name case + this._header = {}; // coerces header names to lowercase - this.on('end', function(){ + + this.on('end', function () { var err = null; var res = null; try { res = new Response(self); - } catch(e) { + } catch (err_) { err = new Error('Parser is unable to parse the response'); err.parse = true; - err.original = e; - // issue #675: return the raw response if the response parsing fails + err.original = err_; // issue #675: return the raw response if the response parsing fails + if (self.xhr) { // ie9 doesn't have 'response' property - err.rawResponse = typeof self.xhr.responseType == 'undefined' ? self.xhr.responseText : self.xhr.response; - // issue #876: return the http status code if the response parsing fails + err.rawResponse = typeof self.xhr.responseType === 'undefined' ? self.xhr.responseText : self.xhr.response; // issue #876: return the http status code if the response parsing fails + err.status = self.xhr.status ? self.xhr.status : null; err.statusCode = err.status; // backwards-compat only } else { @@ -16639,17 +17047,17 @@ function Request(method, url) { } self.emit('response', res); - var new_err; + try { if (!self._isResponseOK(res)) { - new_err = new Error(res.statusText || 'Unsuccessful HTTP response'); + new_err = new Error(res.statusText || res.text || 'Unsuccessful HTTP response'); } - } catch(custom_err) { - new_err = custom_err; // ok() callback can throw - } + } catch (err_) { + new_err = err_; // ok() callback can throw + } // #1000 don't catch errors from the callback to avoid double calling it + - // #1000 don't catch errors from the callback to avoid double calling it if (new_err) { new_err.original = err; new_err.response = res; @@ -16660,14 +17068,15 @@ function Request(method, url) { } }); } - /** * Mixin `Emitter` and `RequestBase`. */ +// eslint-disable-next-line new-cap -Emitter(Request.prototype); -RequestBase(Request.prototype); +Emitter(Request.prototype); // eslint-disable-next-line new-cap + +RequestBase(Request.prototype); /** * Set Content-Type to `type`, mapping values from `request.types`. * @@ -16690,11 +17099,10 @@ RequestBase(Request.prototype); * @api public */ -Request.prototype.type = function(type){ +Request.prototype.type = function (type) { this.set('Content-Type', request.types[type] || type); return this; }; - /** * Set Accept to `type`, mapping values from `request.types`. * @@ -16715,11 +17123,11 @@ Request.prototype.type = function(type){ * @api public */ -Request.prototype.accept = function(type){ + +Request.prototype.accept = function (type) { this.set('Accept', request.types[type] || type); return this; }; - /** * Set Authorization field value with `user` and `pass`. * @@ -16730,28 +17138,32 @@ Request.prototype.accept = function(type){ * @api public */ -Request.prototype.auth = function(user, pass, options){ - if (1 === arguments.length) pass = ''; - if (typeof pass === 'object' && pass !== null) { // pass is optional and can be replaced with options + +Request.prototype.auth = function (user, pass, options) { + if (arguments.length === 1) pass = ''; + + if (_typeof(pass) === 'object' && pass !== null) { + // pass is optional and can be replaced with options options = pass; pass = ''; } + if (!options) { options = { - type: 'function' === typeof btoa ? 'basic' : 'auto', + type: typeof btoa === 'function' ? 'basic' : 'auto' }; } - var encoder = function(string) { - if ('function' === typeof btoa) { + var encoder = function encoder(string) { + if (typeof btoa === 'function') { return btoa(string); } + throw new Error('Cannot use basic auth, btoa is not a function'); }; return this._auth(user, pass, options, encoder); }; - /** * Add query-string `val`. * @@ -16766,12 +17178,12 @@ Request.prototype.auth = function(user, pass, options){ * @api public */ -Request.prototype.query = function(val){ - if ('string' != typeof val) val = serialize(val); + +Request.prototype.query = function (val) { + if (typeof val !== 'string') val = serialize(val); if (val) this._query.push(val); return this; }; - /** * Queue the given `file` as an attachment to the specified `field`, * with optional `options` (or filename). @@ -16789,24 +17201,26 @@ Request.prototype.query = function(val){ * @api public */ -Request.prototype.attach = function(field, file, options){ + +Request.prototype.attach = function (field, file, options) { if (file) { if (this._data) { - throw Error("superagent can't mix .send() and .attach()"); + throw new Error("superagent can't mix .send() and .attach()"); } this._getFormData().append(field, file, options || file.name); } + return this; }; -Request.prototype._getFormData = function(){ +Request.prototype._getFormData = function () { if (!this._formData) { this._formData = new root.FormData(); } + return this._formData; }; - /** * Invoke the callback with `err` and `res` * and handle arity check. @@ -16816,7 +17230,8 @@ Request.prototype._getFormData = function(){ * @api private */ -Request.prototype.callback = function(err, res){ + +Request.prototype.callback = function (err, res) { if (this._shouldRetry(err, res)) { return this._retry(); } @@ -16831,48 +17246,49 @@ Request.prototype.callback = function(err, res){ fn(err, res); }; - /** * Invoke callback with x-domain error. * * @api private */ -Request.prototype.crossDomainError = function(){ + +Request.prototype.crossDomainError = function () { var err = new Error('Request has been terminated\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.'); err.crossDomain = true; - err.status = this.status; err.method = this.method; err.url = this.url; - this.callback(err); -}; +}; // This only warns, because the request is still likely to work + -// This only warns, because the request is still likely to work -Request.prototype.buffer = Request.prototype.ca = Request.prototype.agent = function(){ - console.warn("This is not supported in browser version of superagent"); +Request.prototype.agent = function () { + console.warn('This is not supported in browser version of superagent'); return this; }; -// This throws, because it can't send/receive data as expected -Request.prototype.pipe = Request.prototype.write = function(){ - throw Error("Streaming is not supported in browser version of superagent"); +Request.prototype.ca = Request.prototype.agent; +Request.prototype.buffer = Request.prototype.ca; // This throws, because it can't send/receive data as expected + +Request.prototype.write = function () { + throw new Error('Streaming is not supported in browser version of superagent'); }; +Request.prototype.pipe = Request.prototype.write; /** * Check if `obj` is a host object, * we don't want to serialize these :) * - * @param {Object} obj - * @return {Boolean} + * @param {Object} obj host object + * @return {Boolean} is a host object * @api private */ -Request.prototype._isHost = function _isHost(obj) { - // Native objects stringify to [object File], [object Blob], [object FormData], etc. - return obj && 'object' === typeof obj && !Array.isArray(obj) && Object.prototype.toString.call(obj) !== '[object Object]'; -} +Request.prototype._isHost = function (obj) { + // Native objects stringify to [object File], [object Blob], [object FormData], etc. + return obj && _typeof(obj) === 'object' && !Array.isArray(obj) && Object.prototype.toString.call(obj) !== '[object Object]'; +}; /** * Initiate request, invoking callback `fn(res)` * with an instanceof `Response`. @@ -16882,72 +17298,103 @@ Request.prototype._isHost = function _isHost(obj) { * @api public */ -Request.prototype.end = function(fn){ + +Request.prototype.end = function (fn) { if (this._endCalled) { - console.warn("Warning: .end() was called twice. This is not supported in superagent"); + console.warn('Warning: .end() was called twice. This is not supported in superagent'); } - this._endCalled = true; - // store callback - this._callback = fn || noop; + this._endCalled = true; // store callback + + this._callback = fn || noop; // querystring - // querystring this._finalizeQueryString(); - return this._end(); + this._end(); }; -Request.prototype._end = function() { +Request.prototype._setUploadTimeout = function () { + var self = this; // upload timeout it's wokrs only if deadline timeout is off + + if (this._uploadTimeout && !this._uploadTimeoutTimer) { + this._uploadTimeoutTimer = setTimeout(function () { + self._timeoutError('Upload timeout of ', self._uploadTimeout, 'ETIMEDOUT'); + }, this._uploadTimeout); + } +}; // eslint-disable-next-line complexity + + +Request.prototype._end = function () { + if (this._aborted) return this.callback(new Error('The request has been aborted even before .end() was called')); var self = this; - var xhr = (this.xhr = request.getXHR()); + this.xhr = request.getXHR(); + var xhr = this.xhr; var data = this._formData || this._data; - this._setTimeouts(); + this._setTimeouts(); // state change - // state change - xhr.onreadystatechange = function(){ + + xhr.onreadystatechange = function () { var readyState = xhr.readyState; + if (readyState >= 2 && self._responseTimeoutTimer) { clearTimeout(self._responseTimeoutTimer); } - if (4 != readyState) { - return; - } - // In IE9, reads to any property (e.g. status) off of an aborted XHR will + if (readyState !== 4) { + return; + } // In IE9, reads to any property (e.g. status) off of an aborted XHR will // result in the error "Could not complete the operation due to error c00c023f" + + var status; - try { status = xhr.status } catch(e) { status = 0; } + + try { + status = xhr.status; + } catch (_unused5) { + status = 0; + } if (!status) { if (self.timedout || self._aborted) return; return self.crossDomainError(); } + self.emit('end'); - }; + }; // progress - // progress - var handleProgress = function(direction, e) { + + var handleProgress = function handleProgress(direction, e) { if (e.total > 0) { e.percent = e.loaded / e.total * 100; + + if (e.percent === 100) { + clearTimeout(self._uploadTimeoutTimer); + } } + e.direction = direction; self.emit('progress', e); }; + if (this.hasListeners('progress')) { try { - xhr.onprogress = handleProgress.bind(null, 'download'); + xhr.addEventListener('progress', handleProgress.bind(null, 'download')); + if (xhr.upload) { - xhr.upload.onprogress = handleProgress.bind(null, 'upload'); + xhr.upload.addEventListener('progress', handleProgress.bind(null, 'upload')); } - } catch(e) { - // Accessing xhr.upload fails in IE from a web worker, so just pretend it doesn't exist. + } catch (_unused6) {// Accessing xhr.upload fails in IE from a web worker, so just pretend it doesn't exist. // Reported here: // https://connect.microsoft.com/IE/feedback/details/837245/xmlhttprequest-upload-throws-invalid-argument-when-used-from-web-worker-context } } - // initiate request + if (xhr.upload) { + this._setUploadTimeout(); + } // initiate request + + try { if (this.username && this.password) { xhr.open(this.method, this.url, true, this.username, this.password); @@ -16957,60 +17404,59 @@ Request.prototype._end = function() { } catch (err) { // see #1149 return this.callback(err); - } + } // CORS + - // CORS - if (this._withCredentials) xhr.withCredentials = true; + if (this._withCredentials) xhr.withCredentials = true; // body - // body - if (!this._formData && 'GET' != this.method && 'HEAD' != this.method && 'string' != typeof data && !this._isHost(data)) { + if (!this._formData && this.method !== 'GET' && this.method !== 'HEAD' && typeof data !== 'string' && !this._isHost(data)) { // serialize stuff var contentType = this._header['content-type']; - var serialize = this._serializer || request.serialize[contentType ? contentType.split(';')[0] : '']; - if (!serialize && isJSON(contentType)) { - serialize = request.serialize['application/json']; + + var _serialize = this._serializer || request.serialize[contentType ? contentType.split(';')[0] : '']; + + if (!_serialize && isJSON(contentType)) { + _serialize = request.serialize['application/json']; } - if (serialize) data = serialize(data); - } - // set header fields - for (var field in this.header) { - if (null == this.header[field]) continue; + if (_serialize) data = _serialize(data); + } // set header fields - if (this.header.hasOwnProperty(field)) - xhr.setRequestHeader(field, this.header[field]); + + for (var field in this.header) { + if (this.header[field] === null) continue; + if (Object.prototype.hasOwnProperty.call(this.header, field)) xhr.setRequestHeader(field, this.header[field]); } if (this._responseType) { xhr.responseType = this._responseType; - } + } // send stuff - // send stuff - this.emit('request', this); - // IE11 xhr.send(undefined) sends 'undefined' string as POST payload (instead of nothing) + this.emit('request', this); // IE11 xhr.send(undefined) sends 'undefined' string as POST payload (instead of nothing) // We need null here if data is undefined - xhr.send(typeof data !== 'undefined' ? data : null); - return this; + + xhr.send(typeof data === 'undefined' ? null : data); }; -request.agent = function() { +request.agent = function () { return new Agent(); }; -["GET", "POST", "OPTIONS", "PATCH", "PUT", "DELETE"].forEach(function(method) { - Agent.prototype[method.toLowerCase()] = function(url, fn) { +['GET', 'POST', 'OPTIONS', 'PATCH', 'PUT', 'DELETE'].forEach(function (method) { + Agent.prototype[method.toLowerCase()] = function (url, fn) { var req = new request.Request(method, url); + this._setDefaults(req); + if (fn) { req.end(fn); } + return req; }; }); - -Agent.prototype.del = Agent.prototype['delete']; - +Agent.prototype.del = Agent.prototype.delete; /** * GET `url` with optional callback `fn(res)`. * @@ -17021,14 +17467,18 @@ Agent.prototype.del = Agent.prototype['delete']; * @api public */ -request.get = function(url, data, fn) { +request.get = function (url, data, fn) { var req = request('GET', url); - if ('function' == typeof data) (fn = data), (data = null); + + if (typeof data === 'function') { + fn = data; + data = null; + } + if (data) req.query(data); if (fn) req.end(fn); return req; }; - /** * HEAD `url` with optional callback `fn(res)`. * @@ -17039,14 +17489,19 @@ request.get = function(url, data, fn) { * @api public */ -request.head = function(url, data, fn) { + +request.head = function (url, data, fn) { var req = request('HEAD', url); - if ('function' == typeof data) (fn = data), (data = null); + + if (typeof data === 'function') { + fn = data; + data = null; + } + if (data) req.query(data); if (fn) req.end(fn); return req; }; - /** * OPTIONS query to `url` with optional callback `fn(res)`. * @@ -17057,14 +17512,19 @@ request.head = function(url, data, fn) { * @api public */ -request.options = function(url, data, fn) { + +request.options = function (url, data, fn) { var req = request('OPTIONS', url); - if ('function' == typeof data) (fn = data), (data = null); + + if (typeof data === 'function') { + fn = data; + data = null; + } + if (data) req.send(data); if (fn) req.end(fn); return req; }; - /** * DELETE `url` with optional `data` and callback `fn(res)`. * @@ -17075,17 +17535,22 @@ request.options = function(url, data, fn) { * @api public */ + function del(url, data, fn) { var req = request('DELETE', url); - if ('function' == typeof data) (fn = data), (data = null); + + if (typeof data === 'function') { + fn = data; + data = null; + } + if (data) req.send(data); if (fn) req.end(fn); return req; } -request['del'] = del; -request['delete'] = del; - +request.del = del; +request.delete = del; /** * PATCH `url` with optional `data` and callback `fn(res)`. * @@ -17096,14 +17561,18 @@ request['delete'] = del; * @api public */ -request.patch = function(url, data, fn) { +request.patch = function (url, data, fn) { var req = request('PATCH', url); - if ('function' == typeof data) (fn = data), (data = null); + + if (typeof data === 'function') { + fn = data; + data = null; + } + if (data) req.send(data); if (fn) req.end(fn); return req; }; - /** * POST `url` with optional `data` and callback `fn(res)`. * @@ -17114,14 +17583,19 @@ request.patch = function(url, data, fn) { * @api public */ -request.post = function(url, data, fn) { + +request.post = function (url, data, fn) { var req = request('POST', url); - if ('function' == typeof data) (fn = data), (data = null); + + if (typeof data === 'function') { + fn = data; + data = null; + } + if (data) req.send(data); if (fn) req.end(fn); return req; }; - /** * PUT `url` with optional `data` and callback `fn(res)`. * @@ -17132,17 +17606,23 @@ request.post = function(url, data, fn) { * @api public */ -request.put = function(url, data, fn) { + +request.put = function (url, data, fn) { var req = request('PUT', url); - if ('function' == typeof data) (fn = data), (data = null); + + if (typeof data === 'function') { + fn = data; + data = null; + } + if (data) req.send(data); if (fn) req.end(fn); return req; }; - +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jbGllbnQuanMiXSwibmFtZXMiOlsicm9vdCIsIndpbmRvdyIsInNlbGYiLCJjb25zb2xlIiwid2FybiIsIkVtaXR0ZXIiLCJyZXF1aXJlIiwic2FmZVN0cmluZ2lmeSIsInFzIiwiUmVxdWVzdEJhc2UiLCJpc09iamVjdCIsIlJlc3BvbnNlQmFzZSIsIkFnZW50Iiwibm9vcCIsIm1vZHVsZSIsImV4cG9ydHMiLCJtZXRob2QiLCJ1cmwiLCJSZXF1ZXN0IiwiZW5kIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwicmVxdWVzdCIsImdldFhIUiIsIlhNTEh0dHBSZXF1ZXN0IiwibG9jYXRpb24iLCJwcm90b2NvbCIsIkFjdGl2ZVhPYmplY3QiLCJFcnJvciIsInRyaW0iLCJzIiwicmVwbGFjZSIsInNlcmlhbGl6ZSIsIm9iaiIsInBhaXJzIiwia2V5IiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwicHVzaEVuY29kZWRLZXlWYWx1ZVBhaXIiLCJqb2luIiwidmFsIiwidW5kZWZpbmVkIiwicHVzaCIsImVuY29kZVVSSSIsIkFycmF5IiwiaXNBcnJheSIsImZvckVhY2giLCJ2Iiwic3Via2V5IiwiZW5jb2RlVVJJQ29tcG9uZW50Iiwic2VyaWFsaXplT2JqZWN0IiwicGFyc2VTdHJpbmciLCJzdHIiLCJzcGxpdCIsInBhaXIiLCJwb3MiLCJpIiwibGVuIiwiaW5kZXhPZiIsImRlY29kZVVSSUNvbXBvbmVudCIsInNsaWNlIiwidHlwZXMiLCJodG1sIiwianNvbiIsInhtbCIsInVybGVuY29kZWQiLCJmb3JtIiwic3RyaW5naWZ5IiwicGFyc2UiLCJKU09OIiwicGFyc2VIZWFkZXIiLCJsaW5lcyIsImZpZWxkcyIsImluZGV4IiwibGluZSIsImZpZWxkIiwidG9Mb3dlckNhc2UiLCJpc0pTT04iLCJtaW1lIiwidGVzdCIsIlJlc3BvbnNlIiwicmVxIiwieGhyIiwidGV4dCIsInJlc3BvbnNlVHlwZSIsInJlc3BvbnNlVGV4dCIsInN0YXR1c1RleHQiLCJzdGF0dXMiLCJfc2V0U3RhdHVzUHJvcGVydGllcyIsImhlYWRlcnMiLCJnZXRBbGxSZXNwb25zZUhlYWRlcnMiLCJoZWFkZXIiLCJnZXRSZXNwb25zZUhlYWRlciIsIl9zZXRIZWFkZXJQcm9wZXJ0aWVzIiwiX3Jlc3BvbnNlVHlwZSIsImJvZHkiLCJyZXNwb25zZSIsIl9wYXJzZUJvZHkiLCJ0eXBlIiwiX3BhcnNlciIsInRvRXJyb3IiLCJtc2ciLCJlcnIiLCJfcXVlcnkiLCJfaGVhZGVyIiwib24iLCJyZXMiLCJlcnJfIiwib3JpZ2luYWwiLCJyYXdSZXNwb25zZSIsInN0YXR1c0NvZGUiLCJjYWxsYmFjayIsImVtaXQiLCJuZXdfZXJyIiwiX2lzUmVzcG9uc2VPSyIsInNldCIsImFjY2VwdCIsImF1dGgiLCJ1c2VyIiwicGFzcyIsIm9wdGlvbnMiLCJidG9hIiwiZW5jb2RlciIsInN0cmluZyIsIl9hdXRoIiwicXVlcnkiLCJhdHRhY2giLCJmaWxlIiwiX2RhdGEiLCJfZ2V0Rm9ybURhdGEiLCJhcHBlbmQiLCJuYW1lIiwiX2Zvcm1EYXRhIiwiRm9ybURhdGEiLCJfc2hvdWxkUmV0cnkiLCJfcmV0cnkiLCJmbiIsIl9jYWxsYmFjayIsImNsZWFyVGltZW91dCIsIl9tYXhSZXRyaWVzIiwicmV0cmllcyIsIl9yZXRyaWVzIiwiY3Jvc3NEb21haW5FcnJvciIsImNyb3NzRG9tYWluIiwiYWdlbnQiLCJjYSIsImJ1ZmZlciIsIndyaXRlIiwicGlwZSIsIl9pc0hvc3QiLCJ0b1N0cmluZyIsIl9lbmRDYWxsZWQiLCJfZmluYWxpemVRdWVyeVN0cmluZyIsIl9lbmQiLCJfc2V0VXBsb2FkVGltZW91dCIsIl91cGxvYWRUaW1lb3V0IiwiX3VwbG9hZFRpbWVvdXRUaW1lciIsInNldFRpbWVvdXQiLCJfdGltZW91dEVycm9yIiwiX2Fib3J0ZWQiLCJkYXRhIiwiX3NldFRpbWVvdXRzIiwib25yZWFkeXN0YXRlY2hhbmdlIiwicmVhZHlTdGF0ZSIsIl9yZXNwb25zZVRpbWVvdXRUaW1lciIsInRpbWVkb3V0IiwiaGFuZGxlUHJvZ3Jlc3MiLCJkaXJlY3Rpb24iLCJlIiwidG90YWwiLCJwZXJjZW50IiwibG9hZGVkIiwiaGFzTGlzdGVuZXJzIiwiYWRkRXZlbnRMaXN0ZW5lciIsImJpbmQiLCJ1cGxvYWQiLCJ1c2VybmFtZSIsInBhc3N3b3JkIiwib3BlbiIsIl93aXRoQ3JlZGVudGlhbHMiLCJ3aXRoQ3JlZGVudGlhbHMiLCJjb250ZW50VHlwZSIsIl9zZXJpYWxpemVyIiwic2V0UmVxdWVzdEhlYWRlciIsInNlbmQiLCJfc2V0RGVmYXVsdHMiLCJkZWwiLCJkZWxldGUiLCJnZXQiLCJoZWFkIiwicGF0Y2giLCJwb3N0IiwicHV0Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7OztBQUlBLElBQUlBLElBQUo7O0FBQ0EsSUFBSSxPQUFPQyxNQUFQLEtBQWtCLFdBQXRCLEVBQW1DO0FBQ2pDO0FBQ0FELEVBQUFBLElBQUksR0FBR0MsTUFBUDtBQUNELENBSEQsTUFHTyxJQUFJLE9BQU9DLElBQVAsS0FBZ0IsV0FBcEIsRUFBaUM7QUFDdEM7QUFDQUMsRUFBQUEsT0FBTyxDQUFDQyxJQUFSLENBQ0UscUVBREY7QUFHQUosRUFBQUEsSUFBSSxTQUFKO0FBQ0QsQ0FOTSxNQU1BO0FBQ0w7QUFDQUEsRUFBQUEsSUFBSSxHQUFHRSxJQUFQO0FBQ0Q7O0FBRUQsSUFBTUcsT0FBTyxHQUFHQyxPQUFPLENBQUMsbUJBQUQsQ0FBdkI7O0FBQ0EsSUFBTUMsYUFBYSxHQUFHRCxPQUFPLENBQUMscUJBQUQsQ0FBN0I7O0FBQ0EsSUFBTUUsRUFBRSxHQUFHRixPQUFPLENBQUMsSUFBRCxDQUFsQjs7QUFDQSxJQUFNRyxXQUFXLEdBQUdILE9BQU8sQ0FBQyxnQkFBRCxDQUEzQjs7QUFDQSxJQUFNSSxRQUFRLEdBQUdKLE9BQU8sQ0FBQyxhQUFELENBQXhCOztBQUNBLElBQU1LLFlBQVksR0FBR0wsT0FBTyxDQUFDLGlCQUFELENBQTVCOztBQUNBLElBQU1NLEtBQUssR0FBR04sT0FBTyxDQUFD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aEUsR0FBSixDQUFRdUgsRUFBUjtBQUNSLFNBQU92RCxHQUFQO0FBQ0QsQ0FWRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUm9vdCByZWZlcmVuY2UgZm9yIGlmcmFtZXMuXG4gKi9cblxubGV0IHJvb3Q7XG5pZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgLy8gQnJvd3NlciB3aW5kb3dcbiAgcm9vdCA9IHdpbmRvdztcbn0gZWxzZSBpZiAodHlwZW9mIHNlbGYgPT09ICd1bmRlZmluZWQnKSB7XG4gIC8vIE90aGVyIGVudmlyb25tZW50c1xuICBjb25zb2xlLndhcm4oXG4gICAgJ1VzaW5nIGJyb3dzZXItb25seSB2ZXJzaW9uIG9mIHN1cGVyYWdlbnQgaW4gbm9uLWJyb3dzZXIgZW52aXJvbm1lbnQnXG4gICk7XG4gIHJvb3QgPSB0aGlzO1xufSBlbHNlIHtcbiAgLy8gV2ViIFdvcmtlclxuICByb290ID0gc2VsZjtcbn1cblxuY29uc3QgRW1pdHRlciA9IHJlcXVpcmUoJ2NvbXBvbmVudC1lbWl0dGVyJyk7XG5jb25zdCBzYWZlU3RyaW5naWZ5ID0gcmVxdWlyZSgnZmFzdC1zYWZlLXN0cmluZ2lmeScpO1xuY29uc3QgcXMgPSByZXF1aXJlKCdxcycpO1xuY29uc3QgUmVxdWVzdEJhc2UgPSByZXF1aXJlKCcuL3JlcXVlc3QtYmFzZScpO1xuY29uc3QgaXNPYmplY3QgPSByZXF1aXJlKCcuL2lzLW9iamVjdCcpO1xuY29uc3QgUmVzcG9uc2VCYXNlID0gcmVxdWlyZSgnLi9yZXNwb25zZS1iYXNlJyk7XG5jb25zdCBBZ2VudCA9IHJlcXVpcmUoJy4vYWdlbnQtYmFzZScpO1xuXG4vKipcbiAqIE5vb3AuXG4gKi9cblxuZnVuY3Rpb24gbm9vcCgpIHt9XG5cbi8qKlxuICogRXhwb3NlIGByZXF1ZXN0YC5cbiAqL1xuXG5tb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIChtZXRob2QsIHVybCkge1xuICAvLyBjYWxsYmFja1xuICBpZiAodHlwZW9mIHVybCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBuZXcgZXhwb3J0cy5SZXF1ZXN0KCdHRVQnLCBtZXRob2QpLmVuZCh1cmwpO1xuICB9XG5cbiAgLy8gdXJsIGZpcnN0XG4gIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxKSB7XG4gICAgcmV0dXJuIG5ldyBleHBvcnRzLlJlcXVlc3QoJ0dFVCcsIG1ldGhvZCk7XG4gIH1cblxuICByZXR1cm4gbmV3IGV4cG9ydHMuUmVxdWVzdChtZXRob2QsIHVybCk7XG59O1xuXG5leHBvcnRzID0gbW9kdWxlLmV4cG9ydHM7XG5cbmNvbnN0IHJlcXVlc3QgPSBleHBvcnRzO1xuXG5leHBvcnRzLlJlcXVlc3QgPSBSZXF1ZXN0O1xuXG4vKipcbiAqIERldGVybWluZSBYSFIuXG4gKi9cblxucmVxdWVzdC5nZXRYSFIgPSAoKSA9PiB7XG4gIGlmIChcbiAgICByb290LlhNTEh0dHBSZXF1ZXN0ICYmXG4gICAgKCFyb290LmxvY2F0aW9uIHx8XG4gICAgICByb290LmxvY2F0aW9uLnByb3RvY29sICE9PSAnZmlsZTonIHx8XG4gICAgICAhcm9vdC5BY3RpdmVYT2JqZWN0KVxuICApIHtcbiAgICByZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7XG4gIH1cblxuICB0cnkge1xuICAgIHJldHVybiBuZXcgQWN0aXZlWE9iamVjdCgnTWljcm9zb2Z0LlhNTEhUVFAnKTtcbiAgfSBjYXRjaCB7fVxuXG4gIHRyeSB7XG4gICAgcmV0dXJuIG5ldyBBY3RpdmVYT2JqZWN0KCdNc3htbDIuWE1MSFRUUC42LjAnKTtcbiAgfSBjYXRjaCB7fVxuXG4gIHRyeSB7XG4gICAgcmV0dXJuIG5ldyBBY3RpdmVYT2JqZWN0KCdNc3htbDIuWE1MSFRUUC4zLjAnKTtcbiAgfSBjYXRjaCB7fVxuXG4gIHRyeSB7XG4gICAgcmV0dXJuIG5ldyBBY3RpdmVYT2JqZWN0KCdNc3htbDIuWE1MSFRUUCcpO1xuICB9IGNhdGNoIHt9XG5cbiAgdGhyb3cgbmV3IEVycm9yKCdCcm93c2VyLW9ubHkgdmVyc2lvbiBvZiBzdXBlcmFnZW50IGNvdWxkIG5vdCBmaW5kIFhIUicpO1xufTtcblxuLyoqXG4gKiBSZW1vdmVzIGxlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UsIGFkZGVkIHRvIHN1cHBvcnQgSUUuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IHNcbiAqIEByZXR1cm4ge1N0cmluZ31cbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cbmNvbnN0IHRyaW0gPSAnJy50cmltID8gKHMpID0+IHMudHJpbSgpIDogKHMpID0+IHMucmVwbGFjZSgvKF5cXHMqfFxccyokKS9nLCAnJyk7XG5cbi8qKlxuICogU2VyaWFsaXplIHRoZSBnaXZlbiBgb2JqYC5cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqXG4gKiBAcmV0dXJuIHtTdHJpbmd9XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBzZXJpYWxpemUob2JqKSB7XG4gIGlmICghaXNPYmplY3Qob2JqKSkgcmV0dXJuIG9iajtcbiAgY29uc3QgcGFpcnMgPSBbXTtcbiAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSkpXG4gICAgICBwdXNoRW5jb2RlZEtleVZhbHVlUGFpcihwYWlycywga2V5LCBvYmpba2V5XSk7XG4gIH1cblxuICByZXR1cm4gcGFpcnMuam9pbignJicpO1xufVxuXG4vKipcbiAqIEhlbHBzICdzZXJpYWxpemUnIHdpdGggc2VyaWFsaXppbmcgYXJyYXlzLlxuICogTXV0YXRlcyB0aGUgcGFpcnMgYXJyYXkuXG4gKlxuICogQHBhcmFtIHtBcnJheX0gcGFpcnNcbiAqIEBwYXJhbSB7U3RyaW5nfSBrZXlcbiAqIEBwYXJhbSB7TWl4ZWR9IHZhbFxuICovXG5cbmZ1bmN0aW9uIHB1c2hFbmNvZGVkS2V5VmFsdWVQYWlyKHBhaXJzLCBrZXksIHZhbCkge1xuICBpZiAodmFsID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgaWYgKHZhbCA9PT0gbnVsbCkge1xuICAgIHBhaXJzLnB1c2goZW5jb2RlVVJJKGtleSkpO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGlmIChBcnJheS5pc0FycmF5KHZhbCkpIHtcbiAgICB2YWwuZm9yRWFjaCgodikgPT4ge1xuICAgICAgcHVzaEVuY29kZWRLZXlWYWx1ZVBhaXIocGFpcnMsIGtleSwgdik7XG4gICAgfSk7XG4gIH0gZWxzZSBpZiAoaXNPYmplY3QodmFsKSkge1xuICAgIGZvciAoY29uc3Qgc3Via2V5IGluIHZhbCkge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh2YWwsIHN1YmtleSkpXG4gICAgICAgIHB1c2hFbmNvZGVkS2V5VmFsdWVQYWlyKHBhaXJzLCBgJHtrZXl9WyR7c3Via2V5fV1gLCB2YWxbc3Via2V5XSk7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHBhaXJzLnB1c2goZW5jb2RlVVJJKGtleSkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQodmFsKSk7XG4gIH1cbn1cblxuLyoqXG4gKiBFeHBvc2Ugc2VyaWFsaXphdGlvbiBtZXRob2QuXG4gKi9cblxucmVxdWVzdC5zZXJpYWxpemVPYmplY3QgPSBzZXJpYWxpemU7XG5cbi8qKlxuICogUGFyc2UgdGhlIGdpdmVuIHgtd3d3LWZvcm0tdXJsZW5jb2RlZCBgc3RyYC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gc3RyXG4gKiBAcmV0dXJuIHtPYmplY3R9XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBwYXJzZVN0cmluZyhzdHIpIHtcbiAgY29uc3Qgb2JqID0ge307XG4gIGNvbnN0IHBhaXJzID0gc3RyLnNwbGl0KCcmJyk7XG4gIGxldCBwYWlyO1xuICBsZXQgcG9zO1xuXG4gIGZvciAobGV0IGkgPSAwLCBsZW4gPSBwYWlycy5sZW5ndGg7IGkgPCBsZW47ICsraSkge1xuICAgIHBhaXIgPSBwYWlyc1tpXTtcbiAgICBwb3MgPSBwYWlyLmluZGV4T2YoJz0nKTtcbiAgICBpZiAocG9zID09PSAtMSkge1xuICAgICAgb2JqW2RlY29kZVVSSUNvbXBvbmVudChwYWlyKV0gPSAnJztcbiAgICB9IGVsc2Uge1xuICAgICAgb2JqW2RlY29kZVVSSUNvbXBvbmVudChwYWlyLnNsaWNlKDAsIHBvcykpXSA9IGRlY29kZVVSSUNvbXBvbmVudChcbiAgICAgICAgcGFpci5zbGljZShwb3MgKyAxKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gb2JqO1xufVxuXG4vKipcbiAqIEV4cG9zZSBwYXJzZXIuXG4gKi9cblxucmVxdWVzdC5wYXJzZVN0cmluZyA9IHBhcnNlU3RyaW5nO1xuXG4vKipcbiAqIERlZmF1bHQgTUlNRSB0eXBlIG1hcC5cbiAqXG4gKiAgICAgc3VwZXJhZ2VudC50eXBlcy54bWwgPSAnYXBwbGljYXRpb24veG1sJztcbiAqXG4gKi9cblxucmVxdWVzdC50eXBlcyA9IHtcbiAgaHRtbDogJ3RleHQvaHRtbCcsXG4gIGpzb246ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgeG1sOiAndGV4dC94bWwnLFxuICB1cmxlbmNvZGVkOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyxcbiAgZm9ybTogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcsXG4gICdmb3JtLWRhdGEnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJ1xufTtcblxuLyoqXG4gKiBEZWZhdWx0IHNlcmlhbGl6YXRpb24gbWFwLlxuICpcbiAqICAgICBzdXBlcmFnZW50LnNlcmlhbGl6ZVsnYXBwbGljYXRpb24veG1sJ10gPSBmdW5jdGlvbihvYmope1xuICogICAgICAgcmV0dXJuICdnZW5lcmF0ZWQgeG1sIGhlcmUnO1xuICogICAgIH07XG4gKlxuICovXG5cbnJlcXVlc3Quc2VyaWFsaXplID0ge1xuICAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJzogcXMuc3RyaW5naWZ5LFxuICAnYXBwbGljYXRpb24vanNvbic6IHNhZmVTdHJpbmdpZnlcbn07XG5cbi8qKlxuICogRGVmYXVsdCBwYXJzZXJzLlxuICpcbiAqICAgICBzdXBlcmFnZW50LnBhcnNlWydhcHBsaWNhdGlvbi94bWwnXSA9IGZ1bmN0aW9uKHN0cil7XG4gKiAgICAgICByZXR1cm4geyBvYmplY3QgcGFyc2VkIGZyb20gc3RyIH07XG4gKiAgICAgfTtcbiAqXG4gKi9cblxucmVxdWVzdC5wYXJzZSA9IHtcbiAgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCc6IHBhcnNlU3RyaW5nLFxuICAnYXBwbGljYXRpb24vanNvbic6IEpTT04ucGFyc2Vcbn07XG5cbi8qKlxuICogUGFyc2UgdGhlIGdpdmVuIGhlYWRlciBgc3RyYCBpbnRvXG4gKiBhbiBvYmplY3QgY29udGFpbmluZyB0aGUgbWFwcGVkIGZpZWxkcy5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gc3RyXG4gKiBAcmV0dXJuIHtPYmplY3R9XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBwYXJzZUhlYWRlcihzdHIpIHtcbiAgY29uc3QgbGluZXMgPSBzdHIuc3BsaXQoL1xccj9cXG4vKTtcbiAgY29uc3QgZmllbGRzID0ge307XG4gIGxldCBpbmRleDtcbiAgbGV0IGxpbmU7XG4gIGxldCBmaWVsZDtcbiAgbGV0IHZhbDtcblxuICBmb3IgKGxldCBpID0gMCwgbGVuID0gbGluZXMubGVuZ3RoOyBpIDwgbGVuOyArK2kpIHtcbiAgICBsaW5lID0gbGluZXNbaV07XG4gICAgaW5kZXggPSBsaW5lLmluZGV4T2YoJzonKTtcbiAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAvLyBjb3VsZCBiZSBlbXB0eSBsaW5lLCBqdXN0IHNraXAgaXRcbiAgICAgIGNvbnRpbnVlO1xuICAgIH1cblxuICAgIGZpZWxkID0gbGluZS5zbGljZSgwLCBpbmRleCkudG9Mb3dlckNhc2UoKTtcbiAgICB2YWwgPSB0cmltKGxpbmUuc2xpY2UoaW5kZXggKyAxKSk7XG4gICAgZmllbGRzW2ZpZWxkXSA9IHZhbDtcbiAgfVxuXG4gIHJldHVybiBmaWVsZHM7XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgYG1pbWVgIGlzIGpzb24gb3IgaGFzICtqc29uIHN0cnVjdHVyZWQgc3ludGF4IHN1ZmZpeC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gbWltZVxuICogQHJldHVybiB7Qm9vbGVhbn1cbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cbmZ1bmN0aW9uIGlzSlNPTihtaW1lKSB7XG4gIC8vIHNob3VsZCBtYXRjaCAvanNvbiBvciAranNvblxuICAvLyBidXQgbm90IC9qc29uLXNlcVxuICByZXR1cm4gL1svK11qc29uKCR8W14tXFx3XSkvaS50ZXN0KG1pbWUpO1xufVxuXG4vKipcbiAqIEluaXRpYWxpemUgYSBuZXcgYFJlc3BvbnNlYCB3aXRoIHRoZSBnaXZlbiBgeGhyYC5cbiAqXG4gKiAgLSBzZXQgZmxhZ3MgKC5vaywgLmVycm9yLCBldGMpXG4gKiAgLSBwYXJzZSBoZWFkZXJcbiAqXG4gKiBFeGFtcGxlczpcbiAqXG4gKiAgQWxpYXNpbmcgYHN1cGVyYWdlbnRgIGFzIGByZXF1ZXN0YCBpcyBuaWNlOlxuICpcbiAqICAgICAgcmVxdWVzdCA9IHN1cGVyYWdlbnQ7XG4gKlxuICogIFdlIGNhbiB1c2UgdGhlIHByb21pc2UtbGlrZSBBUEksIG9yIHBhc3MgY2FsbGJhY2tzOlxuICpcbiAqICAgICAgcmVxdWVzdC5nZXQoJy8nKS5lbmQoZnVuY3Rpb24ocmVzKXt9KTtcbiAqICAgICAgcmVxdWVzdC5nZXQoJy8nLCBmdW5jdGlvbihyZXMpe30pO1xuICpcbiAqICBTZW5kaW5nIGRhdGEgY2FuIGJlIGNoYWluZWQ6XG4gKlxuICogICAgICByZXF1ZXN0XG4gKiAgICAgICAgLnBvc3QoJy91c2VyJylcbiAqICAgICAgICAuc2VuZCh7IG5hbWU6ICd0aicgfSlcbiAqICAgICAgICAuZW5kKGZ1bmN0aW9uKHJlcyl7fSk7XG4gKlxuICogIE9yIHBhc3NlZCB0byBgLnNlbmQoKWA6XG4gKlxuICogICAgICByZXF1ZXN0XG4gKiAgICAgICAgLnBvc3QoJy91c2VyJylcbiAqICAgICAgICAuc2VuZCh7IG5hbWU6ICd0aicgfSwgZnVuY3Rpb24ocmVzKXt9KTtcbiAqXG4gKiAgT3IgcGFzc2VkIHRvIGAucG9zdCgpYDpcbiAqXG4gKiAgICAgIHJlcXVlc3RcbiAqICAgICAgICAucG9zdCgnL3VzZXInLCB7IG5hbWU6ICd0aicgfSlcbiAqICAgICAgICAuZW5kKGZ1bmN0aW9uKHJlcyl7fSk7XG4gKlxuICogT3IgZnVydGhlciByZWR1Y2VkIHRvIGEgc2luZ2xlIGNhbGwgZm9yIHNpbXBsZSBjYXNlczpcbiAqXG4gKiAgICAgIHJlcXVlc3RcbiAqICAgICAgICAucG9zdCgnL3VzZXInLCB7IG5hbWU6ICd0aicgfSwgZnVuY3Rpb24ocmVzKXt9KTtcbiAqXG4gKiBAcGFyYW0ge1hNTEhUVFBSZXF1ZXN0fSB4aHJcbiAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zXG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBSZXNwb25zZShyZXEpIHtcbiAgdGhpcy5yZXEgPSByZXE7XG4gIHRoaXMueGhyID0gdGhpcy5yZXEueGhyO1xuICAvLyByZXNwb25zZVRleHQgaXMgYWNjZXNzaWJsZSBvbmx5IGlmIHJlc3BvbnNlVHlwZSBpcyAnJyBvciAndGV4dCcgYW5kIG9uIG9sZGVyIGJyb3dzZXJzXG4gIHRoaXMudGV4dCA9XG4gICAgKHRoaXMucmVxLm1ldGhvZCAhPT0gJ0hFQUQnICYmXG4gICAgICAodGhpcy54aHIucmVzcG9uc2VUeXBlID09PSAnJyB8fCB0aGlzLnhoci5yZXNwb25zZVR5cGUgPT09ICd0ZXh0JykpIHx8XG4gICAgdHlwZW9mIHRoaXMueGhyLnJlc3BvbnNlVHlwZSA9PT0gJ3VuZGVmaW5lZCdcbiAgICAgID8gdGhpcy54aHIucmVzcG9uc2VUZXh0XG4gICAgICA6IG51bGw7XG4gIHRoaXMuc3RhdHVzVGV4dCA9IHRoaXMucmVxLnhoci5zdGF0dXNUZXh0O1xuICBsZXQgeyBzdGF0dXMgfSA9IHRoaXMueGhyO1xuICAvLyBoYW5kbGUgSUU5IGJ1ZzogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xMDA0Njk3Mi9tc2llLXJldHVybnMtc3RhdHVzLWNvZGUtb2YtMTIyMy1mb3ItYWpheC1yZXF1ZXN0XG4gIGlmIChzdGF0dXMgPT09IDEyMjMpIHtcbiAgICBzdGF0dXMgPSAyMDQ7XG4gIH1cblxuICB0aGlzLl9zZXRTdGF0dXNQcm9wZXJ0aWVzKHN0YXR1cyk7XG4gIHRoaXMuaGVhZGVycyA9IHBhcnNlSGVhZGVyKHRoaXMueGhyLmdldEFsbFJlc3BvbnNlSGVhZGVycygpKTtcbiAgdGhpcy5oZWFkZXIgPSB0aGlzLmhlYWRlcnM7XG4gIC8vIGdldEFsbFJlc3BvbnNlSGVhZGVycyBzb21ldGltZXMgZmFsc2VseSByZXR1cm5zIFwiXCIgZm9yIENPUlMgcmVxdWVzdHMsIGJ1dFxuICAvLyBnZXRSZXNwb25zZUhlYWRlciBzdGlsbCB3b3Jrcy4gc28gd2UgZ2V0IGNvbnRlbnQtdHlwZSBldmVuIGlmIGdldHRpbmdcbiAgLy8gb3RoZXIgaGVhZGVycyBmYWlscy5cbiAgdGhpcy5oZWFkZXJbJ2NvbnRlbnQtdHlwZSddID0gdGhpcy54aHIuZ2V0UmVzcG9uc2VIZWFkZXIoJ2NvbnRlbnQtdHlwZScpO1xuICB0aGlzLl9zZXRIZWFkZXJQcm9wZXJ0aWVzKHRoaXMuaGVhZGVyKTtcblxuICBpZiAodGhpcy50ZXh0ID09PSBudWxsICYmIHJlcS5fcmVzcG9uc2VUeXBlKSB7XG4gICAgdGhpcy5ib2R5ID0gdGhpcy54aHIucmVzcG9uc2U7XG4gIH0gZWxzZSB7XG4gICAgdGhpcy5ib2R5ID1cbiAgICAgIHRoaXMucmVxLm1ldGhvZCA9PT0gJ0hFQUQnXG4gICAgICAgID8gbnVsbFxuICAgICAgICA6IHRoaXMuX3BhcnNlQm9keSh0aGlzLnRleHQgPyB0aGlzLnRleHQgOiB0aGlzLnhoci5yZXNwb25zZSk7XG4gIH1cbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5ldy1jYXBcblJlc3BvbnNlQmFzZShSZXNwb25zZS5wcm90b3R5cGUpO1xuXG4vKipcbiAqIFBhcnNlIHRoZSBnaXZlbiBib2R5IGBzdHJgLlxuICpcbiAqIFVzZWQgZm9yIGF1dG8tcGFyc2luZyBvZiBib2RpZXMuIFBhcnNlcnNcbiAqIGFyZSBkZWZpbmVkIG9uIHRoZSBgc3VwZXJhZ2VudC5wYXJzZWAgb2JqZWN0LlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHJcbiAqIEByZXR1cm4ge01peGVkfVxuICogQGFwaSBwcml2YXRlXG4gKi9cblxuUmVzcG9uc2UucHJvdG90eXBlLl9wYXJzZUJvZHkgPSBmdW5jdGlvbiAoc3RyKSB7XG4gIGxldCBwYXJzZSA9IHJlcXVlc3QucGFyc2VbdGhpcy50eXBlXTtcbiAgaWYgKHRoaXMucmVxLl9wYXJzZXIpIHtcbiAgICByZXR1cm4gdGhpcy5yZXEuX3BhcnNlcih0aGlzLCBzdHIpO1xuICB9XG5cbiAgaWYgKCFwYXJzZSAmJiBpc0pTT04odGhpcy50eXBlKSkge1xuICAgIHBhcnNlID0gcmVxdWVzdC5wYXJzZVsnYXBwbGljYXRpb24vanNvbiddO1xuICB9XG5cbiAgcmV0dXJuIHBhcnNlICYmIHN0ciAmJiAoc3RyLmxlbmd0aCA+IDAgfHwgc3RyIGluc3RhbmNlb2YgT2JqZWN0KVxuICAgID8gcGFyc2Uoc3RyKVxuICAgIDogbnVsbDtcbn07XG5cbi8qKlxuICogUmV0dXJuIGFuIGBFcnJvcmAgcmVwcmVzZW50YXRpdmUgb2YgdGhpcyByZXNwb25zZS5cbiAqXG4gKiBAcmV0dXJuIHtFcnJvcn1cbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVzcG9uc2UucHJvdG90eXBlLnRvRXJyb3IgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHsgcmVxIH0gPSB0aGlzO1xuICBjb25zdCB7IG1ldGhvZCB9ID0gcmVxO1xuICBjb25zdCB7IHVybCB9ID0gcmVxO1xuXG4gIGNvbnN0IG1zZyA9IGBjYW5ub3QgJHttZXRob2R9ICR7dXJsfSAoJHt0aGlzLnN0YXR1c30pYDtcbiAgY29uc3QgZXJyID0gbmV3IEVycm9yKG1zZyk7XG4gIGVyci5zdGF0dXMgPSB0aGlzLnN0YXR1cztcbiAgZXJyLm1ldGhvZCA9IG1ldGhvZDtcbiAgZXJyLnVybCA9IHVybDtcblxuICByZXR1cm4gZXJyO1xufTtcblxuLyoqXG4gKiBFeHBvc2UgYFJlc3BvbnNlYC5cbiAqL1xuXG5yZXF1ZXN0LlJlc3BvbnNlID0gUmVzcG9uc2U7XG5cbi8qKlxuICogSW5pdGlhbGl6ZSBhIG5ldyBgUmVxdWVzdGAgd2l0aCB0aGUgZ2l2ZW4gYG1ldGhvZGAgYW5kIGB1cmxgLlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBtZXRob2RcbiAqIEBwYXJhbSB7U3RyaW5nfSB1cmxcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuZnVuY3Rpb24gUmVxdWVzdChtZXRob2QsIHVybCkge1xuICBjb25zdCBzZWxmID0gdGhpcztcbiAgdGhpcy5fcXVlcnkgPSB0aGlzLl9xdWVyeSB8fCBbXTtcbiAgdGhpcy5tZXRob2QgPSBtZXRob2Q7XG4gIHRoaXMudXJsID0gdXJsO1xuICB0aGlzLmhlYWRlciA9IHt9OyAvLyBwcmVzZXJ2ZXMgaGVhZGVyIG5hbWUgY2FzZVxuICB0aGlzLl9oZWFkZXIgPSB7fTsgLy8gY29lcmNlcyBoZWFkZXIgbmFtZXMgdG8gbG93ZXJjYXNlXG4gIHRoaXMub24oJ2VuZCcsICgpID0+IHtcbiAgICBsZXQgZXJyID0gbnVsbDtcbiAgICBsZXQgcmVzID0gbnVsbDtcblxuICAgIHRyeSB7XG4gICAgICByZXMgPSBuZXcgUmVzcG9uc2Uoc2VsZik7XG4gICAgfSBjYXRjaCAoZXJyXykge1xuICAgICAgZXJyID0gbmV3IEVycm9yKCdQYXJzZXIgaXMgdW5hYmxlIHRvIHBhcnNlIHRoZSByZXNwb25zZScpO1xuICAgICAgZXJyLnBhcnNlID0gdHJ1ZTtcbiAgICAgIGVyci5vcmlnaW5hbCA9IGVycl87XG4gICAgICAvLyBpc3N1ZSAjNjc1OiByZXR1cm4gdGhlIHJhdyByZXNwb25zZSBpZiB0aGUgcmVzcG9uc2UgcGFyc2luZyBmYWlsc1xuICAgICAgaWYgKHNlbGYueGhyKSB7XG4gICAgICAgIC8vIGllOSBkb2Vzbid0IGhhdmUgJ3Jlc3BvbnNlJyBwcm9wZXJ0eVxuICAgICAgICBlcnIucmF3UmVzcG9uc2UgPVxuICAgICAgICAgIHR5cGVvZiBzZWxmLnhoci5yZXNwb25zZVR5cGUgPT09ICd1bmRlZmluZWQnXG4gICAgICAgICAgICA/IHNlbGYueGhyLnJlc3BvbnNlVGV4dFxuICAgICAgICAgICAgOiBzZWxmLnhoci5yZXNwb25zZTtcbiAgICAgICAgLy8gaXNzdWUgIzg3NjogcmV0dXJuIHRoZSBodHRwIHN0YXR1cyBjb2RlIGlmIHRoZSByZXNwb25zZSBwYXJzaW5nIGZhaWxzXG4gICAgICAgIGVyci5zdGF0dXMgPSBzZWxmLnhoci5zdGF0dXMgPyBzZWxmLnhoci5zdGF0dXMgOiBudWxsO1xuICAgICAgICBlcnIuc3RhdHVzQ29kZSA9IGVyci5zdGF0dXM7IC8vIGJhY2t3YXJkcy1jb21wYXQgb25seVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZXJyLnJhd1Jlc3BvbnNlID0gbnVsbDtcbiAgICAgICAgZXJyLnN0YXR1cyA9IG51bGw7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzZWxmLmNhbGxiYWNrKGVycik7XG4gICAgfVxuXG4gICAgc2VsZi5lbWl0KCdyZXNwb25zZScsIHJlcyk7XG5cbiAgICBsZXQgbmV3X2VycjtcbiAgICB0cnkge1xuICAgICAgaWYgKCFzZWxmLl9pc1Jlc3BvbnNlT0socmVzKSkge1xuICAgICAgICBuZXdfZXJyID0gbmV3IEVycm9yKFxuICAgICAgICAgIHJlcy5zdGF0dXNUZXh0IHx8IHJlcy50ZXh0IHx8ICdVbnN1Y2Nlc3NmdWwgSFRUUCByZXNwb25zZSdcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJfKSB7XG4gICAgICBuZXdfZXJyID0gZXJyXzsgLy8gb2soKSBjYWxsYmFjayBjYW4gdGhyb3dcbiAgICB9XG5cbiAgICAvLyAjMTAwMCBkb24ndCBjYXRjaCBlcnJvcnMgZnJvbSB0aGUgY2FsbGJhY2sgdG8gYXZvaWQgZG91YmxlIGNhbGxpbmcgaXRcbiAgICBpZiAobmV3X2Vycikge1xuICAgICAgbmV3X2Vyci5vcmlnaW5hbCA9IGVycjtcbiAgICAgIG5ld19lcnIucmVzcG9uc2UgPSByZXM7XG4gICAgICBuZXdfZXJyLnN0YXR1cyA9IHJlcy5zdGF0dXM7XG4gICAgICBzZWxmLmNhbGxiYWNrKG5ld19lcnIsIHJlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNlbGYuY2FsbGJhY2sobnVsbCwgcmVzKTtcbiAgICB9XG4gIH0pO1xufVxuXG4vKipcbiAqIE1peGluIGBFbWl0dGVyYCBhbmQgYFJlcXVlc3RCYXNlYC5cbiAqL1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbmV3LWNhcFxuRW1pdHRlcihSZXF1ZXN0LnByb3RvdHlwZSk7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbmV3LWNhcFxuUmVxdWVzdEJhc2UoUmVxdWVzdC5wcm90b3R5cGUpO1xuXG4vKipcbiAqIFNldCBDb250ZW50LVR5cGUgdG8gYHR5cGVgLCBtYXBwaW5nIHZhbHVlcyBmcm9tIGByZXF1ZXN0LnR5cGVzYC5cbiAqXG4gKiBFeGFtcGxlczpcbiAqXG4gKiAgICAgIHN1cGVyYWdlbnQudHlwZXMueG1sID0gJ2FwcGxpY2F0aW9uL3htbCc7XG4gKlxuICogICAgICByZXF1ZXN0LnBvc3QoJy8nKVxuICogICAgICAgIC50eXBlKCd4bWwnKVxuICogICAgICAgIC5zZW5kKHhtbHN0cmluZylcbiAqICAgICAgICAuZW5kKGNhbGxiYWNrKTtcbiAqXG4gKiAgICAgIHJlcXVlc3QucG9zdCgnLycpXG4gKiAgICAgICAgLnR5cGUoJ2FwcGxpY2F0aW9uL3htbCcpXG4gKiAgICAgICAgLnNlbmQoeG1sc3RyaW5nKVxuICogICAgICAgIC5lbmQoY2FsbGJhY2spO1xuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSB0eXBlXG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSBmb3IgY2hhaW5pbmdcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVxdWVzdC5wcm90b3R5cGUudHlwZSA9IGZ1bmN0aW9uICh0eXBlKSB7XG4gIHRoaXMuc2V0KCdDb250ZW50LVR5cGUnLCByZXF1ZXN0LnR5cGVzW3R5cGVdIHx8IHR5cGUpO1xuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogU2V0IEFjY2VwdCB0byBgdHlwZWAsIG1hcHBpbmcgdmFsdWVzIGZyb20gYHJlcXVlc3QudHlwZXNgLlxuICpcbiAqIEV4YW1wbGVzOlxuICpcbiAqICAgICAgc3VwZXJhZ2VudC50eXBlcy5qc29uID0gJ2FwcGxpY2F0aW9uL2pzb24nO1xuICpcbiAqICAgICAgcmVxdWVzdC5nZXQoJy9hZ2VudCcpXG4gKiAgICAgICAgLmFjY2VwdCgnanNvbicpXG4gKiAgICAgICAgLmVuZChjYWxsYmFjayk7XG4gKlxuICogICAgICByZXF1ZXN0LmdldCgnL2FnZW50JylcbiAqICAgICAgICAuYWNjZXB0KCdhcHBsaWNhdGlvbi9qc29uJylcbiAqICAgICAgICAuZW5kKGNhbGxiYWNrKTtcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gYWNjZXB0XG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSBmb3IgY2hhaW5pbmdcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVxdWVzdC5wcm90b3R5cGUuYWNjZXB0ID0gZnVuY3Rpb24gKHR5cGUpIHtcbiAgdGhpcy5zZXQoJ0FjY2VwdCcsIHJlcXVlc3QudHlwZXNbdHlwZV0gfHwgdHlwZSk7XG4gIHJldHVybiB0aGlzO1xufTtcblxuLyoqXG4gKiBTZXQgQXV0aG9yaXphdGlvbiBmaWVsZCB2YWx1ZSB3aXRoIGB1c2VyYCBhbmQgYHBhc3NgLlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSB1c2VyXG4gKiBAcGFyYW0ge1N0cmluZ30gW3Bhc3NdIG9wdGlvbmFsIGluIGNhc2Ugb2YgdXNpbmcgJ2JlYXJlcicgYXMgdHlwZVxuICogQHBhcmFtIHtPYmplY3R9IG9wdGlvbnMgd2l0aCAndHlwZScgcHJvcGVydHkgJ2F1dG8nLCAnYmFzaWMnIG9yICdiZWFyZXInIChkZWZhdWx0ICdiYXNpYycpXG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSBmb3IgY2hhaW5pbmdcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVxdWVzdC5wcm90b3R5cGUuYXV0aCA9IGZ1bmN0aW9uICh1c2VyLCBwYXNzLCBvcHRpb25zKSB7XG4gIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAxKSBwYXNzID0gJyc7XG4gIGlmICh0eXBlb2YgcGFzcyA9PT0gJ29iamVjdCcgJiYgcGFzcyAhPT0gbnVsbCkge1xuICAgIC8vIHBhc3MgaXMgb3B0aW9uYWwgYW5kIGNhbiBiZSByZXBsYWNlZCB3aXRoIG9wdGlvbnNcbiAgICBvcHRpb25zID0gcGFzcztcbiAgICBwYXNzID0gJyc7XG4gIH1cblxuICBpZiAoIW9wdGlvbnMpIHtcbiAgICBvcHRpb25zID0ge1xuICAgICAgdHlwZTogdHlwZW9mIGJ0b2EgPT09ICdmdW5jdGlvbicgPyAnYmFzaWMnIDogJ2F1dG8nXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IGVuY29kZXIgPSAoc3RyaW5nKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBidG9hID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXR1cm4gYnRvYShzdHJpbmcpO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHVzZSBiYXNpYyBhdXRoLCBidG9hIGlzIG5vdCBhIGZ1bmN0aW9uJyk7XG4gIH07XG5cbiAgcmV0dXJuIHRoaXMuX2F1dGgodXNlciwgcGFzcywgb3B0aW9ucywgZW5jb2Rlcik7XG59O1xuXG4vKipcbiAqIEFkZCBxdWVyeS1zdHJpbmcgYHZhbGAuXG4gKlxuICogRXhhbXBsZXM6XG4gKlxuICogICByZXF1ZXN0LmdldCgnL3Nob2VzJylcbiAqICAgICAucXVlcnkoJ3NpemU9MTAnKVxuICogICAgIC5xdWVyeSh7IGNvbG9yOiAnYmx1ZScgfSlcbiAqXG4gKiBAcGFyYW0ge09iamVjdHxTdHJpbmd9IHZhbFxuICogQHJldHVybiB7UmVxdWVzdH0gZm9yIGNoYWluaW5nXG4gKiBAYXBpIHB1YmxpY1xuICovXG5cblJlcXVlc3QucHJvdG90eXBlLnF1ZXJ5ID0gZnVuY3Rpb24gKHZhbCkge1xuICBpZiAodHlwZW9mIHZhbCAhPT0gJ3N0cmluZycpIHZhbCA9IHNlcmlhbGl6ZSh2YWwpO1xuICBpZiAodmFsKSB0aGlzLl9xdWVyeS5wdXNoKHZhbCk7XG4gIHJldHVybiB0aGlzO1xufTtcblxuLyoqXG4gKiBRdWV1ZSB0aGUgZ2l2ZW4gYGZpbGVgIGFzIGFuIGF0dGFjaG1lbnQgdG8gdGhlIHNwZWNpZmllZCBgZmllbGRgLFxuICogd2l0aCBvcHRpb25hbCBgb3B0aW9uc2AgKG9yIGZpbGVuYW1lKS5cbiAqXG4gKiBgYGAganNcbiAqIHJlcXVlc3QucG9zdCgnL3VwbG9hZCcpXG4gKiAgIC5hdHRhY2goJ2NvbnRlbnQnLCBuZXcgQmxvYihbJzxhIGlkPVwiYVwiPjxiIGlkPVwiYlwiPmhleSE8L2I+PC9hPiddLCB7IHR5cGU6IFwidGV4dC9odG1sXCJ9KSlcbiAqICAgLmVuZChjYWxsYmFjayk7XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gZmllbGRcbiAqIEBwYXJhbSB7QmxvYnxGaWxlfSBmaWxlXG4gKiBAcGFyYW0ge1N0cmluZ3xPYmplY3R9IG9wdGlvbnNcbiAqIEByZXR1cm4ge1JlcXVlc3R9IGZvciBjaGFpbmluZ1xuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5SZXF1ZXN0LnByb3RvdHlwZS5hdHRhY2ggPSBmdW5jdGlvbiAoZmllbGQsIGZpbGUsIG9wdGlvbnMpIHtcbiAgaWYgKGZpbGUpIHtcbiAgICBpZiAodGhpcy5fZGF0YSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwic3VwZXJhZ2VudCBjYW4ndCBtaXggLnNlbmQoKSBhbmQgLmF0dGFjaCgpXCIpO1xuICAgIH1cblxuICAgIHRoaXMuX2dldEZvcm1EYXRhKCkuYXBwZW5kKGZpZWxkLCBmaWxlLCBvcHRpb25zIHx8IGZpbGUubmFtZSk7XG4gIH1cblxuICByZXR1cm4gdGhpcztcbn07XG5cblJlcXVlc3QucHJvdG90eXBlLl9nZXRGb3JtRGF0YSA9IGZ1bmN0aW9uICgpIHtcbiAgaWYgKCF0aGlzLl9mb3JtRGF0YSkge1xuICAgIHRoaXMuX2Zvcm1EYXRhID0gbmV3IHJvb3QuRm9ybURhdGEoKTtcbiAgfVxuXG4gIHJldHVybiB0aGlzLl9mb3JtRGF0YTtcbn07XG5cbi8qKlxuICogSW52b2tlIHRoZSBjYWxsYmFjayB3aXRoIGBlcnJgIGFuZCBgcmVzYFxuICogYW5kIGhhbmRsZSBhcml0eSBjaGVjay5cbiAqXG4gKiBAcGFyYW0ge0Vycm9yfSBlcnJcbiAqIEBwYXJhbSB7UmVzcG9uc2V9IHJlc1xuICogQGFwaSBwcml2YXRlXG4gKi9cblxuUmVxdWVzdC5wcm90b3R5cGUuY2FsbGJhY2sgPSBmdW5jdGlvbiAoZXJyLCByZXMpIHtcbiAgaWYgKHRoaXMuX3Nob3VsZFJldHJ5KGVyciwgcmVzKSkge1xuICAgIHJldHVybiB0aGlzLl9yZXRyeSgpO1xuICB9XG5cbiAgY29uc3QgZm4gPSB0aGlzLl9jYWxsYmFjaztcbiAgdGhpcy5jbGVhclRpbWVvdXQoKTtcblxuICBpZiAoZXJyKSB7XG4gICAgaWYgKHRoaXMuX21heFJldHJpZXMpIGVyci5yZXRyaWVzID0gdGhpcy5fcmV0cmllcyAtIDE7XG4gICAgdGhpcy5lbWl0KCdlcnJvcicsIGVycik7XG4gIH1cblxuICBmbihlcnIsIHJlcyk7XG59O1xuXG4vKipcbiAqIEludm9rZSBjYWxsYmFjayB3aXRoIHgtZG9tYWluIGVycm9yLlxuICpcbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cblJlcXVlc3QucHJvdG90eXBlLmNyb3NzRG9tYWluRXJyb3IgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IGVyciA9IG5ldyBFcnJvcihcbiAgICAnUmVxdWVzdCBoYXMgYmVlbiB0ZXJtaW5hdGVkXFxuUG9zc2libGUgY2F1c2VzOiB0aGUgbmV0d29yayBpcyBvZmZsaW5lLCBPcmlnaW4gaXMgbm90IGFsbG93ZWQgYnkgQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luLCB0aGUgcGFnZSBpcyBiZWluZyB1bmxvYWRlZCwgZXRjLidcbiAgKTtcbiAgZXJyLmNyb3NzRG9tYWluID0gdHJ1ZTtcblxuICBlcnIuc3RhdHVzID0gdGhpcy5zdGF0dXM7XG4gIGVyci5tZXRob2QgPSB0aGlzLm1ldGhvZDtcbiAgZXJyLnVybCA9IHRoaXMudXJsO1xuXG4gIHRoaXMuY2FsbGJhY2soZXJyKTtcbn07XG5cbi8vIFRoaXMgb25seSB3YXJucywgYmVjYXVzZSB0aGUgcmVxdWVzdCBpcyBzdGlsbCBsaWtlbHkgdG8gd29ya1xuUmVxdWVzdC5wcm90b3R5cGUuYWdlbnQgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnNvbGUud2FybignVGhpcyBpcyBub3Qgc3VwcG9ydGVkIGluIGJyb3dzZXIgdmVyc2lvbiBvZiBzdXBlcmFnZW50Jyk7XG4gIHJldHVybiB0aGlzO1xufTtcblxuUmVxdWVzdC5wcm90b3R5cGUuY2EgPSBSZXF1ZXN0LnByb3RvdHlwZS5hZ2VudDtcblJlcXVlc3QucHJvdG90eXBlLmJ1ZmZlciA9IFJlcXVlc3QucHJvdG90eXBlLmNhO1xuXG4vLyBUaGlzIHRocm93cywgYmVjYXVzZSBpdCBjYW4ndCBzZW5kL3JlY2VpdmUgZGF0YSBhcyBleHBlY3RlZFxuUmVxdWVzdC5wcm90b3R5cGUud3JpdGUgPSAoKSA9PiB7XG4gIHRocm93IG5ldyBFcnJvcihcbiAgICAnU3RyZWFtaW5nIGlzIG5vdCBzdXBwb3J0ZWQgaW4gYnJvd3NlciB2ZXJzaW9uIG9mIHN1cGVyYWdlbnQnXG4gICk7XG59O1xuXG5SZXF1ZXN0LnByb3RvdHlwZS5waXBlID0gUmVxdWVzdC5wcm90b3R5cGUud3JpdGU7XG5cbi8qKlxuICogQ2hlY2sgaWYgYG9iamAgaXMgYSBob3N0IG9iamVjdCxcbiAqIHdlIGRvbid0IHdhbnQgdG8gc2VyaWFsaXplIHRoZXNlIDopXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IG9iaiBob3N0IG9iamVjdFxuICogQHJldHVybiB7Qm9vbGVhbn0gaXMgYSBob3N0IG9iamVjdFxuICogQGFwaSBwcml2YXRlXG4gKi9cblJlcXVlc3QucHJvdG90eXBlLl9pc0hvc3QgPSBmdW5jdGlvbiAob2JqKSB7XG4gIC8vIE5hdGl2ZSBvYmplY3RzIHN0cmluZ2lmeSB0byBbb2JqZWN0IEZpbGVdLCBbb2JqZWN0IEJsb2JdLCBbb2JqZWN0IEZvcm1EYXRhXSwgZXRjLlxuICByZXR1cm4gKFxuICAgIG9iaiAmJlxuICAgIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmXG4gICAgIUFycmF5LmlzQXJyYXkob2JqKSAmJlxuICAgIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChvYmopICE9PSAnW29iamVjdCBPYmplY3RdJ1xuICApO1xufTtcblxuLyoqXG4gKiBJbml0aWF0ZSByZXF1ZXN0LCBpbnZva2luZyBjYWxsYmFjayBgZm4ocmVzKWBcbiAqIHdpdGggYW4gaW5zdGFuY2VvZiBgUmVzcG9uc2VgLlxuICpcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGZuXG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSBmb3IgY2hhaW5pbmdcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVxdWVzdC5wcm90b3R5cGUuZW5kID0gZnVuY3Rpb24gKGZuKSB7XG4gIGlmICh0aGlzLl9lbmRDYWxsZWQpIHtcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICAnV2FybmluZzogLmVuZCgpIHdhcyBjYWxsZWQgdHdpY2UuIFRoaXMgaXMgbm90IHN1cHBvcnRlZCBpbiBzdXBlcmFnZW50J1xuICAgICk7XG4gIH1cblxuICB0aGlzLl9lbmRDYWxsZWQgPSB0cnVlO1xuXG4gIC8vIHN0b3JlIGNhbGxiYWNrXG4gIHRoaXMuX2NhbGxiYWNrID0gZm4gfHwgbm9vcDtcblxuICAvLyBxdWVyeXN0cmluZ1xuICB0aGlzLl9maW5hbGl6ZVF1ZXJ5U3RyaW5nKCk7XG5cbiAgdGhpcy5fZW5kKCk7XG59O1xuXG5SZXF1ZXN0LnByb3RvdHlwZS5fc2V0VXBsb2FkVGltZW91dCA9IGZ1bmN0aW9uICgpIHtcbiAgY29uc3Qgc2VsZiA9IHRoaXM7XG5cbiAgLy8gdXBsb2FkIHRpbWVvdXQgaXQncyB3b2tycyBvbmx5IGlmIGRlYWRsaW5lIHRpbWVvdXQgaXMgb2ZmXG4gIGlmICh0aGlzLl91cGxvYWRUaW1lb3V0ICYmICF0aGlzLl91cGxvYWRUaW1lb3V0VGltZXIpIHtcbiAgICB0aGlzLl91cGxvYWRUaW1lb3V0VGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNlbGYuX3RpbWVvdXRFcnJvcihcbiAgICAgICAgJ1VwbG9hZCB0aW1lb3V0IG9mICcsXG4gICAgICAgIHNlbGYuX3VwbG9hZFRpbWVvdXQsXG4gICAgICAgICdFVElNRURPVVQnXG4gICAgICApO1xuICAgIH0sIHRoaXMuX3VwbG9hZFRpbWVvdXQpO1xuICB9XG59O1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY29tcGxleGl0eVxuUmVxdWVzdC5wcm90b3R5cGUuX2VuZCA9IGZ1bmN0aW9uICgpIHtcbiAgaWYgKHRoaXMuX2Fib3J0ZWQpXG4gICAgcmV0dXJuIHRoaXMuY2FsbGJhY2soXG4gICAgICBuZXcgRXJyb3IoJ1RoZSByZXF1ZXN0IGhhcyBiZWVuIGFib3J0ZWQgZXZlbiBiZWZvcmUgLmVuZCgpIHdhcyBjYWxsZWQnKVxuICAgICk7XG5cbiAgY29uc3Qgc2VsZiA9IHRoaXM7XG4gIHRoaXMueGhyID0gcmVxdWVzdC5nZXRYSFIoKTtcbiAgY29uc3QgeyB4aHIgfSA9IHRoaXM7XG4gIGxldCBkYXRhID0gdGhpcy5fZm9ybURhdGEgfHwgdGhpcy5fZGF0YTtcblxuICB0aGlzLl9zZXRUaW1lb3V0cygpO1xuXG4gIC8vIHN0YXRlIGNoYW5nZVxuICB4aHIub25yZWFkeXN0YXRlY2hhbmdlID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgcmVhZHlTdGF0ZSB9ID0geGhyO1xuICAgIGlmIChyZWFkeVN0YXRlID49IDIgJiYgc2VsZi5fcmVzcG9uc2VUaW1lb3V0VGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dChzZWxmLl9yZXNwb25zZVRpbWVvdXRUaW1lcik7XG4gICAgfVxuXG4gICAgaWYgKHJlYWR5U3RhdGUgIT09IDQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBJbiBJRTksIHJlYWRzIHRvIGFueSBwcm9wZXJ0eSAoZS5nLiBzdGF0dXMpIG9mZiBvZiBhbiBhYm9ydGVkIFhIUiB3aWxsXG4gICAgLy8gcmVzdWx0IGluIHRoZSBlcnJvciBcIkNvdWxkIG5vdCBjb21wbGV0ZSB0aGUgb3BlcmF0aW9uIGR1ZSB0byBlcnJvciBjMDBjMDIzZlwiXG4gICAgbGV0IHN0YXR1cztcbiAgICB0cnkge1xuICAgICAgc3RhdHVzID0geGhyLnN0YXR1cztcbiAgICB9IGNhdGNoIHtcbiAgICAgIHN0YXR1cyA9IDA7XG4gICAgfVxuXG4gICAgaWYgKCFzdGF0dXMpIHtcbiAgICAgIGlmIChzZWxmLnRpbWVkb3V0IHx8IHNlbGYuX2Fib3J0ZWQpIHJldHVybjtcbiAgICAgIHJldHVybiBzZWxmLmNyb3NzRG9tYWluRXJyb3IoKTtcbiAgICB9XG5cbiAgICBzZWxmLmVtaXQoJ2VuZCcpO1xuICB9O1xuXG4gIC8vIHByb2dyZXNzXG4gIGNvbnN0IGhhbmRsZVByb2dyZXNzID0gKGRpcmVjdGlvbiwgZSkgPT4ge1xuICAgIGlmIChlLnRvdGFsID4gMCkge1xuICAgICAgZS5wZXJjZW50ID0gKGUubG9hZGVkIC8gZS50b3RhbCkgKiAxMDA7XG5cbiAgICAgIGlmIChlLnBlcmNlbnQgPT09IDEwMCkge1xuICAgICAgICBjbGVhclRpbWVvdXQoc2VsZi5fdXBsb2FkVGltZW91dFRpbWVyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBlLmRpcmVjdGlvbiA9IGRpcmVjdGlvbjtcbiAgICBzZWxmLmVtaXQoJ3Byb2dyZXNzJywgZSk7XG4gIH07XG5cbiAgaWYgKHRoaXMuaGFzTGlzdGVuZXJzKCdwcm9ncmVzcycpKSB7XG4gICAgdHJ5IHtcbiAgICAgIHhoci5hZGRFdmVudExpc3RlbmVyKCdwcm9ncmVzcycsIGhhbmRsZVByb2dyZXNzLmJpbmQobnVsbCwgJ2Rvd25sb2FkJykpO1xuICAgICAgaWYgKHhoci51cGxvYWQpIHtcbiAgICAgICAgeGhyLnVwbG9hZC5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgICAgICdwcm9ncmVzcycsXG4gICAgICAgICAgaGFuZGxlUHJvZ3Jlc3MuYmluZChudWxsLCAndXBsb2FkJylcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIEFjY2Vzc2luZyB4aHIudXBsb2FkIGZhaWxzIGluIElFIGZyb20gYSB3ZWIgd29ya2VyLCBzbyBqdXN0IHByZXRlbmQgaXQgZG9lc24ndCBleGlzdC5cbiAgICAgIC8vIFJlcG9ydGVkIGhlcmU6XG4gICAgICAvLyBodHRwczovL2Nvbm5lY3QubWljcm9zb2Z0LmNvbS9JRS9mZWVkYmFjay9kZXRhaWxzLzgzNzI0NS94bWxodHRwcmVxdWVzdC11cGxvYWQtdGhyb3dzLWludmFsaWQtYXJndW1lbnQtd2hlbi11c2VkLWZyb20td2ViLXdvcmtlci1jb250ZXh0XG4gICAgfVxuICB9XG5cbiAgaWYgKHhoci51cGxvYWQpIHtcbiAgICB0aGlzLl9zZXRVcGxvYWRUaW1lb3V0KCk7XG4gIH1cblxuICAvLyBpbml0aWF0ZSByZXF1ZXN0XG4gIHRyeSB7XG4gICAgaWYgKHRoaXMudXNlcm5hbWUgJiYgdGhpcy5wYXNzd29yZCkge1xuICAgICAgeGhyLm9wZW4odGhpcy5tZXRob2QsIHRoaXMudXJsLCB0cnVlLCB0aGlzLnVzZXJuYW1lLCB0aGlzLnBhc3N3b3JkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgeGhyLm9wZW4odGhpcy5tZXRob2QsIHRoaXMudXJsLCB0cnVlKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIC8vIHNlZSAjMTE0OVxuICAgIHJldHVybiB0aGlzLmNhbGxiYWNrKGVycik7XG4gIH1cblxuICAvLyBDT1JTXG4gIGlmICh0aGlzLl93aXRoQ3JlZGVudGlhbHMpIHhoci53aXRoQ3JlZGVudGlhbHMgPSB0cnVlO1xuXG4gIC8vIGJvZHlcbiAgaWYgKFxuICAgICF0aGlzLl9mb3JtRGF0YSAmJlxuICAgIHRoaXMubWV0aG9kICE9PSAnR0VUJyAmJlxuICAgIHRoaXMubWV0aG9kICE9PSAnSEVBRCcgJiZcbiAgICB0eXBlb2YgZGF0YSAhPT0gJ3N0cmluZycgJiZcbiAgICAhdGhpcy5faXNIb3N0KGRhdGEpXG4gICkge1xuICAgIC8vIHNlcmlhbGl6ZSBzdHVmZlxuICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gdGhpcy5faGVhZGVyWydjb250ZW50LXR5cGUnXTtcbiAgICBsZXQgc2VyaWFsaXplID1cbiAgICAgIHRoaXMuX3NlcmlhbGl6ZXIgfHxcbiAgICAgIHJlcXVlc3Quc2VyaWFsaXplW2NvbnRlbnRUeXBlID8gY29udGVudFR5cGUuc3BsaXQoJzsnKVswXSA6ICcnXTtcbiAgICBpZiAoIXNlcmlhbGl6ZSAmJiBpc0pTT04oY29udGVudFR5cGUpKSB7XG4gICAgICBzZXJpYWxpemUgPSByZXF1ZXN0LnNlcmlhbGl6ZVsnYXBwbGljYXRpb24vanNvbiddO1xuICAgIH1cblxuICAgIGlmIChzZXJpYWxpemUpIGRhdGEgPSBzZXJpYWxpemUoZGF0YSk7XG4gIH1cblxuICAvLyBzZXQgaGVhZGVyIGZpZWxkc1xuICBmb3IgKGNvbnN0IGZpZWxkIGluIHRoaXMuaGVhZGVyKSB7XG4gICAgaWYgKHRoaXMuaGVhZGVyW2ZpZWxkXSA9PT0gbnVsbCkgY29udGludWU7XG5cbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuaGVhZGVyLCBmaWVsZCkpXG4gICAgICB4aHIuc2V0UmVxdWVzdEhlYWRlcihmaWVsZCwgdGhpcy5oZWFkZXJbZmllbGRdKTtcbiAgfVxuXG4gIGlmICh0aGlzLl9yZXNwb25zZVR5cGUpIHtcbiAgICB4aHIucmVzcG9uc2VUeXBlID0gdGhpcy5fcmVzcG9uc2VUeXBlO1xuICB9XG5cbiAgLy8gc2VuZCBzdHVmZlxuICB0aGlzLmVtaXQoJ3JlcXVlc3QnLCB0aGlzKTtcblxuICAvLyBJRTExIHhoci5zZW5kKHVuZGVmaW5lZCkgc2VuZHMgJ3VuZGVmaW5lZCcgc3RyaW5nIGFzIFBPU1QgcGF5bG9hZCAoaW5zdGVhZCBvZiBub3RoaW5nKVxuICAvLyBXZSBuZWVkIG51bGwgaGVyZSBpZiBkYXRhIGlzIHVuZGVmaW5lZFxuICB4aHIuc2VuZCh0eXBlb2YgZGF0YSA9PT0gJ3VuZGVmaW5lZCcgPyBudWxsIDogZGF0YSk7XG59O1xuXG5yZXF1ZXN0LmFnZW50ID0gKCkgPT4gbmV3IEFnZW50KCk7XG5cblsnR0VUJywgJ1BPU1QnLCAnT1BUSU9OUycsICdQQVRDSCcsICdQVVQnLCAnREVMRVRFJ10uZm9yRWFjaCgobWV0aG9kKSA9PiB7XG4gIEFnZW50LnByb3RvdHlwZVttZXRob2QudG9Mb3dlckNhc2UoKV0gPSBmdW5jdGlvbiAodXJsLCBmbikge1xuICAgIGNvbnN0IHJlcSA9IG5ldyByZXF1ZXN0LlJlcXVlc3QobWV0aG9kLCB1cmwpO1xuICAgIHRoaXMuX3NldERlZmF1bHRzKHJlcSk7XG4gICAgaWYgKGZuKSB7XG4gICAgICByZXEuZW5kKGZuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVxO1xuICB9O1xufSk7XG5cbkFnZW50LnByb3RvdHlwZS5kZWwgPSBBZ2VudC5wcm90b3R5cGUuZGVsZXRlO1xuXG4vKipcbiAqIEdFVCBgdXJsYCB3aXRoIG9wdGlvbmFsIGNhbGxiYWNrIGBmbihyZXMpYC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gdXJsXG4gKiBAcGFyYW0ge01peGVkfEZ1bmN0aW9ufSBbZGF0YV0gb3IgZm5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IFtmbl1cbiAqIEByZXR1cm4ge1JlcXVlc3R9XG4gKiBAYXBpIHB1YmxpY1xuICovXG5cbnJlcXVlc3QuZ2V0ID0gKHVybCwgZGF0YSwgZm4pID0+IHtcbiAgY29uc3QgcmVxID0gcmVxdWVzdCgnR0VUJywgdXJsKTtcbiAgaWYgKHR5cGVvZiBkYXRhID09PSAnZnVuY3Rpb24nKSB7XG4gICAgZm4gPSBkYXRhO1xuICAgIGRhdGEgPSBudWxsO1xuICB9XG5cbiAgaWYgKGRhdGEpIHJlcS5xdWVyeShkYXRhKTtcbiAgaWYgKGZuKSByZXEuZW5kKGZuKTtcbiAgcmV0dXJuIHJlcTtcbn07XG5cbi8qKlxuICogSEVBRCBgdXJsYCB3aXRoIG9wdGlvbmFsIGNhbGxiYWNrIGBmbihyZXMpYC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gdXJsXG4gKiBAcGFyYW0ge01peGVkfEZ1bmN0aW9ufSBbZGF0YV0gb3IgZm5cbiAqIEBwYXJhbSB7RnVuY3Rpb259IFtmbl1cbiAqIEByZXR1cm4ge1JlcXVlc3R9XG4gKiBAYXBpIHB1YmxpY1xuICovXG5cbnJlcXVlc3QuaGVhZCA9ICh1cmwsIGRhdGEsIGZuKSA9PiB7XG4gIGNvbnN0IHJlcSA9IHJlcXVlc3QoJ0hFQUQnLCB1cmwpO1xuICBpZiAodHlwZW9mIGRhdGEgPT09ICdmdW5jdGlvbicpIHtcbiAgICBmbiA9IGRhdGE7XG4gICAgZGF0YSA9IG51bGw7XG4gIH1cblxuICBpZiAoZGF0YSkgcmVxLnF1ZXJ5KGRhdGEpO1xuICBpZiAoZm4pIHJlcS5lbmQoZm4pO1xuICByZXR1cm4gcmVxO1xufTtcblxuLyoqXG4gKiBPUFRJT05TIHF1ZXJ5IHRvIGB1cmxgIHdpdGggb3B0aW9uYWwgY2FsbGJhY2sgYGZuKHJlcylgLlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSB1cmxcbiAqIEBwYXJhbSB7TWl4ZWR8RnVuY3Rpb259IFtkYXRhXSBvciBmblxuICogQHBhcmFtIHtGdW5jdGlvbn0gW2ZuXVxuICogQHJldHVybiB7UmVxdWVzdH1cbiAqIEBhcGkgcHVibGljXG4gKi9cblxucmVxdWVzdC5vcHRpb25zID0gKHVybCwgZGF0YSwgZm4pID0+IHtcbiAgY29uc3QgcmVxID0gcmVxdWVzdCgnT1BUSU9OUycsIHVybCk7XG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGZuID0gZGF0YTtcbiAgICBkYXRhID0gbnVsbDtcbiAgfVxuXG4gIGlmIChkYXRhKSByZXEuc2VuZChkYXRhKTtcbiAgaWYgKGZuKSByZXEuZW5kKGZuKTtcbiAgcmV0dXJuIHJlcTtcbn07XG5cbi8qKlxuICogREVMRVRFIGB1cmxgIHdpdGggb3B0aW9uYWwgYGRhdGFgIGFuZCBjYWxsYmFjayBgZm4ocmVzKWAuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IHVybFxuICogQHBhcmFtIHtNaXhlZH0gW2RhdGFdXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBbZm5dXG4gKiBAcmV0dXJuIHtSZXF1ZXN0fVxuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5mdW5jdGlvbiBkZWwodXJsLCBkYXRhLCBmbikge1xuICBjb25zdCByZXEgPSByZXF1ZXN0KCdERUxFVEUnLCB1cmwpO1xuICBpZiAodHlwZW9mIGRhdGEgPT09ICdmdW5jdGlvbicpIHtcbiAgICBmbiA9IGRhdGE7XG4gICAgZGF0YSA9IG51bGw7XG4gIH1cblxuICBpZiAoZGF0YSkgcmVxLnNlbmQoZGF0YSk7XG4gIGlmIChmbikgcmVxLmVuZChmbik7XG4gIHJldHVybiByZXE7XG59XG5cbnJlcXVlc3QuZGVsID0gZGVsO1xucmVxdWVzdC5kZWxldGUgPSBkZWw7XG5cbi8qKlxuICogUEFUQ0ggYHVybGAgd2l0aCBvcHRpb25hbCBgZGF0YWAgYW5kIGNhbGxiYWNrIGBmbihyZXMpYC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gdXJsXG4gKiBAcGFyYW0ge01peGVkfSBbZGF0YV1cbiAqIEBwYXJhbSB7RnVuY3Rpb259IFtmbl1cbiAqIEByZXR1cm4ge1JlcXVlc3R9XG4gKiBAYXBpIHB1YmxpY1xuICovXG5cbnJlcXVlc3QucGF0Y2ggPSAodXJsLCBkYXRhLCBmbikgPT4ge1xuICBjb25zdCByZXEgPSByZXF1ZXN0KCdQQVRDSCcsIHVybCk7XG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGZuID0gZGF0YTtcbiAgICBkYXRhID0gbnVsbDtcbiAgfVxuXG4gIGlmIChkYXRhKSByZXEuc2VuZChkYXRhKTtcbiAgaWYgKGZuKSByZXEuZW5kKGZuKTtcbiAgcmV0dXJuIHJlcTtcbn07XG5cbi8qKlxuICogUE9TVCBgdXJsYCB3aXRoIG9wdGlvbmFsIGBkYXRhYCBhbmQgY2FsbGJhY2sgYGZuKHJlcylgLlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSB1cmxcbiAqIEBwYXJhbSB7TWl4ZWR9IFtkYXRhXVxuICogQHBhcmFtIHtGdW5jdGlvbn0gW2ZuXVxuICogQHJldHVybiB7UmVxdWVzdH1cbiAqIEBhcGkgcHVibGljXG4gKi9cblxucmVxdWVzdC5wb3N0ID0gKHVybCwgZGF0YSwgZm4pID0+IHtcbiAgY29uc3QgcmVxID0gcmVxdWVzdCgnUE9TVCcsIHVybCk7XG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGZuID0gZGF0YTtcbiAgICBkYXRhID0gbnVsbDtcbiAgfVxuXG4gIGlmIChkYXRhKSByZXEuc2VuZChkYXRhKTtcbiAgaWYgKGZuKSByZXEuZW5kKGZuKTtcbiAgcmV0dXJuIHJlcTtcbn07XG5cbi8qKlxuICogUFVUIGB1cmxgIHdpdGggb3B0aW9uYWwgYGRhdGFgIGFuZCBjYWxsYmFjayBgZm4ocmVzKWAuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IHVybFxuICogQHBhcmFtIHtNaXhlZHxGdW5jdGlvbn0gW2RhdGFdIG9yIGZuXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBbZm5dXG4gKiBAcmV0dXJuIHtSZXF1ZXN0fVxuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5yZXF1ZXN0LnB1dCA9ICh1cmwsIGRhdGEsIGZuKSA9PiB7XG4gIGNvbnN0IHJlcSA9IHJlcXVlc3QoJ1BVVCcsIHVybCk7XG4gIGlmICh0eXBlb2YgZGF0YSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGZuID0gZGF0YTtcbiAgICBkYXRhID0gbnVsbDtcbiAgfVxuXG4gIGlmIChkYXRhKSByZXEuc2VuZChkYXRhKTtcbiAgaWYgKGZuKSByZXEuZW5kKGZuKTtcbiAgcmV0dXJuIHJlcTtcbn07XG4iXX0= /***/ }), -/* 126 */ +/* 130 */ /***/ (function(module, exports, __webpack_require__) { @@ -17323,33 +17803,1710 @@ Emitter.prototype.hasListeners = function(event){ /***/ }), -/* 127 */ +/* 131 */ +/***/ (function(module, exports) { + +module.exports = stringify +stringify.default = stringify +stringify.stable = deterministicStringify +stringify.stableStringify = deterministicStringify + +var LIMIT_REPLACE_NODE = '[...]' +var CIRCULAR_REPLACE_NODE = '[Circular]' + +var arr = [] +var replacerStack = [] + +function defaultOptions () { + return { + depthLimit: Number.MAX_SAFE_INTEGER, + edgesLimit: Number.MAX_SAFE_INTEGER + } +} + +// Regular stringify +function stringify (obj, replacer, spacer, options) { + if (typeof options === 'undefined') { + options = defaultOptions() + } + + decirc(obj, '', 0, [], undefined, 0, options) + var res + try { + if (replacerStack.length === 0) { + res = JSON.stringify(obj, replacer, spacer) + } else { + res = JSON.stringify(obj, replaceGetterValues(replacer), spacer) + } + } catch (_) { + return JSON.stringify('[unable to serialize, circular reference is too complex to analyze]') + } finally { + while (arr.length !== 0) { + var part = arr.pop() + if (part.length === 4) { + Object.defineProperty(part[0], part[1], part[3]) + } else { + part[0][part[1]] = part[2] + } + } + } + return res +} + +function setReplace (replace, val, k, parent) { + var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k) + if (propertyDescriptor.get !== undefined) { + if (propertyDescriptor.configurable) { + Object.defineProperty(parent, k, { value: replace }) + arr.push([parent, k, val, propertyDescriptor]) + } else { + replacerStack.push([val, k, replace]) + } + } else { + parent[k] = replace + arr.push([parent, k, val]) + } +} + +function decirc (val, k, edgeIndex, stack, parent, depth, options) { + depth += 1 + var i + if (typeof val === 'object' && val !== null) { + for (i = 0; i < stack.length; i++) { + if (stack[i] === val) { + setReplace(CIRCULAR_REPLACE_NODE, val, k, parent) + return + } + } + + if ( + typeof options.depthLimit !== 'undefined' && + depth > options.depthLimit + ) { + setReplace(LIMIT_REPLACE_NODE, val, k, parent) + return + } + + if ( + typeof options.edgesLimit !== 'undefined' && + edgeIndex + 1 > options.edgesLimit + ) { + setReplace(LIMIT_REPLACE_NODE, val, k, parent) + return + } + + stack.push(val) + // Optimize for Arrays. Big arrays could kill the performance otherwise! + if (Array.isArray(val)) { + for (i = 0; i < val.length; i++) { + decirc(val[i], i, i, stack, val, depth, options) + } + } else { + var keys = Object.keys(val) + for (i = 0; i < keys.length; i++) { + var key = keys[i] + decirc(val[key], key, i, stack, val, depth, options) + } + } + stack.pop() + } +} + +// Stable-stringify +function compareFunction (a, b) { + if (a < b) { + return -1 + } + if (a > b) { + return 1 + } + return 0 +} + +function deterministicStringify (obj, replacer, spacer, options) { + if (typeof options === 'undefined') { + options = defaultOptions() + } + + var tmp = deterministicDecirc(obj, '', 0, [], undefined, 0, options) || obj + var res + try { + if (replacerStack.length === 0) { + res = JSON.stringify(tmp, replacer, spacer) + } else { + res = JSON.stringify(tmp, replaceGetterValues(replacer), spacer) + } + } catch (_) { + return JSON.stringify('[unable to serialize, circular reference is too complex to analyze]') + } finally { + // Ensure that we restore the object as it was. + while (arr.length !== 0) { + var part = arr.pop() + if (part.length === 4) { + Object.defineProperty(part[0], part[1], part[3]) + } else { + part[0][part[1]] = part[2] + } + } + } + return res +} + +function deterministicDecirc (val, k, edgeIndex, stack, parent, depth, options) { + depth += 1 + var i + if (typeof val === 'object' && val !== null) { + for (i = 0; i < stack.length; i++) { + if (stack[i] === val) { + setReplace(CIRCULAR_REPLACE_NODE, val, k, parent) + return + } + } + try { + if (typeof val.toJSON === 'function') { + return + } + } catch (_) { + return + } + + if ( + typeof options.depthLimit !== 'undefined' && + depth > options.depthLimit + ) { + setReplace(LIMIT_REPLACE_NODE, val, k, parent) + return + } + + if ( + typeof options.edgesLimit !== 'undefined' && + edgeIndex + 1 > options.edgesLimit + ) { + setReplace(LIMIT_REPLACE_NODE, val, k, parent) + return + } + + stack.push(val) + // Optimize for Arrays. Big arrays could kill the performance otherwise! + if (Array.isArray(val)) { + for (i = 0; i < val.length; i++) { + deterministicDecirc(val[i], i, i, stack, val, depth, options) + } + } else { + // Create a temporary object in the required way + var tmp = {} + var keys = Object.keys(val).sort(compareFunction) + for (i = 0; i < keys.length; i++) { + var key = keys[i] + deterministicDecirc(val[key], key, i, stack, val, depth, options) + tmp[key] = val[key] + } + if (typeof parent !== 'undefined') { + arr.push([parent, k, val]) + parent[k] = tmp + } else { + return tmp + } + } + stack.pop() + } +} + +// wraps replacer function to handle values we couldn't replace +// and mark them as replaced value +function replaceGetterValues (replacer) { + replacer = + typeof replacer !== 'undefined' + ? replacer + : function (k, v) { + return v + } + return function (key, val) { + if (replacerStack.length > 0) { + for (var i = 0; i < replacerStack.length; i++) { + var part = replacerStack[i] + if (part[1] === key && part[0] === val) { + val = part[2] + replacerStack.splice(i, 1) + break + } + } + } + return replacer.call(this, key, val) + } +} + + +/***/ }), +/* 132 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var stringify = __webpack_require__(133); +var parse = __webpack_require__(143); +var formats = __webpack_require__(21); + +module.exports = { + formats: formats, + parse: parse, + stringify: stringify +}; + + +/***/ }), +/* 133 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var getSideChannel = __webpack_require__(134); +var utils = __webpack_require__(29); +var formats = __webpack_require__(21); +var has = Object.prototype.hasOwnProperty; + +var arrayPrefixGenerators = { + brackets: function brackets(prefix) { + return prefix + '[]'; + }, + comma: 'comma', + indices: function indices(prefix, key) { + return prefix + '[' + key + ']'; + }, + repeat: function repeat(prefix) { + return prefix; + } +}; + +var isArray = Array.isArray; +var split = String.prototype.split; +var push = Array.prototype.push; +var pushToArray = function (arr, valueOrArray) { + push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]); +}; + +var toISO = Date.prototype.toISOString; + +var defaultFormat = formats['default']; +var defaults = { + addQueryPrefix: false, + allowDots: false, + charset: 'utf-8', + charsetSentinel: false, + delimiter: '&', + encode: true, + encoder: utils.encode, + encodeValuesOnly: false, + format: defaultFormat, + formatter: formats.formatters[defaultFormat], + // deprecated + indices: false, + serializeDate: function serializeDate(date) { + return toISO.call(date); + }, + skipNulls: false, + strictNullHandling: false +}; + +var isNonNullishPrimitive = function isNonNullishPrimitive(v) { + return typeof v === 'string' + || typeof v === 'number' + || typeof v === 'boolean' + || typeof v === 'symbol' + || typeof v === 'bigint'; +}; + +var sentinel = {}; + +var stringify = function stringify( + object, + prefix, + generateArrayPrefix, + strictNullHandling, + skipNulls, + encoder, + filter, + sort, + allowDots, + serializeDate, + format, + formatter, + encodeValuesOnly, + charset, + sideChannel +) { + var obj = object; + + var tmpSc = sideChannel; + var step = 0; + var findFlag = false; + while ((tmpSc = tmpSc.get(sentinel)) !== undefined && !findFlag) { + // Where object last appeared in the ref tree + var pos = tmpSc.get(object); + step += 1; + if (typeof pos !== 'undefined') { + if (pos === step) { + throw new RangeError('Cyclic object value'); + } else { + findFlag = true; // Break while + } + } + if (typeof tmpSc.get(sentinel) === 'undefined') { + step = 0; + } + } + + if (typeof filter === 'function') { + obj = filter(prefix, obj); + } else if (obj instanceof Date) { + obj = serializeDate(obj); + } else if (generateArrayPrefix === 'comma' && isArray(obj)) { + obj = utils.maybeMap(obj, function (value) { + if (value instanceof Date) { + return serializeDate(value); + } + return value; + }); + } + + if (obj === null) { + if (strictNullHandling) { + return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix; + } + + obj = ''; + } + + if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) { + if (encoder) { + var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format); + if (generateArrayPrefix === 'comma' && encodeValuesOnly) { + var valuesArray = split.call(String(obj), ','); + var valuesJoined = ''; + for (var i = 0; i < valuesArray.length; ++i) { + valuesJoined += (i === 0 ? '' : ',') + formatter(encoder(valuesArray[i], defaults.encoder, charset, 'value', format)); + } + return [formatter(keyValue) + '=' + valuesJoined]; + } + return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))]; + } + return [formatter(prefix) + '=' + formatter(String(obj))]; + } + + var values = []; + + if (typeof obj === 'undefined') { + return values; + } + + var objKeys; + if (generateArrayPrefix === 'comma' && isArray(obj)) { + // we need to join elements in + objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : undefined }]; + } else if (isArray(filter)) { + objKeys = filter; + } else { + var keys = Object.keys(obj); + objKeys = sort ? keys.sort(sort) : keys; + } + + for (var j = 0; j < objKeys.length; ++j) { + var key = objKeys[j]; + var value = typeof key === 'object' && key.value !== undefined ? key.value : obj[key]; + + if (skipNulls && value === null) { + continue; + } + + var keyPrefix = isArray(obj) + ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(prefix, key) : prefix + : prefix + (allowDots ? '.' + key : '[' + key + ']'); + + sideChannel.set(object, step); + var valueSideChannel = getSideChannel(); + valueSideChannel.set(sentinel, sideChannel); + pushToArray(values, stringify( + value, + keyPrefix, + generateArrayPrefix, + strictNullHandling, + skipNulls, + encoder, + filter, + sort, + allowDots, + serializeDate, + format, + formatter, + encodeValuesOnly, + charset, + valueSideChannel + )); + } + + return values; +}; + +var normalizeStringifyOptions = function normalizeStringifyOptions(opts) { + if (!opts) { + return defaults; + } + + if (opts.encoder !== null && opts.encoder !== undefined && typeof opts.encoder !== 'function') { + throw new TypeError('Encoder has to be a function.'); + } + + var charset = opts.charset || defaults.charset; + if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') { + throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined'); + } + + var format = formats['default']; + if (typeof opts.format !== 'undefined') { + if (!has.call(formats.formatters, opts.format)) { + throw new TypeError('Unknown format option provided.'); + } + format = opts.format; + } + var formatter = formats.formatters[format]; + + var filter = defaults.filter; + if (typeof opts.filter === 'function' || isArray(opts.filter)) { + filter = opts.filter; + } + + return { + addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix, + allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots, + charset: charset, + charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel, + delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter, + encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode, + encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder, + encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly, + filter: filter, + format: format, + formatter: formatter, + serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate, + skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls, + sort: typeof opts.sort === 'function' ? opts.sort : null, + strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling + }; +}; + +module.exports = function (object, opts) { + var obj = object; + var options = normalizeStringifyOptions(opts); + + var objKeys; + var filter; + + if (typeof options.filter === 'function') { + filter = options.filter; + obj = filter('', obj); + } else if (isArray(options.filter)) { + filter = options.filter; + objKeys = filter; + } + + var keys = []; + + if (typeof obj !== 'object' || obj === null) { + return ''; + } + + var arrayFormat; + if (opts && opts.arrayFormat in arrayPrefixGenerators) { + arrayFormat = opts.arrayFormat; + } else if (opts && 'indices' in opts) { + arrayFormat = opts.indices ? 'indices' : 'repeat'; + } else { + arrayFormat = 'indices'; + } + + var generateArrayPrefix = arrayPrefixGenerators[arrayFormat]; + + if (!objKeys) { + objKeys = Object.keys(obj); + } + + if (options.sort) { + objKeys.sort(options.sort); + } + + var sideChannel = getSideChannel(); + for (var i = 0; i < objKeys.length; ++i) { + var key = objKeys[i]; + + if (options.skipNulls && obj[key] === null) { + continue; + } + pushToArray(keys, stringify( + obj[key], + key, + generateArrayPrefix, + options.strictNullHandling, + options.skipNulls, + options.encode ? options.encoder : null, + options.filter, + options.sort, + options.allowDots, + options.serializeDate, + options.format, + options.formatter, + options.encodeValuesOnly, + options.charset, + sideChannel + )); + } + + var joined = keys.join(options.delimiter); + var prefix = options.addQueryPrefix === true ? '?' : ''; + + if (options.charsetSentinel) { + if (options.charset === 'iso-8859-1') { + // encodeURIComponent('✓'), the "numeric entity" representation of a checkmark + prefix += 'utf8=%26%2310003%3B&'; + } else { + // encodeURIComponent('✓') + prefix += 'utf8=%E2%9C%93&'; + } + } + + return joined.length > 0 ? prefix + joined : ''; +}; + + +/***/ }), +/* 134 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var GetIntrinsic = __webpack_require__(19); +var callBound = __webpack_require__(139); +var inspect = __webpack_require__(141); + +var $TypeError = GetIntrinsic('%TypeError%'); +var $WeakMap = GetIntrinsic('%WeakMap%', true); +var $Map = GetIntrinsic('%Map%', true); + +var $weakMapGet = callBound('WeakMap.prototype.get', true); +var $weakMapSet = callBound('WeakMap.prototype.set', true); +var $weakMapHas = callBound('WeakMap.prototype.has', true); +var $mapGet = callBound('Map.prototype.get', true); +var $mapSet = callBound('Map.prototype.set', true); +var $mapHas = callBound('Map.prototype.has', true); + +/* + * This function traverses the list returning the node corresponding to the + * given key. + * + * That node is also moved to the head of the list, so that if it's accessed + * again we don't need to traverse the whole list. By doing so, all the recently + * used nodes can be accessed relatively quickly. + */ +var listGetNode = function (list, key) { // eslint-disable-line consistent-return + for (var prev = list, curr; (curr = prev.next) !== null; prev = curr) { + if (curr.key === key) { + prev.next = curr.next; + curr.next = list.next; + list.next = curr; // eslint-disable-line no-param-reassign + return curr; + } + } +}; + +var listGet = function (objects, key) { + var node = listGetNode(objects, key); + return node && node.value; +}; +var listSet = function (objects, key, value) { + var node = listGetNode(objects, key); + if (node) { + node.value = value; + } else { + // Prepend the new node to the beginning of the list + objects.next = { // eslint-disable-line no-param-reassign + key: key, + next: objects.next, + value: value + }; + } +}; +var listHas = function (objects, key) { + return !!listGetNode(objects, key); +}; + +module.exports = function getSideChannel() { + var $wm; + var $m; + var $o; + var channel = { + assert: function (key) { + if (!channel.has(key)) { + throw new $TypeError('Side channel does not contain ' + inspect(key)); + } + }, + get: function (key) { // eslint-disable-line consistent-return + if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) { + if ($wm) { + return $weakMapGet($wm, key); + } + } else if ($Map) { + if ($m) { + return $mapGet($m, key); + } + } else { + if ($o) { // eslint-disable-line no-lonely-if + return listGet($o, key); + } + } + }, + has: function (key) { + if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) { + if ($wm) { + return $weakMapHas($wm, key); + } + } else if ($Map) { + if ($m) { + return $mapHas($m, key); + } + } else { + if ($o) { // eslint-disable-line no-lonely-if + return listHas($o, key); + } + } + return false; + }, + set: function (key, value) { + if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) { + if (!$wm) { + $wm = new $WeakMap(); + } + $weakMapSet($wm, key, value); + } else if ($Map) { + if (!$m) { + $m = new $Map(); + } + $mapSet($m, key, value); + } else { + if (!$o) { + /* + * Initialize the linked list as an empty node, so that we don't have + * to special-case handling of the first node: we can always refer to + * it as (previous node).next, instead of something like (list).head + */ + $o = { key: {}, next: null }; + } + listSet($o, key, value); + } + } + }; + return channel; +}; + + +/***/ }), +/* 135 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var origSymbol = typeof Symbol !== 'undefined' && Symbol; +var hasSymbolSham = __webpack_require__(136); + +module.exports = function hasNativeSymbols() { + if (typeof origSymbol !== 'function') { return false; } + if (typeof Symbol !== 'function') { return false; } + if (typeof origSymbol('foo') !== 'symbol') { return false; } + if (typeof Symbol('bar') !== 'symbol') { return false; } + + return hasSymbolSham(); +}; + + +/***/ }), +/* 136 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +/* eslint complexity: [2, 18], max-statements: [2, 33] */ +module.exports = function hasSymbols() { + if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; } + if (typeof Symbol.iterator === 'symbol') { return true; } + + var obj = {}; + var sym = Symbol('test'); + var symObj = Object(sym); + if (typeof sym === 'string') { return false; } + + if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; } + if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; } + + // temp disabled per https://github.com/ljharb/object.assign/issues/17 + // if (sym instanceof Symbol) { return false; } + // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4 + // if (!(symObj instanceof Symbol)) { return false; } + + // if (typeof Symbol.prototype.toString !== 'function') { return false; } + // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; } + + var symVal = 42; + obj[sym] = symVal; + for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop + if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; } + + if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; } + + var syms = Object.getOwnPropertySymbols(obj); + if (syms.length !== 1 || syms[0] !== sym) { return false; } + + if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; } + + if (typeof Object.getOwnPropertyDescriptor === 'function') { + var descriptor = Object.getOwnPropertyDescriptor(obj, sym); + if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; } + } + + return true; +}; + + +/***/ }), +/* 137 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +/* eslint no-invalid-this: 1 */ + +var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible '; +var slice = Array.prototype.slice; +var toStr = Object.prototype.toString; +var funcType = '[object Function]'; + +module.exports = function bind(that) { + var target = this; + if (typeof target !== 'function' || toStr.call(target) !== funcType) { + throw new TypeError(ERROR_MESSAGE + target); + } + var args = slice.call(arguments, 1); + + var bound; + var binder = function () { + if (this instanceof bound) { + var result = target.apply( + this, + args.concat(slice.call(arguments)) + ); + if (Object(result) === result) { + return result; + } + return this; + } else { + return target.apply( + that, + args.concat(slice.call(arguments)) + ); + } + }; + + var boundLength = Math.max(0, target.length - args.length); + var boundArgs = []; + for (var i = 0; i < boundLength; i++) { + boundArgs.push('$' + i); + } + + bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder); + + if (target.prototype) { + var Empty = function Empty() {}; + Empty.prototype = target.prototype; + bound.prototype = new Empty(); + Empty.prototype = null; + } + + return bound; +}; + + +/***/ }), +/* 138 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var bind = __webpack_require__(20); + +module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty); + + +/***/ }), +/* 139 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var GetIntrinsic = __webpack_require__(19); + +var callBind = __webpack_require__(140); + +var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf')); + +module.exports = function callBoundIntrinsic(name, allowMissing) { + var intrinsic = GetIntrinsic(name, !!allowMissing); + if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) { + return callBind(intrinsic); + } + return intrinsic; +}; + + +/***/ }), +/* 140 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var bind = __webpack_require__(20); +var GetIntrinsic = __webpack_require__(19); + +var $apply = GetIntrinsic('%Function.prototype.apply%'); +var $call = GetIntrinsic('%Function.prototype.call%'); +var $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply); + +var $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true); +var $defineProperty = GetIntrinsic('%Object.defineProperty%', true); +var $max = GetIntrinsic('%Math.max%'); + +if ($defineProperty) { + try { + $defineProperty({}, 'a', { value: 1 }); + } catch (e) { + // IE 8 has a broken defineProperty + $defineProperty = null; + } +} + +module.exports = function callBind(originalFunction) { + var func = $reflectApply(bind, $call, arguments); + if ($gOPD && $defineProperty) { + var desc = $gOPD(func, 'length'); + if (desc.configurable) { + // original length, plus the receiver, minus any additional arguments (after the receiver) + $defineProperty( + func, + 'length', + { value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) } + ); + } + } + return func; +}; + +var applyBind = function applyBind() { + return $reflectApply(bind, $apply, arguments); +}; + +if ($defineProperty) { + $defineProperty(module.exports, 'apply', { value: applyBind }); +} else { + module.exports.apply = applyBind; +} + + +/***/ }), +/* 141 */ +/***/ (function(module, exports, __webpack_require__) { + +var hasMap = typeof Map === 'function' && Map.prototype; +var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null; +var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null; +var mapForEach = hasMap && Map.prototype.forEach; +var hasSet = typeof Set === 'function' && Set.prototype; +var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null; +var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null; +var setForEach = hasSet && Set.prototype.forEach; +var hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype; +var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null; +var hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype; +var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null; +var hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype; +var weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null; +var booleanValueOf = Boolean.prototype.valueOf; +var objectToString = Object.prototype.toString; +var functionToString = Function.prototype.toString; +var match = String.prototype.match; +var bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null; +var gOPS = Object.getOwnPropertySymbols; +var symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null; +var hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object'; +// ie, `has-tostringtag/shams +var toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol') + ? Symbol.toStringTag + : null; +var isEnumerable = Object.prototype.propertyIsEnumerable; + +var gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || ( + [].__proto__ === Array.prototype // eslint-disable-line no-proto + ? function (O) { + return O.__proto__; // eslint-disable-line no-proto + } + : null +); + +var inspectCustom = __webpack_require__(142).custom; +var inspectSymbol = inspectCustom && isSymbol(inspectCustom) ? inspectCustom : null; + +module.exports = function inspect_(obj, options, depth, seen) { + var opts = options || {}; + + if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) { + throw new TypeError('option "quoteStyle" must be "single" or "double"'); + } + if ( + has(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number' + ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity + : opts.maxStringLength !== null + ) + ) { + throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`'); + } + var customInspect = has(opts, 'customInspect') ? opts.customInspect : true; + if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') { + throw new TypeError('option "customInspect", if provided, must be `true`, `false`, or `\'symbol\'`'); + } + + if ( + has(opts, 'indent') + && opts.indent !== null + && opts.indent !== '\t' + && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0) + ) { + throw new TypeError('options "indent" must be "\\t", an integer > 0, or `null`'); + } + + if (typeof obj === 'undefined') { + return 'undefined'; + } + if (obj === null) { + return 'null'; + } + if (typeof obj === 'boolean') { + return obj ? 'true' : 'false'; + } + + if (typeof obj === 'string') { + return inspectString(obj, opts); + } + if (typeof obj === 'number') { + if (obj === 0) { + return Infinity / obj > 0 ? '0' : '-0'; + } + return String(obj); + } + if (typeof obj === 'bigint') { + return String(obj) + 'n'; + } + + var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth; + if (typeof depth === 'undefined') { depth = 0; } + if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') { + return isArray(obj) ? '[Array]' : '[Object]'; + } + + var indent = getIndent(opts, depth); + + if (typeof seen === 'undefined') { + seen = []; + } else if (indexOf(seen, obj) >= 0) { + return '[Circular]'; + } + + function inspect(value, from, noIndent) { + if (from) { + seen = seen.slice(); + seen.push(from); + } + if (noIndent) { + var newOpts = { + depth: opts.depth + }; + if (has(opts, 'quoteStyle')) { + newOpts.quoteStyle = opts.quoteStyle; + } + return inspect_(value, newOpts, depth + 1, seen); + } + return inspect_(value, opts, depth + 1, seen); + } + + if (typeof obj === 'function') { + var name = nameOf(obj); + var keys = arrObjKeys(obj, inspect); + return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + keys.join(', ') + ' }' : ''); + } + if (isSymbol(obj)) { + var symString = hasShammedSymbols ? String(obj).replace(/^(Symbol\(.*\))_[^)]*$/, '$1') : symToString.call(obj); + return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString; + } + if (isElement(obj)) { + var s = '<' + String(obj.nodeName).toLowerCase(); + var attrs = obj.attributes || []; + for (var i = 0; i < attrs.length; i++) { + s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts); + } + s += '>'; + if (obj.childNodes && obj.childNodes.length) { s += '...'; } + s += ''; + return s; + } + if (isArray(obj)) { + if (obj.length === 0) { return '[]'; } + var xs = arrObjKeys(obj, inspect); + if (indent && !singleLineValues(xs)) { + return '[' + indentedJoin(xs, indent) + ']'; + } + return '[ ' + xs.join(', ') + ' ]'; + } + if (isError(obj)) { + var parts = arrObjKeys(obj, inspect); + if (parts.length === 0) { return '[' + String(obj) + ']'; } + return '{ [' + String(obj) + '] ' + parts.join(', ') + ' }'; + } + if (typeof obj === 'object' && customInspect) { + if (inspectSymbol && typeof obj[inspectSymbol] === 'function') { + return obj[inspectSymbol](); + } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') { + return obj.inspect(); + } + } + if (isMap(obj)) { + var mapParts = []; + mapForEach.call(obj, function (value, key) { + mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj)); + }); + return collectionOf('Map', mapSize.call(obj), mapParts, indent); + } + if (isSet(obj)) { + var setParts = []; + setForEach.call(obj, function (value) { + setParts.push(inspect(value, obj)); + }); + return collectionOf('Set', setSize.call(obj), setParts, indent); + } + if (isWeakMap(obj)) { + return weakCollectionOf('WeakMap'); + } + if (isWeakSet(obj)) { + return weakCollectionOf('WeakSet'); + } + if (isWeakRef(obj)) { + return weakCollectionOf('WeakRef'); + } + if (isNumber(obj)) { + return markBoxed(inspect(Number(obj))); + } + if (isBigInt(obj)) { + return markBoxed(inspect(bigIntValueOf.call(obj))); + } + if (isBoolean(obj)) { + return markBoxed(booleanValueOf.call(obj)); + } + if (isString(obj)) { + return markBoxed(inspect(String(obj))); + } + if (!isDate(obj) && !isRegExp(obj)) { + var ys = arrObjKeys(obj, inspect); + var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object; + var protoTag = obj instanceof Object ? '' : 'null prototype'; + var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? toStr(obj).slice(8, -1) : protoTag ? 'Object' : ''; + var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : ''; + var tag = constructorTag + (stringTag || protoTag ? '[' + [].concat(stringTag || [], protoTag || []).join(': ') + '] ' : ''); + if (ys.length === 0) { return tag + '{}'; } + if (indent) { + return tag + '{' + indentedJoin(ys, indent) + '}'; + } + return tag + '{ ' + ys.join(', ') + ' }'; + } + return String(obj); +}; + +function wrapQuotes(s, defaultStyle, opts) { + var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '"' : "'"; + return quoteChar + s + quoteChar; +} + +function quote(s) { + return String(s).replace(/"/g, '"'); +} + +function isArray(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); } +function isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); } +function isRegExp(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); } +function isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); } +function isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); } +function isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); } +function isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); } + +// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives +function isSymbol(obj) { + if (hasShammedSymbols) { + return obj && typeof obj === 'object' && obj instanceof Symbol; + } + if (typeof obj === 'symbol') { + return true; + } + if (!obj || typeof obj !== 'object' || !symToString) { + return false; + } + try { + symToString.call(obj); + return true; + } catch (e) {} + return false; +} + +function isBigInt(obj) { + if (!obj || typeof obj !== 'object' || !bigIntValueOf) { + return false; + } + try { + bigIntValueOf.call(obj); + return true; + } catch (e) {} + return false; +} + +var hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; }; +function has(obj, key) { + return hasOwn.call(obj, key); +} + +function toStr(obj) { + return objectToString.call(obj); +} + +function nameOf(f) { + if (f.name) { return f.name; } + var m = match.call(functionToString.call(f), /^function\s*([\w$]+)/); + if (m) { return m[1]; } + return null; +} + +function indexOf(xs, x) { + if (xs.indexOf) { return xs.indexOf(x); } + for (var i = 0, l = xs.length; i < l; i++) { + if (xs[i] === x) { return i; } + } + return -1; +} + +function isMap(x) { + if (!mapSize || !x || typeof x !== 'object') { + return false; + } + try { + mapSize.call(x); + try { + setSize.call(x); + } catch (s) { + return true; + } + return x instanceof Map; // core-js workaround, pre-v2.5.0 + } catch (e) {} + return false; +} + +function isWeakMap(x) { + if (!weakMapHas || !x || typeof x !== 'object') { + return false; + } + try { + weakMapHas.call(x, weakMapHas); + try { + weakSetHas.call(x, weakSetHas); + } catch (s) { + return true; + } + return x instanceof WeakMap; // core-js workaround, pre-v2.5.0 + } catch (e) {} + return false; +} + +function isWeakRef(x) { + if (!weakRefDeref || !x || typeof x !== 'object') { + return false; + } + try { + weakRefDeref.call(x); + return true; + } catch (e) {} + return false; +} + +function isSet(x) { + if (!setSize || !x || typeof x !== 'object') { + return false; + } + try { + setSize.call(x); + try { + mapSize.call(x); + } catch (m) { + return true; + } + return x instanceof Set; // core-js workaround, pre-v2.5.0 + } catch (e) {} + return false; +} + +function isWeakSet(x) { + if (!weakSetHas || !x || typeof x !== 'object') { + return false; + } + try { + weakSetHas.call(x, weakSetHas); + try { + weakMapHas.call(x, weakMapHas); + } catch (s) { + return true; + } + return x instanceof WeakSet; // core-js workaround, pre-v2.5.0 + } catch (e) {} + return false; +} + +function isElement(x) { + if (!x || typeof x !== 'object') { return false; } + if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) { + return true; + } + return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function'; +} + +function inspectString(str, opts) { + if (str.length > opts.maxStringLength) { + var remaining = str.length - opts.maxStringLength; + var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : ''); + return inspectString(str.slice(0, opts.maxStringLength), opts) + trailer; + } + // eslint-disable-next-line no-control-regex + var s = str.replace(/(['\\])/g, '\\$1').replace(/[\x00-\x1f]/g, lowbyte); + return wrapQuotes(s, 'single', opts); +} + +function lowbyte(c) { + var n = c.charCodeAt(0); + var x = { + 8: 'b', + 9: 't', + 10: 'n', + 12: 'f', + 13: 'r' + }[n]; + if (x) { return '\\' + x; } + return '\\x' + (n < 0x10 ? '0' : '') + n.toString(16).toUpperCase(); +} + +function markBoxed(str) { + return 'Object(' + str + ')'; +} + +function weakCollectionOf(type) { + return type + ' { ? }'; +} + +function collectionOf(type, size, entries, indent) { + var joinedEntries = indent ? indentedJoin(entries, indent) : entries.join(', '); + return type + ' (' + size + ') {' + joinedEntries + '}'; +} + +function singleLineValues(xs) { + for (var i = 0; i < xs.length; i++) { + if (indexOf(xs[i], '\n') >= 0) { + return false; + } + } + return true; +} + +function getIndent(opts, depth) { + var baseIndent; + if (opts.indent === '\t') { + baseIndent = '\t'; + } else if (typeof opts.indent === 'number' && opts.indent > 0) { + baseIndent = Array(opts.indent + 1).join(' '); + } else { + return null; + } + return { + base: baseIndent, + prev: Array(depth + 1).join(baseIndent) + }; +} + +function indentedJoin(xs, indent) { + if (xs.length === 0) { return ''; } + var lineJoiner = '\n' + indent.prev + indent.base; + return lineJoiner + xs.join(',' + lineJoiner) + '\n' + indent.prev; +} + +function arrObjKeys(obj, inspect) { + var isArr = isArray(obj); + var xs = []; + if (isArr) { + xs.length = obj.length; + for (var i = 0; i < obj.length; i++) { + xs[i] = has(obj, i) ? inspect(obj[i], obj) : ''; + } + } + var syms = typeof gOPS === 'function' ? gOPS(obj) : []; + var symMap; + if (hasShammedSymbols) { + symMap = {}; + for (var k = 0; k < syms.length; k++) { + symMap['$' + syms[k]] = syms[k]; + } + } + + for (var key in obj) { // eslint-disable-line no-restricted-syntax + if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue + if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue + if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) { + // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section + continue; // eslint-disable-line no-restricted-syntax, no-continue + } else if ((/[^\w$]/).test(key)) { + xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj)); + } else { + xs.push(key + ': ' + inspect(obj[key], obj)); + } + } + if (typeof gOPS === 'function') { + for (var j = 0; j < syms.length; j++) { + if (isEnumerable.call(obj, syms[j])) { + xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj)); + } + } + } + return xs; +} + + +/***/ }), +/* 142 */ +/***/ (function(module, exports) { + +/* (ignored) */ + +/***/ }), +/* 143 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var utils = __webpack_require__(29); + +var has = Object.prototype.hasOwnProperty; +var isArray = Array.isArray; + +var defaults = { + allowDots: false, + allowPrototypes: false, + allowSparse: false, + arrayLimit: 20, + charset: 'utf-8', + charsetSentinel: false, + comma: false, + decoder: utils.decode, + delimiter: '&', + depth: 5, + ignoreQueryPrefix: false, + interpretNumericEntities: false, + parameterLimit: 1000, + parseArrays: true, + plainObjects: false, + strictNullHandling: false +}; + +var interpretNumericEntities = function (str) { + return str.replace(/&#(\d+);/g, function ($0, numberStr) { + return String.fromCharCode(parseInt(numberStr, 10)); + }); +}; + +var parseArrayValue = function (val, options) { + if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) { + return val.split(','); + } + + return val; +}; + +// This is what browsers will submit when the ✓ character occurs in an +// application/x-www-form-urlencoded body and the encoding of the page containing +// the form is iso-8859-1, or when the submitted form has an accept-charset +// attribute of iso-8859-1. Presumably also with other charsets that do not contain +// the ✓ character, such as us-ascii. +var isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓') + +// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded. +var charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓') + +var parseValues = function parseQueryStringValues(str, options) { + var obj = {}; + var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, '') : str; + var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit; + var parts = cleanStr.split(options.delimiter, limit); + var skipIndex = -1; // Keep track of where the utf8 sentinel was found + var i; + + var charset = options.charset; + if (options.charsetSentinel) { + for (i = 0; i < parts.length; ++i) { + if (parts[i].indexOf('utf8=') === 0) { + if (parts[i] === charsetSentinel) { + charset = 'utf-8'; + } else if (parts[i] === isoSentinel) { + charset = 'iso-8859-1'; + } + skipIndex = i; + i = parts.length; // The eslint settings do not allow break; + } + } + } + + for (i = 0; i < parts.length; ++i) { + if (i === skipIndex) { + continue; + } + var part = parts[i]; + + var bracketEqualsPos = part.indexOf(']='); + var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1; + + var key, val; + if (pos === -1) { + key = options.decoder(part, defaults.decoder, charset, 'key'); + val = options.strictNullHandling ? null : ''; + } else { + key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key'); + val = utils.maybeMap( + parseArrayValue(part.slice(pos + 1), options), + function (encodedVal) { + return options.decoder(encodedVal, defaults.decoder, charset, 'value'); + } + ); + } + + if (val && options.interpretNumericEntities && charset === 'iso-8859-1') { + val = interpretNumericEntities(val); + } + + if (part.indexOf('[]=') > -1) { + val = isArray(val) ? [val] : val; + } + + if (has.call(obj, key)) { + obj[key] = utils.combine(obj[key], val); + } else { + obj[key] = val; + } + } + + return obj; +}; + +var parseObject = function (chain, val, options, valuesParsed) { + var leaf = valuesParsed ? val : parseArrayValue(val, options); + + for (var i = chain.length - 1; i >= 0; --i) { + var obj; + var root = chain[i]; + + if (root === '[]' && options.parseArrays) { + obj = [].concat(leaf); + } else { + obj = options.plainObjects ? Object.create(null) : {}; + var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root; + var index = parseInt(cleanRoot, 10); + if (!options.parseArrays && cleanRoot === '') { + obj = { 0: leaf }; + } else if ( + !isNaN(index) + && root !== cleanRoot + && String(index) === cleanRoot + && index >= 0 + && (options.parseArrays && index <= options.arrayLimit) + ) { + obj = []; + obj[index] = leaf; + } else { + obj[cleanRoot] = leaf; + } + } + + leaf = obj; + } + + return leaf; +}; + +var parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) { + if (!givenKey) { + return; + } + + // Transform dot notation to bracket notation + var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, '[$1]') : givenKey; + + // The regex chunks + + var brackets = /(\[[^[\]]*])/; + var child = /(\[[^[\]]*])/g; + + // Get the parent + + var segment = options.depth > 0 && brackets.exec(key); + var parent = segment ? key.slice(0, segment.index) : key; + + // Stash the parent if it exists + + var keys = []; + if (parent) { + // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties + if (!options.plainObjects && has.call(Object.prototype, parent)) { + if (!options.allowPrototypes) { + return; + } + } + + keys.push(parent); + } + + // Loop through children appending to the array until we hit depth + + var i = 0; + while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) { + i += 1; + if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) { + if (!options.allowPrototypes) { + return; + } + } + keys.push(segment[1]); + } + + // If there's a remainder, just add whatever is left + + if (segment) { + keys.push('[' + key.slice(segment.index) + ']'); + } + + return parseObject(keys, val, options, valuesParsed); +}; + +var normalizeParseOptions = function normalizeParseOptions(opts) { + if (!opts) { + return defaults; + } + + if (opts.decoder !== null && opts.decoder !== undefined && typeof opts.decoder !== 'function') { + throw new TypeError('Decoder has to be a function.'); + } + + if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') { + throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined'); + } + var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset; + + return { + allowDots: typeof opts.allowDots === 'undefined' ? defaults.allowDots : !!opts.allowDots, + allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes, + allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse, + arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit, + charset: charset, + charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel, + comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma, + decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder, + delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter, + // eslint-disable-next-line no-implicit-coercion, no-extra-parens + depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth, + ignoreQueryPrefix: opts.ignoreQueryPrefix === true, + interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities, + parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit, + parseArrays: opts.parseArrays !== false, + plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects, + strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling + }; +}; + +module.exports = function (str, opts) { + var options = normalizeParseOptions(opts); + + if (str === '' || str === null || typeof str === 'undefined') { + return options.plainObjects ? Object.create(null) : {}; + } + + var tempObj = typeof str === 'string' ? parseValues(str, options) : str; + var obj = options.plainObjects ? Object.create(null) : {}; + + // Iterate over the keys and setup the new object + + var keys = Object.keys(tempObj); + for (var i = 0; i < keys.length; ++i) { + var key = keys[i]; + var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string'); + obj = utils.merge(obj, newObj, options); + } + + if (options.allowSparse === true) { + return obj; + } + + return utils.compact(obj); +}; + + +/***/ }), +/* 144 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + /** * Module of mixed-in functions shared between node and client code */ -var isObject = __webpack_require__(26); - +var isObject = __webpack_require__(30); /** * Expose `RequestBase`. */ -module.exports = RequestBase; +module.exports = RequestBase; /** * Initialize a new `RequestBase`. * * @api public */ -function RequestBase(obj) { - if (obj) return mixin(obj); +function RequestBase(object) { + if (object) return mixin(object); } - /** * Mixin the prototype properties. * @@ -17358,13 +19515,14 @@ function RequestBase(obj) { * @api private */ -function mixin(obj) { + +function mixin(object) { for (var key in RequestBase.prototype) { - obj[key] = RequestBase.prototype[key]; + if (Object.prototype.hasOwnProperty.call(RequestBase.prototype, key)) object[key] = RequestBase.prototype[key]; } - return obj; -} + return object; +} /** * Clear previous timeout. * @@ -17372,14 +19530,16 @@ function mixin(obj) { * @api public */ -RequestBase.prototype.clearTimeout = function _clearTimeout(){ + +RequestBase.prototype.clearTimeout = function () { clearTimeout(this._timer); clearTimeout(this._responseTimeoutTimer); + clearTimeout(this._uploadTimeoutTimer); delete this._timer; delete this._responseTimeoutTimer; + delete this._uploadTimeoutTimer; return this; }; - /** * Override default response body parser * @@ -17389,11 +19549,11 @@ RequestBase.prototype.clearTimeout = function _clearTimeout(){ * @api public */ -RequestBase.prototype.parse = function parse(fn){ + +RequestBase.prototype.parse = function (fn) { this._parser = fn; return this; }; - /** * Set format of binary response body. * In browser valid formats are 'blob' and 'arraybuffer', @@ -17412,11 +19572,11 @@ RequestBase.prototype.parse = function parse(fn){ * @api public */ -RequestBase.prototype.responseType = function(val){ - this._responseType = val; + +RequestBase.prototype.responseType = function (value) { + this._responseType = value; return this; }; - /** * Override default request body serializer * @@ -17426,16 +19586,17 @@ RequestBase.prototype.responseType = function(val){ * @api public */ -RequestBase.prototype.serialize = function serialize(fn){ + +RequestBase.prototype.serialize = function (fn) { this._serializer = fn; return this; }; - /** * Set timeouts. * * - response timeout is time between sending request and receiving the first byte of the response. Includes DNS and connection time. * - deadline is the time from start of the request to receiving response body in full. If the deadline is too short large files may not load at all on slow connections. + * - upload is the time since last bit of data was sent or received. This timeout works only if deadline timeout is off * * Value of 0 or false means no timeout. * @@ -17444,28 +19605,38 @@ RequestBase.prototype.serialize = function serialize(fn){ * @api public */ -RequestBase.prototype.timeout = function timeout(options){ - if (!options || 'object' !== typeof options) { + +RequestBase.prototype.timeout = function (options) { + if (!options || _typeof(options) !== 'object') { this._timeout = options; this._responseTimeout = 0; + this._uploadTimeout = 0; return this; } - for(var option in options) { - switch(option) { - case 'deadline': - this._timeout = options.deadline; - break; - case 'response': - this._responseTimeout = options.response; - break; - default: - console.warn("Unknown timeout option", option); + for (var option in options) { + if (Object.prototype.hasOwnProperty.call(options, option)) { + switch (option) { + case 'deadline': + this._timeout = options.deadline; + break; + + case 'response': + this._responseTimeout = options.response; + break; + + case 'upload': + this._uploadTimeout = options.upload; + break; + + default: + console.warn('Unknown timeout option', option); + } } } + return this; }; - /** * Set number of retry attempts on error. * @@ -17477,7 +19648,8 @@ RequestBase.prototype.timeout = function timeout(options){ * @api public */ -RequestBase.prototype.retry = function retry(count, fn){ + +RequestBase.prototype.retry = function (count, fn) { // Default to 1 if no count passed or true if (arguments.length === 0 || count === true) count = 1; if (count <= 0) count = 0; @@ -17485,47 +19657,69 @@ RequestBase.prototype.retry = function retry(count, fn){ this._retries = 0; this._retryCallback = fn; return this; -}; +}; // +// NOTE: we do not include ESOCKETTIMEDOUT because that is from `request` package +// +// +// NOTE: we do not include EADDRINFO because it was removed from libuv in 2014 +// +// +// +// +// TODO: expose these as configurable defaults +// + -var ERROR_CODES = [ - 'ECONNRESET', - 'ETIMEDOUT', - 'EADDRINFO', - 'ESOCKETTIMEDOUT' -]; +var ERROR_CODES = new Set(['ETIMEDOUT', 'ECONNRESET', 'EADDRINUSE', 'ECONNREFUSED', 'EPIPE', 'ENOTFOUND', 'ENETUNREACH', 'EAI_AGAIN']); +var STATUS_CODES = new Set([408, 413, 429, 500, 502, 503, 504, 521, 522, 524]); // TODO: we would need to make this easily configurable before adding it in (e.g. some might want to add POST) +// const METHODS = new Set(['GET', 'PUT', 'HEAD', 'DELETE', 'OPTIONS', 'TRACE']); /** * Determine if a request should be retried. - * (Borrowed from segmentio/superagent-retry) + * (Inspired by https://github.com/sindresorhus/got#retry) * - * @param {Error} err - * @param {Response} [res] - * @returns {Boolean} + * @param {Error} err an error + * @param {Response} [res] response + * @returns {Boolean} if segment should be retried */ -RequestBase.prototype._shouldRetry = function(err, res) { + +RequestBase.prototype._shouldRetry = function (err, res) { if (!this._maxRetries || this._retries++ >= this._maxRetries) { return false; } + if (this._retryCallback) { try { var override = this._retryCallback(err, res); + if (override === true) return true; - if (override === false) return false; - // undefined falls back to defaults - } catch(e) { - console.error(e); - } - } - if (res && res.status && res.status >= 500 && res.status != 501) return true; + if (override === false) return false; // undefined falls back to defaults + } catch (err_) { + console.error(err_); + } + } // TODO: we would need to make this easily configurable before adding it in (e.g. some might want to add POST) + + /* + if ( + this.req && + this.req.method && + !METHODS.has(this.req.method.toUpperCase()) + ) + return false; + */ + + + if (res && res.status && STATUS_CODES.has(res.status)) return true; + if (err) { - if (err.code && ~ERROR_CODES.indexOf(err.code)) return true; - // Superagent timeout - if (err.timeout && err.code == 'ECONNABORTED') return true; + if (err.code && ERROR_CODES.has(err.code)) return true; // Superagent timeout + + if (err.timeout && err.code === 'ECONNABORTED') return true; if (err.crossDomain) return true; } + return false; }; - /** * Retry request * @@ -17533,11 +19727,10 @@ RequestBase.prototype._shouldRetry = function(err, res) { * @api private */ -RequestBase.prototype._retry = function() { - this.clearTimeout(); +RequestBase.prototype._retry = function () { + this.clearTimeout(); // node - // node if (this.req) { this.req = null; this.req = this.request(); @@ -17545,10 +19738,9 @@ RequestBase.prototype._retry = function() { this._aborted = false; this.timedout = false; - + this.timedoutError = null; return this._end(); }; - /** * Promise support * @@ -17557,42 +19749,64 @@ RequestBase.prototype._retry = function() { * @return {Request} */ -RequestBase.prototype.then = function then(resolve, reject) { + +RequestBase.prototype.then = function (resolve, reject) { + var _this = this; + if (!this._fullfilledPromise) { var self = this; + if (this._endCalled) { - console.warn("Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises"); + console.warn('Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises'); } - this._fullfilledPromise = new Promise(function(innerResolve, innerReject) { - self.end(function(err, res) { - if (err) innerReject(err); - else innerResolve(res); + + this._fullfilledPromise = new Promise(function (resolve, reject) { + self.on('abort', function () { + if (_this._maxRetries && _this._maxRetries > _this._retries) { + return; + } + + if (_this.timedout && _this.timedoutError) { + reject(_this.timedoutError); + return; + } + + var err = new Error('Aborted'); + err.code = 'ABORTED'; + err.status = _this.status; + err.method = _this.method; + err.url = _this.url; + reject(err); + }); + self.end(function (err, res) { + if (err) reject(err);else resolve(res); }); }); } + return this._fullfilledPromise.then(resolve, reject); }; -RequestBase.prototype['catch'] = function(cb) { +RequestBase.prototype.catch = function (cb) { return this.then(undefined, cb); }; - /** * Allow for extension */ -RequestBase.prototype.use = function use(fn) { + +RequestBase.prototype.use = function (fn) { fn(this); return this; }; -RequestBase.prototype.ok = function(cb) { - if ('function' !== typeof cb) throw Error("Callback required"); +RequestBase.prototype.ok = function (cb) { + if (typeof cb !== 'function') throw new Error('Callback required'); this._okCallback = cb; return this; }; -RequestBase.prototype._isResponseOK = function(res) { +RequestBase.prototype._isResponseOK = function (res) { if (!res) { return false; } @@ -17603,7 +19817,6 @@ RequestBase.prototype._isResponseOK = function(res) { return res.status >= 200 && res.status < 300; }; - /** * Get request header `field`. * Case-insensitive. @@ -17613,10 +19826,10 @@ RequestBase.prototype._isResponseOK = function(res) { * @api public */ -RequestBase.prototype.get = function(field){ + +RequestBase.prototype.get = function (field) { return this._header[field.toLowerCase()]; }; - /** * Get case-insensitive header `field` value. * This is a deprecated internal API. Use `.get(field)` instead. @@ -17629,8 +19842,8 @@ RequestBase.prototype.get = function(field){ * @deprecated */ -RequestBase.prototype.getHeader = RequestBase.prototype.get; +RequestBase.prototype.getHeader = RequestBase.prototype.get; /** * Set header `field` to `val`, or multiple fields with one object. * Case-insensitive. @@ -17652,18 +19865,19 @@ RequestBase.prototype.getHeader = RequestBase.prototype.get; * @api public */ -RequestBase.prototype.set = function(field, val){ +RequestBase.prototype.set = function (field, value) { if (isObject(field)) { for (var key in field) { - this.set(key, field[key]); + if (Object.prototype.hasOwnProperty.call(field, key)) this.set(key, field[key]); } + return this; } - this._header[field.toLowerCase()] = val; - this.header[field] = val; + + this._header[field.toLowerCase()] = value; + this.header[field] = value; return this; }; - /** * Remove header `field`. * Case-insensitive. @@ -17674,14 +19888,15 @@ RequestBase.prototype.set = function(field, val){ * .unset('User-Agent') * .end(callback); * - * @param {String} field + * @param {String} field field name */ -RequestBase.prototype.unset = function(field){ + + +RequestBase.prototype.unset = function (field) { delete this._header[field.toLowerCase()]; delete this.header[field]; return this; }; - /** * Write the field `name` and `val`, or multiple fields with one object * for "multipart/form-data" request bodies. @@ -17696,68 +19911,79 @@ RequestBase.prototype.unset = function(field){ * .end(callback); * ``` * - * @param {String|Object} name - * @param {String|Blob|File|Buffer|fs.ReadStream} val + * @param {String|Object} name name of field + * @param {String|Blob|File|Buffer|fs.ReadStream} val value of field * @return {Request} for chaining * @api public */ -RequestBase.prototype.field = function(name, val) { + + +RequestBase.prototype.field = function (name, value) { // name should be either a string or an object. - if (null === name || undefined === name) { + if (name === null || undefined === name) { throw new Error('.field(name, val) name can not be empty'); } if (this._data) { - console.error(".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()"); + throw new Error(".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()"); } if (isObject(name)) { for (var key in name) { - this.field(key, name[key]); + if (Object.prototype.hasOwnProperty.call(name, key)) this.field(key, name[key]); } + return this; } - if (Array.isArray(val)) { - for (var i in val) { - this.field(name, val[i]); + if (Array.isArray(value)) { + for (var i in value) { + if (Object.prototype.hasOwnProperty.call(value, i)) this.field(name, value[i]); } + return this; - } + } // val should be defined now - // val should be defined now - if (null === val || undefined === val) { + + if (value === null || undefined === value) { throw new Error('.field(name, val) val can not be empty'); } - if ('boolean' === typeof val) { - val = '' + val; + + if (typeof value === 'boolean') { + value = String(value); } - this._getFormData().append(name, val); + + this._getFormData().append(name, value); + return this; }; - /** * Abort the request, and clear potential timeout. * - * @return {Request} + * @return {Request} request * @api public */ -RequestBase.prototype.abort = function(){ + + +RequestBase.prototype.abort = function () { if (this._aborted) { return this; } + this._aborted = true; - this.xhr && this.xhr.abort(); // browser - this.req && this.req.abort(); // node + if (this.xhr) this.xhr.abort(); // browser + + if (this.req) this.req.abort(); // node + this.clearTimeout(); this.emit('abort'); return this; }; -RequestBase.prototype._auth = function(user, pass, options, base64Encoder) { +RequestBase.prototype._auth = function (user, pass, options, base64Encoder) { switch (options.type) { case 'basic': - this.set('Authorization', 'Basic ' + base64Encoder(user + ':' + pass)); + this.set('Authorization', "Basic ".concat(base64Encoder("".concat(user, ":").concat(pass)))); break; case 'auto': @@ -17765,13 +19991,17 @@ RequestBase.prototype._auth = function(user, pass, options, base64Encoder) { this.password = pass; break; - case 'bearer': // usage would be .auth(accessToken, { type: 'bearer' }) - this.set('Authorization', 'Bearer ' + user); + case 'bearer': + // usage would be .auth(accessToken, { type: 'bearer' }) + this.set('Authorization', "Bearer ".concat(user)); + break; + + default: break; } + return this; }; - /** * Enable transmission of cookies with x-domain requests. * @@ -17783,41 +20013,43 @@ RequestBase.prototype._auth = function(user, pass, options, base64Encoder) { * @api public */ -RequestBase.prototype.withCredentials = function(on) { + +RequestBase.prototype.withCredentials = function (on) { // This is browser-only functionality. Node side is no-op. - if (on == undefined) on = true; + if (on === undefined) on = true; this._withCredentials = on; return this; }; - /** - * Set the max redirects to `n`. Does noting in browser XHR implementation. + * Set the max redirects to `n`. Does nothing in browser XHR implementation. * * @param {Number} n * @return {Request} for chaining * @api public */ -RequestBase.prototype.redirects = function(n){ + +RequestBase.prototype.redirects = function (n) { this._maxRedirects = n; return this; }; - /** * Maximum size of buffered response body, in bytes. Counts uncompressed size. * Default 200MB. * - * @param {Number} n + * @param {Number} n number of bytes * @return {Request} for chaining */ -RequestBase.prototype.maxResponseSize = function(n){ - if ('number' !== typeof n) { - throw TypeError("Invalid argument"); + + +RequestBase.prototype.maxResponseSize = function (n) { + if (typeof n !== 'number') { + throw new TypeError('Invalid argument'); } + this._maxResponseSize = n; return this; }; - /** * Convert to a plain javascript object (not JSON string) of scalar properties. * Note as this method is designed to return a useful non-this value, @@ -17827,15 +20059,15 @@ RequestBase.prototype.maxResponseSize = function(n){ * @api public */ -RequestBase.prototype.toJSON = function() { + +RequestBase.prototype.toJSON = function () { return { method: this.method, url: this.url, data: this._data, - headers: this._header, + headers: this._header }; }; - /** * Send `data` as the request body, defaulting the `.type()` to "json" when * an object is given. @@ -17875,38 +20107,40 @@ RequestBase.prototype.toJSON = function() { * @return {Request} for chaining * @api public */ +// eslint-disable-next-line complexity + -RequestBase.prototype.send = function(data){ - var isObj = isObject(data); +RequestBase.prototype.send = function (data) { + var isObject_ = isObject(data); var type = this._header['content-type']; if (this._formData) { - console.error(".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()"); + throw new Error(".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()"); } - if (isObj && !this._data) { + if (isObject_ && !this._data) { if (Array.isArray(data)) { this._data = []; } else if (!this._isHost(data)) { this._data = {}; } } else if (data && this._data && this._isHost(this._data)) { - throw Error("Can't merge these send calls"); - } + throw new Error("Can't merge these send calls"); + } // merge + - // merge - if (isObj && isObject(this._data)) { + if (isObject_ && isObject(this._data)) { for (var key in data) { - this._data[key] = data[key]; + if (Object.prototype.hasOwnProperty.call(data, key)) this._data[key] = data[key]; } - } else if ('string' == typeof data) { + } else if (typeof data === 'string') { // default to x-www-form-urlencoded if (!type) this.type('form'); type = this._header['content-type']; - if ('application/x-www-form-urlencoded' == type) { - this._data = this._data - ? this._data + '&' + data - : data; + if (type) type = type.toLowerCase().trim(); + + if (type === 'application/x-www-form-urlencoded') { + this._data = this._data ? "".concat(this._data, "&").concat(data) : data; } else { this._data = (this._data || '') + data; } @@ -17914,15 +20148,14 @@ RequestBase.prototype.send = function(data){ this._data = data; } - if (!isObj || this._isHost(data)) { + if (!isObject_ || this._isHost(data)) { return this; - } + } // default to json + - // default to json if (!type) this.type('json'); return this; }; - /** * Sort `querystring` by the sort function * @@ -17951,80 +20184,91 @@ RequestBase.prototype.send = function(data){ * @api public */ -RequestBase.prototype.sortQuery = function(sort) { + +RequestBase.prototype.sortQuery = function (sort) { // _sort default to true but otherwise can be a function or boolean this._sort = typeof sort === 'undefined' ? true : sort; return this; }; - /** * Compose querystring to append to req.url * * @api private */ -RequestBase.prototype._finalizeQueryString = function(){ + + +RequestBase.prototype._finalizeQueryString = function () { var query = this._query.join('&'); + if (query) { - this.url += (this.url.indexOf('?') >= 0 ? '&' : '?') + query; + this.url += (this.url.includes('?') ? '&' : '?') + query; } + this._query.length = 0; // Makes the call idempotent if (this._sort) { var index = this.url.indexOf('?'); + if (index >= 0) { - var queryArr = this.url.substring(index + 1).split('&'); - if ('function' === typeof this._sort) { - queryArr.sort(this._sort); + var queryArray = this.url.slice(index + 1).split('&'); + + if (typeof this._sort === 'function') { + queryArray.sort(this._sort); } else { - queryArr.sort(); + queryArray.sort(); } - this.url = this.url.substring(0, index) + '?' + queryArr.join('&'); + + this.url = this.url.slice(0, index) + '?' + queryArray.join('&'); } } -}; +}; // For backwards compat only -// For backwards compat only -RequestBase.prototype._appendQueryString = function() {console.trace("Unsupported");} +RequestBase.prototype._appendQueryString = function () { + console.warn('Unsupported'); +}; /** * Invoke callback with timeout error. * * @api private */ -RequestBase.prototype._timeoutError = function(reason, timeout, errno){ + +RequestBase.prototype._timeoutError = function (reason, timeout, errno) { if (this._aborted) { return; } - var err = new Error(reason + timeout + 'ms exceeded'); + + var err = new Error("".concat(reason + timeout, "ms exceeded")); err.timeout = timeout; err.code = 'ECONNABORTED'; err.errno = errno; this.timedout = true; + this.timedoutError = err; this.abort(); this.callback(err); }; -RequestBase.prototype._setTimeouts = function() { - var self = this; +RequestBase.prototype._setTimeouts = function () { + var self = this; // deadline - // deadline if (this._timeout && !this._timer) { - this._timer = setTimeout(function(){ + this._timer = setTimeout(function () { self._timeoutError('Timeout of ', self._timeout, 'ETIME'); }, this._timeout); - } - // response timeout + } // response timeout + + if (this._responseTimeout && !this._responseTimeoutTimer) { - this._responseTimeoutTimer = setTimeout(function(){ + this._responseTimeoutTimer = setTimeout(function () { self._timeoutError('Response timeout of ', self._responseTimeout, 'ETIMEDOUT'); }, this._responseTimeout); } }; - +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9yZXF1ZXN0LWJhc2UuanMiXSwibmFtZXMiOlsiaXNPYmplY3QiLCJyZXF1aXJlIiwibW9kdWxlIiwiZXhwb3J0cyIsIlJlcXVlc3RCYXNlIiwib2JqZWN0IiwibWl4aW4iLCJrZXkiLCJwcm90b3R5cGUiLCJPYmplY3QiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJjbGVhclRpbWVvdXQiLCJfdGltZXIiLCJfcmVzcG9uc2VUaW1lb3V0VGltZXIiLCJfdXBsb2FkVGltZW91dFRpbWVyIiwicGFyc2UiLCJmbiIsIl9wYXJzZXIiLCJyZXNwb25zZVR5cGUiLCJ2YWx1ZSIsIl9yZXNwb25zZVR5cGUiLCJzZXJpYWxpemUiLCJfc2VyaWFsaXplciIsInRpbWVvdXQiLCJvcHRpb25zIiwiX3RpbWVvdXQiLCJfcmVzcG9uc2VUaW1lb3V0IiwiX3VwbG9hZFRpbWVvdXQiLCJvcHRpb24iLCJkZWFkbGluZSIsInJlc3BvbnNlIiwidXBsb2FkIiwiY29uc29sZSIsIndhcm4iLCJyZXRyeSIsImNvdW50IiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiX21heFJldHJpZXMiLCJfcmV0cmllcyIsIl9yZXRyeUNhbGxiYWNrIiwiRVJST1JfQ09ERVMiLCJTZXQiLCJTVEFUVVNfQ09ERVMiLCJfc2hvdWxkUmV0cnkiLCJlcnIiLCJyZXMiLCJvdmVycmlkZSIsImVycl8iLCJlcnJvciIsInN0YXR1cyIsImhhcyIsImNvZGUiLCJjcm9zc0RvbWFpbiIsIl9yZXRyeSIsInJlcSIsInJlcXVlc3QiLCJfYWJvcnRlZCIsInRpbWVkb3V0IiwidGltZWRvdXRFcnJvciIsIl9lbmQiLCJ0aGVuIiwicmVzb2x2ZSIsInJlamVjdCIsIl9mdWxsZmlsbGVkUHJvbWlzZSIsInNlbGYiLCJfZW5kQ2FsbGVkIiwiUHJvbWlzZSIsIm9uIiwiRXJyb3IiLCJtZXRob2QiLCJ1cmwiLCJlbmQiLCJjYXRjaCIsImNiIiwidW5kZWZpbmVkIiwidXNlIiwib2siLCJfb2tDYWxsYmFjayIsIl9pc1Jlc3BvbnNlT0siLCJnZXQiLCJmaWVsZCIsIl9oZWFkZXIiLCJ0b0xvd2VyQ2FzZSIsImdldEhlYWRlciIsInNldCIsImhlYWRlciIsInVuc2V0IiwibmFtZSIsIl9kYXRhIiwiQXJyYXkiLCJpc0FycmF5IiwiaSIsIlN0cmluZyIsIl9nZXRGb3JtRGF0YSIsImFwcGVuZCIsImFib3J0IiwieGhyIiwiZW1pdCIsIl9hdXRoIiwidXNlciIsInBhc3MiLCJiYXNlNjRFbmNvZGVyIiwidHlwZSIsInVzZXJuYW1lIiwicGFzc3dvcmQiLCJ3aXRoQ3JlZGVudGlhbHMiLCJfd2l0aENyZWRlbnRpYWxzIiwicmVkaXJlY3RzIiwibiIsIl9tYXhSZWRpcmVjdHMiLCJtYXhSZXNwb25zZVNpemUiLCJUeXBlRXJyb3IiLCJfbWF4UmVzcG9uc2VTaXplIiwidG9KU09OIiwiZGF0YSIsImhlYWRlcnMiLCJzZW5kIiwiaXNPYmplY3RfIiwiX2Zvcm1EYXRhIiwiX2lzSG9zdCIsInRyaW0iLCJzb3J0UXVlcnkiLCJzb3J0IiwiX3NvcnQiLCJfZmluYWxpemVRdWVyeVN0cmluZyIsInF1ZXJ5IiwiX3F1ZXJ5Iiwiam9pbiIsImluY2x1ZGVzIiwiaW5kZXgiLCJpbmRleE9mIiwicXVlcnlBcnJheSIsInNsaWNlIiwic3BsaXQiLCJfYXBwZW5kUXVlcnlTdHJpbmciLCJfdGltZW91dEVycm9yIiwicmVhc29uIiwiZXJybm8iLCJjYWxsYmFjayIsIl9zZXRUaW1lb3V0cyIsInNldFRpbWVvdXQiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTs7O0FBR0EsSUFBTUEsUUFBUSxHQUFHQyxPQUFPLENBQUMsYUFBRCxDQUF4QjtBQUVBOzs7OztBQUlBQyxNQUFNLENBQUNDLE9BQVAsR0FBaUJDLFdBQWpCO0FBRUE7Ozs7OztBQU1BLFNBQVNBLFdBQVQsQ0FBcUJDLE1BQXJCLEVBQTZCO0FBQzNCLE1BQUlBLE1BQUosRUFBWSxPQUFPQyxLQUFLLENBQUNELE1BQUQsQ0FBWjtBQUNiO0FBRUQ7Ozs7Ozs7OztBQVFBLFNBQVNDLEtBQVQs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R0FBRyxDQUFDTyxJQUFKLEdBQVcsY0FBWDtBQUNBUCxFQUFBQSxHQUFHLENBQUM2RixLQUFKLEdBQVlBLEtBQVo7QUFDQSxPQUFLaEYsUUFBTCxHQUFnQixJQUFoQjtBQUNBLE9BQUtDLGFBQUwsR0FBcUJkLEdBQXJCO0FBQ0EsT0FBS21ELEtBQUw7QUFDQSxPQUFLMkMsUUFBTCxDQUFjOUYsR0FBZDtBQUNELENBYkQ7O0FBZUExQyxXQUFXLENBQUNJLFNBQVosQ0FBc0JxSSxZQUF0QixHQUFxQyxZQUFZO0FBQy9DLE1BQU0zRSxJQUFJLEdBQUcsSUFBYixDQUQrQyxDQUcvQzs7QUFDQSxNQUFJLEtBQUt4QyxRQUFMLElBQWlCLENBQUMsS0FBS2IsTUFBM0IsRUFBbUM7QUFDakMsU0FBS0EsTUFBTCxHQUFjaUksVUFBVSxDQUFDLFlBQU07QUFDN0I1RSxNQUFBQSxJQUFJLENBQUN1RSxhQUFMLENBQW1CLGFBQW5CLEVBQWtDdkUsSUFBSSxDQUFDeEMsUUFBdkMsRUFBaUQsT0FBakQ7QUFDRCxLQUZ1QixFQUVyQixLQUFLQSxRQUZnQixDQUF4QjtBQUdELEdBUjhDLENBVS9DOzs7QUFDQSxNQUFJLEtBQUtDLGdCQUFMLElBQXlCLENBQUMsS0FBS2IscUJBQW5DLEVBQTBEO0FBQ3hELFNBQUtBLHFCQUFMLEdBQTZCZ0ksVUFBVSxDQUFDLFlBQU07QUFDNUM1RSxNQUFBQSxJQUFJLENBQUN1RSxhQUFMLENBQ0Usc0JBREYsRUFFRXZFLElBQUksQ0FBQ3ZDLGdCQUZQLEVBR0UsV0FIRjtBQUtELEtBTnNDLEVBTXBDLEtBQUtBLGdCQU4rQixDQUF2QztBQU9EO0FBQ0YsQ0FwQkQiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIE1vZHVsZSBvZiBtaXhlZC1pbiBmdW5jdGlvbnMgc2hhcmVkIGJldHdlZW4gbm9kZSBhbmQgY2xpZW50IGNvZGVcbiAqL1xuY29uc3QgaXNPYmplY3QgPSByZXF1aXJlKCcuL2lzLW9iamVjdCcpO1xuXG4vKipcbiAqIEV4cG9zZSBgUmVxdWVzdEJhc2VgLlxuICovXG5cbm1vZHVsZS5leHBvcnRzID0gUmVxdWVzdEJhc2U7XG5cbi8qKlxuICogSW5pdGlhbGl6ZSBhIG5ldyBgUmVxdWVzdEJhc2VgLlxuICpcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuZnVuY3Rpb24gUmVxdWVzdEJhc2Uob2JqZWN0KSB7XG4gIGlmIChvYmplY3QpIHJldHVybiBtaXhpbihvYmplY3QpO1xufVxuXG4vKipcbiAqIE1peGluIHRoZSBwcm90b3R5cGUgcHJvcGVydGllcy5cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqXG4gKiBAcmV0dXJuIHtPYmplY3R9XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBtaXhpbihvYmplY3QpIHtcbiAgZm9yIChjb25zdCBrZXkgaW4gUmVxdWVzdEJhc2UucHJvdG90eXBlKSB7XG4gICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChSZXF1ZXN0QmFzZS5wcm90b3R5cGUsIGtleSkpXG4gICAgICBvYmplY3Rba2V5XSA9IFJlcXVlc3RCYXNlLnByb3RvdHlwZVtrZXldO1xuICB9XG5cbiAgcmV0dXJuIG9iamVjdDtcbn1cblxuLyoqXG4gKiBDbGVhciBwcmV2aW91cyB0aW1lb3V0LlxuICpcbiAqIEByZXR1cm4ge1JlcXVlc3R9IGZvciBjaGFpbmluZ1xuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5SZXF1ZXN0QmFzZS5wcm90b3R5cGUuY2xlYXJUaW1lb3V0ID0gZnVuY3Rpb24gKCkge1xuICBjbGVhclRpbWVvdXQodGhpcy5fdGltZXIpO1xuICBjbGVhclRpbWVvdXQodGhpcy5fcmVzcG9uc2VUaW1lb3V0VGltZXIpO1xuICBjbGVhclRpbWVvdXQodGhpcy5fdXBsb2FkVGltZW91dFRpbWVyKTtcbiAgZGVsZXRlIHRoaXMuX3RpbWVyO1xuICBkZWxldGUgdGhpcy5fcmVzcG9uc2VUaW1lb3V0VGltZXI7XG4gIGRlbGV0ZSB0aGlzLl91cGxvYWRUaW1lb3V0VGltZXI7XG4gIHJldHVybiB0aGlzO1xufTtcblxuLyoqXG4gKiBPdmVycmlkZSBkZWZhdWx0IHJlc3BvbnNlIGJvZHkgcGFyc2VyXG4gKlxuICogVGhpcyBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZCB0byBjb252ZXJ0IGluY29taW5nIGRhdGEgaW50byByZXF1ZXN0LmJvZHlcbiAqXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufVxuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5SZXF1ZXN0QmFzZS5wcm90b3R5cGUucGFyc2UgPSBmdW5jdGlvbiAoZm4pIHtcbiAgdGhpcy5fcGFyc2VyID0gZm47XG4gIHJldHVybiB0aGlzO1xufTtcblxuLyoqXG4gKiBTZXQgZm9ybWF0IG9mIGJpbmFyeSByZXNwb25zZSBib2R5LlxuICogSW4gYnJvd3NlciB2YWxpZCBmb3JtYXRzIGFyZSAnYmxvYicgYW5kICdhcnJheWJ1ZmZlcicsXG4gKiB3aGljaCByZXR1cm4gQmxvYiBhbmQgQXJyYXlCdWZmZXIsIHJlc3BlY3RpdmVseS5cbiAqXG4gKiBJbiBOb2RlIGFsbCB2YWx1ZXMgcmVzdWx0IGluIEJ1ZmZlci5cbiAqXG4gKiBFeGFtcGxlczpcbiAqXG4gKiAgICAgIHJlcS5nZXQoJy8nKVxuICogICAgICAgIC5yZXNwb25zZVR5cGUoJ2Jsb2InKVxuICogICAgICAgIC5lbmQoY2FsbGJhY2spO1xuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSB2YWxcbiAqIEByZXR1cm4ge1JlcXVlc3R9IGZvciBjaGFpbmluZ1xuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5SZXF1ZXN0QmFzZS5wcm90b3R5cGUucmVzcG9uc2VUeXBlID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gIHRoaXMuX3Jlc3BvbnNlVHlwZSA9IHZhbHVlO1xuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogT3ZlcnJpZGUgZGVmYXVsdCByZXF1ZXN0IGJvZHkgc2VyaWFsaXplclxuICpcbiAqIFRoaXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgdG8gY29udmVydCBkYXRhIHNldCB2aWEgLnNlbmQgb3IgLmF0dGFjaCBpbnRvIHBheWxvYWQgdG8gc2VuZFxuICpcbiAqIEBwYXJhbSB7RnVuY3Rpb259XG4gKiBAYXBpIHB1YmxpY1xuICovXG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5zZXJpYWxpemUgPSBmdW5jdGlvbiAoZm4pIHtcbiAgdGhpcy5fc2VyaWFsaXplciA9IGZuO1xuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogU2V0IHRpbWVvdXRzLlxuICpcbiAqIC0gcmVzcG9uc2UgdGltZW91dCBpcyB0aW1lIGJldHdlZW4gc2VuZGluZyByZXF1ZXN0IGFuZCByZWNlaXZpbmcgdGhlIGZpcnN0IGJ5dGUgb2YgdGhlIHJlc3BvbnNlLiBJbmNsdWRlcyBETlMgYW5kIGNvbm5lY3Rpb24gdGltZS5cbiAqIC0gZGVhZGxpbmUgaXMgdGhlIHRpbWUgZnJvbSBzdGFydCBvZiB0aGUgcmVxdWVzdCB0byByZWNlaXZpbmcgcmVzcG9uc2UgYm9keSBpbiBmdWxsLiBJZiB0aGUgZGVhZGxpbmUgaXMgdG9vIHNob3J0IGxhcmdlIGZpbGVzIG1heSBub3QgbG9hZCBhdCBhbGwgb24gc2xvdyBjb25uZWN0aW9ucy5cbiAqIC0gdXBsb2FkIGlzIHRoZSB0aW1lICBzaW5jZSBsYXN0IGJpdCBvZiBkYXRhIHdhcyBzZW50IG9yIHJlY2VpdmVkLiBUaGlzIHRpbWVvdXQgd29ya3Mgb25seSBpZiBkZWFkbGluZSB0aW1lb3V0IGlzIG9mZlxuICpcbiAqIFZhbHVlIG9mIDAgb3IgZmFsc2UgbWVhbnMgbm8gdGltZW91dC5cbiAqXG4gKiBAcGFyYW0ge051bWJlcnxPYmplY3R9IG1zIG9yIHtyZXNwb25zZSwgZGVhZGxpbmV9XG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSBmb3IgY2hhaW5pbmdcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVxdWVzdEJhc2UucHJvdG90eXBlLnRpbWVvdXQgPSBmdW5jdGlvbiAob3B0aW9ucykge1xuICBpZiAoIW9wdGlvbnMgfHwgdHlwZW9mIG9wdGlvbnMgIT09ICdvYmplY3QnKSB7XG4gICAgdGhpcy5fdGltZW91dCA9IG9wdGlvbnM7XG4gICAgdGhpcy5fcmVzcG9uc2VUaW1lb3V0ID0gMDtcbiAgICB0aGlzLl91cGxvYWRUaW1lb3V0ID0gMDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGZvciAoY29uc3Qgb3B0aW9uIGluIG9wdGlvbnMpIHtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9wdGlvbnMsIG9wdGlvbikpIHtcbiAgICAgIHN3aXRjaCAob3B0aW9uKSB7XG4gICAgICAgIGNhc2UgJ2RlYWRsaW5lJzpcbiAgICAgICAgICB0aGlzLl90aW1lb3V0ID0gb3B0aW9ucy5kZWFkbGluZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmVzcG9uc2UnOlxuICAgICAgICAgIHRoaXMuX3Jlc3BvbnNlVGltZW91dCA9IG9wdGlvbnMucmVzcG9uc2U7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3VwbG9hZCc6XG4gICAgICAgICAgdGhpcy5fdXBsb2FkVGltZW91dCA9IG9wdGlvbnMudXBsb2FkO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGNvbnNvbGUud2FybignVW5rbm93biB0aW1lb3V0IG9wdGlvbicsIG9wdGlvbik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vKipcbiAqIFNldCBudW1iZXIgb2YgcmV0cnkgYXR0ZW1wdHMgb24gZXJyb3IuXG4gKlxuICogRmFpbGVkIHJlcXVlc3RzIHdpbGwgYmUgcmV0cmllZCAnY291bnQnIHRpbWVzIGlmIHRpbWVvdXQgb3IgZXJyLmNvZGUgPj0gNTAwLlxuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBjb3VudFxuICogQHBhcmFtIHtGdW5jdGlvbn0gW2ZuXVxuICogQHJldHVybiB7UmVxdWVzdH0gZm9yIGNoYWluaW5nXG4gKiBAYXBpIHB1YmxpY1xuICovXG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5yZXRyeSA9IGZ1bmN0aW9uIChjb3VudCwgZm4pIHtcbiAgLy8gRGVmYXVsdCB0byAxIGlmIG5vIGNvdW50IHBhc3NlZCBvciB0cnVlXG4gIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAwIHx8IGNvdW50ID09PSB0cnVlKSBjb3VudCA9IDE7XG4gIGlmIChjb3VudCA8PSAwKSBjb3VudCA9IDA7XG4gIHRoaXMuX21heFJldHJpZXMgPSBjb3VudDtcbiAgdGhpcy5fcmV0cmllcyA9IDA7XG4gIHRoaXMuX3JldHJ5Q2FsbGJhY2sgPSBmbjtcbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vL1xuLy8gTk9URTogd2UgZG8gbm90IGluY2x1ZGUgRVNPQ0tFVFRJTUVET1VUIGJlY2F1c2UgdGhhdCBpcyBmcm9tIGByZXF1ZXN0YCBwYWNrYWdlXG4vLyAgICAgICA8aHR0cHM6Ly9naXRodWIuY29tL3NpbmRyZXNvcmh1cy9nb3QvcHVsbC81Mzc+XG4vL1xuLy8gTk9URTogd2UgZG8gbm90IGluY2x1ZGUgRUFERFJJTkZPIGJlY2F1c2UgaXQgd2FzIHJlbW92ZWQgZnJvbSBsaWJ1diBpbiAyMDE0XG4vLyAgICAgICA8aHR0cHM6Ly9naXRodWIuY29tL2xpYnV2L2xpYnV2L2NvbW1pdC8wMmUxZWJkNDBiODA3YmU1YWY0NjM0M2VhODczMzMxYjJlZTRlOWMxPlxuLy8gICAgICAgPGh0dHBzOi8vZ2l0aHViLmNvbS9yZXF1ZXN0L3JlcXVlc3Qvc2VhcmNoP3E9RVNPQ0tFVFRJTUVET1VUJnVuc2NvcGVkX3E9RVNPQ0tFVFRJTUVET1VUPlxuLy9cbi8vXG4vLyBUT0RPOiBleHBvc2UgdGhlc2UgYXMgY29uZmlndXJhYmxlIGRlZmF1bHRzXG4vL1xuY29uc3QgRVJST1JfQ09ERVMgPSBuZXcgU2V0KFtcbiAgJ0VUSU1FRE9VVCcsXG4gICdFQ09OTlJFU0VUJyxcbiAgJ0VBRERSSU5VU0UnLFxuICAnRUNPTk5SRUZVU0VEJyxcbiAgJ0VQSVBFJyxcbiAgJ0VOT1RGT1VORCcsXG4gICdFTkVUVU5SRUFDSCcsXG4gICdFQUlfQUdBSU4nXG5dKTtcblxuY29uc3QgU1RBVFVTX0NPREVTID0gbmV3IFNldChbXG4gIDQwOCxcbiAgNDEzLFxuICA0MjksXG4gIDUwMCxcbiAgNTAyLFxuICA1MDMsXG4gIDUwNCxcbiAgNTIxLFxuICA1MjIsXG4gIDUyNFxuXSk7XG5cbi8vIFRPRE86IHdlIHdvdWxkIG5lZWQgdG8gbWFrZSB0aGlzIGVhc2lseSBjb25maWd1cmFibGUgYmVmb3JlIGFkZGluZyBpdCBpbiAoZS5nLiBzb21lIG1pZ2h0IHdhbnQgdG8gYWRkIFBPU1QpXG4vLyBjb25zdCBNRVRIT0RTID0gbmV3IFNldChbJ0dFVCcsICdQVVQnLCAnSEVBRCcsICdERUxFVEUnLCAnT1BUSU9OUycsICdUUkFDRSddKTtcblxuLyoqXG4gKiBEZXRlcm1pbmUgaWYgYSByZXF1ZXN0IHNob3VsZCBiZSByZXRyaWVkLlxuICogKEluc3BpcmVkIGJ5IGh0dHBzOi8vZ2l0aHViLmNvbS9zaW5kcmVzb3JodXMvZ290I3JldHJ5KVxuICpcbiAqIEBwYXJhbSB7RXJyb3J9IGVyciBhbiBlcnJvclxuICogQHBhcmFtIHtSZXNwb25zZX0gW3Jlc10gcmVzcG9uc2VcbiAqIEByZXR1cm5zIHtCb29sZWFufSBpZiBzZWdtZW50IHNob3VsZCBiZSByZXRyaWVkXG4gKi9cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5fc2hvdWxkUmV0cnkgPSBmdW5jdGlvbiAoZXJyLCByZXMpIHtcbiAgaWYgKCF0aGlzLl9tYXhSZXRyaWVzIHx8IHRoaXMuX3JldHJpZXMrKyA+PSB0aGlzLl9tYXhSZXRyaWVzKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKHRoaXMuX3JldHJ5Q2FsbGJhY2spIHtcbiAgICB0cnkge1xuICAgICAgY29uc3Qgb3ZlcnJpZGUgPSB0aGlzLl9yZXRyeUNhbGxiYWNrKGVyciwgcmVzKTtcbiAgICAgIGlmIChvdmVycmlkZSA9PT0gdHJ1ZSkgcmV0dXJuIHRydWU7XG4gICAgICBpZiAob3ZlcnJpZGUgPT09IGZhbHNlKSByZXR1cm4gZmFsc2U7XG4gICAgICAvLyB1bmRlZmluZWQgZmFsbHMgYmFjayB0byBkZWZhdWx0c1xuICAgIH0gY2F0Y2ggKGVycl8pIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyXyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogd2Ugd291bGQgbmVlZCB0byBtYWtlIHRoaXMgZWFzaWx5IGNvbmZpZ3VyYWJsZSBiZWZvcmUgYWRkaW5nIGl0IGluIChlLmcuIHNvbWUgbWlnaHQgd2FudCB0byBhZGQgUE9TVClcbiAgLypcbiAgaWYgKFxuICAgIHRoaXMucmVxICYmXG4gICAgdGhpcy5yZXEubWV0aG9kICYmXG4gICAgIU1FVEhPRFMuaGFzKHRoaXMucmVxLm1ldGhvZC50b1VwcGVyQ2FzZSgpKVxuICApXG4gICAgcmV0dXJuIGZhbHNlO1xuICAqL1xuICBpZiAocmVzICYmIHJlcy5zdGF0dXMgJiYgU1RBVFVTX0NPREVTLmhhcyhyZXMuc3RhdHVzKSkgcmV0dXJuIHRydWU7XG4gIGlmIChlcnIpIHtcbiAgICBpZiAoZXJyLmNvZGUgJiYgRVJST1JfQ09ERVMuaGFzKGVyci5jb2RlKSkgcmV0dXJuIHRydWU7XG4gICAgLy8gU3VwZXJhZ2VudCB0aW1lb3V0XG4gICAgaWYgKGVyci50aW1lb3V0ICYmIGVyci5jb2RlID09PSAnRUNPTk5BQk9SVEVEJykgcmV0dXJuIHRydWU7XG4gICAgaWYgKGVyci5jcm9zc0RvbWFpbikgcmV0dXJuIHRydWU7XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59O1xuXG4vKipcbiAqIFJldHJ5IHJlcXVlc3RcbiAqXG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSBmb3IgY2hhaW5pbmdcbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5fcmV0cnkgPSBmdW5jdGlvbiAoKSB7XG4gIHRoaXMuY2xlYXJUaW1lb3V0KCk7XG5cbiAgLy8gbm9kZVxuICBpZiAodGhpcy5yZXEpIHtcbiAgICB0aGlzLnJlcSA9IG51bGw7XG4gICAgdGhpcy5yZXEgPSB0aGlzLnJlcXVlc3QoKTtcbiAgfVxuXG4gIHRoaXMuX2Fib3J0ZWQgPSBmYWxzZTtcbiAgdGhpcy50aW1lZG91dCA9IGZhbHNlO1xuICB0aGlzLnRpbWVkb3V0RXJyb3IgPSBudWxsO1xuXG4gIHJldHVybiB0aGlzLl9lbmQoKTtcbn07XG5cbi8qKlxuICogUHJvbWlzZSBzdXBwb3J0XG4gKlxuICogQHBhcmFtIHtGdW5jdGlvbn0gcmVzb2x2ZVxuICogQHBhcmFtIHtGdW5jdGlvbn0gW3JlamVjdF1cbiAqIEByZXR1cm4ge1JlcXVlc3R9XG4gKi9cblxuUmVxdWVzdEJhc2UucHJvdG90eXBlLnRoZW4gPSBmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gIGlmICghdGhpcy5fZnVsbGZpbGxlZFByb21pc2UpIHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICBpZiAodGhpcy5fZW5kQ2FsbGVkKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdXYXJuaW5nOiBzdXBlcmFnZW50IHJlcXVlc3Qgd2FzIHNlbnQgdHdpY2UsIGJlY2F1c2UgYm90aCAuZW5kKCkgYW5kIC50aGVuKCkgd2VyZSBjYWxsZWQuIE5ldmVyIGNhbGwgLmVuZCgpIGlmIHlvdSB1c2UgcHJvbWlzZXMnXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuX2Z1bGxmaWxsZWRQcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgc2VsZi5vbignYWJvcnQnLCAoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLl9tYXhSZXRyaWVzICYmIHRoaXMuX21heFJldHJpZXMgPiB0aGlzLl9yZXRyaWVzKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMudGltZWRvdXQgJiYgdGhpcy50aW1lZG91dEVycm9yKSB7XG4gICAgICAgICAgcmVqZWN0KHRoaXMudGltZWRvdXRFcnJvcik7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXJyID0gbmV3IEVycm9yKCdBYm9ydGVkJyk7XG4gICAgICAgIGVyci5jb2RlID0gJ0FCT1JURUQnO1xuICAgICAgICBlcnIuc3RhdHVzID0gdGhpcy5zdGF0dXM7XG4gICAgICAgIGVyci5tZXRob2QgPSB0aGlzLm1ldGhvZDtcbiAgICAgICAgZXJyLnVybCA9IHRoaXMudXJsO1xuICAgICAgICByZWplY3QoZXJyKTtcbiAgICAgIH0pO1xuICAgICAgc2VsZi5lbmQoKGVyciwgcmVzKSA9PiB7XG4gICAgICAgIGlmIChlcnIpIHJlamVjdChlcnIpO1xuICAgICAgICBlbHNlIHJlc29sdmUocmVzKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHRoaXMuX2Z1bGxmaWxsZWRQcm9taXNlLnRoZW4ocmVzb2x2ZSwgcmVqZWN0KTtcbn07XG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5jYXRjaCA9IGZ1bmN0aW9uIChjYikge1xuICByZXR1cm4gdGhpcy50aGVuKHVuZGVmaW5lZCwgY2IpO1xufTtcblxuLyoqXG4gKiBBbGxvdyBmb3IgZXh0ZW5zaW9uXG4gKi9cblxuUmVxdWVzdEJhc2UucHJvdG90eXBlLnVzZSA9IGZ1bmN0aW9uIChmbikge1xuICBmbih0aGlzKTtcbiAgcmV0dXJuIHRoaXM7XG59O1xuXG5SZXF1ZXN0QmFzZS5wcm90b3R5cGUub2sgPSBmdW5jdGlvbiAoY2IpIHtcbiAgaWYgKHR5cGVvZiBjYiAhPT0gJ2Z1bmN0aW9uJykgdGhyb3cgbmV3IEVycm9yKCdDYWxsYmFjayByZXF1aXJlZCcpO1xuICB0aGlzLl9va0NhbGxiYWNrID0gY2I7XG4gIHJldHVybiB0aGlzO1xufTtcblxuUmVxdWVzdEJhc2UucHJvdG90eXBlLl9pc1Jlc3BvbnNlT0sgPSBmdW5jdGlvbiAocmVzKSB7XG4gIGlmICghcmVzKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKHRoaXMuX29rQ2FsbGJhY2spIHtcbiAgICByZXR1cm4gdGhpcy5fb2tDYWxsYmFjayhyZXMpO1xuICB9XG5cbiAgcmV0dXJuIHJlcy5zdGF0dXMgPj0gMjAwICYmIHJlcy5zdGF0dXMgPCAzMDA7XG59O1xuXG4vKipcbiAqIEdldCByZXF1ZXN0IGhlYWRlciBgZmllbGRgLlxuICogQ2FzZS1pbnNlbnNpdGl2ZS5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gZmllbGRcbiAqIEByZXR1cm4ge1N0cmluZ31cbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVxdWVzdEJhc2UucHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uIChmaWVsZCkge1xuICByZXR1cm4gdGhpcy5faGVhZGVyW2ZpZWxkLnRvTG93ZXJDYXNlKCldO1xufTtcblxuLyoqXG4gKiBHZXQgY2FzZS1pbnNlbnNpdGl2ZSBoZWFkZXIgYGZpZWxkYCB2YWx1ZS5cbiAqIFRoaXMgaXMgYSBkZXByZWNhdGVkIGludGVybmFsIEFQSS4gVXNlIGAuZ2V0KGZpZWxkKWAgaW5zdGVhZC5cbiAqXG4gKiAoZ2V0SGVhZGVyIGlzIG5vIGxvbmdlciB1c2VkIGludGVybmFsbHkgYnkgdGhlIHN1cGVyYWdlbnQgY29kZSBiYXNlKVxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBmaWVsZFxuICogQHJldHVybiB7U3RyaW5nfVxuICogQGFwaSBwcml2YXRlXG4gKiBAZGVwcmVjYXRlZFxuICovXG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5nZXRIZWFkZXIgPSBSZXF1ZXN0QmFzZS5wcm90b3R5cGUuZ2V0O1xuXG4vKipcbiAqIFNldCBoZWFkZXIgYGZpZWxkYCB0byBgdmFsYCwgb3IgbXVsdGlwbGUgZmllbGRzIHdpdGggb25lIG9iamVjdC5cbiAqIENhc2UtaW5zZW5zaXRpdmUuXG4gKlxuICogRXhhbXBsZXM6XG4gKlxuICogICAgICByZXEuZ2V0KCcvJylcbiAqICAgICAgICAuc2V0KCdBY2NlcHQnLCAnYXBwbGljYXRpb24vanNvbicpXG4gKiAgICAgICAgLnNldCgnWC1BUEktS2V5JywgJ2Zvb2JhcicpXG4gKiAgICAgICAgLmVuZChjYWxsYmFjayk7XG4gKlxuICogICAgICByZXEuZ2V0KCcvJylcbiAqICAgICAgICAuc2V0KHsgQWNjZXB0OiAnYXBwbGljYXRpb24vanNvbicsICdYLUFQSS1LZXknOiAnZm9vYmFyJyB9KVxuICogICAgICAgIC5lbmQoY2FsbGJhY2spO1xuICpcbiAqIEBwYXJhbSB7U3RyaW5nfE9iamVjdH0gZmllbGRcbiAqIEBwYXJhbSB7U3RyaW5nfSB2YWxcbiAqIEByZXR1cm4ge1JlcXVlc3R9IGZvciBjaGFpbmluZ1xuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5SZXF1ZXN0QmFzZS5wcm90b3R5cGUuc2V0ID0gZnVuY3Rpb24gKGZpZWxkLCB2YWx1ZSkge1xuICBpZiAoaXNPYmplY3QoZmllbGQpKSB7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gZmllbGQpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZmllbGQsIGtleSkpXG4gICAgICAgIHRoaXMuc2V0KGtleSwgZmllbGRba2V5XSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICB0aGlzLl9oZWFkZXJbZmllbGQudG9Mb3dlckNhc2UoKV0gPSB2YWx1ZTtcbiAgdGhpcy5oZWFkZXJbZmllbGRdID0gdmFsdWU7XG4gIHJldHVybiB0aGlzO1xufTtcblxuLyoqXG4gKiBSZW1vdmUgaGVhZGVyIGBmaWVsZGAuXG4gKiBDYXNlLWluc2Vuc2l0aXZlLlxuICpcbiAqIEV4YW1wbGU6XG4gKlxuICogICAgICByZXEuZ2V0KCcvJylcbiAqICAgICAgICAudW5zZXQoJ1VzZXItQWdlbnQnKVxuICogICAgICAgIC5lbmQoY2FsbGJhY2spO1xuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBmaWVsZCBmaWVsZCBuYW1lXG4gKi9cblJlcXVlc3RCYXNlLnByb3RvdHlwZS51bnNldCA9IGZ1bmN0aW9uIChmaWVsZCkge1xuICBkZWxldGUgdGhpcy5faGVhZGVyW2ZpZWxkLnRvTG93ZXJDYXNlKCldO1xuICBkZWxldGUgdGhpcy5oZWFkZXJbZmllbGRdO1xuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogV3JpdGUgdGhlIGZpZWxkIGBuYW1lYCBhbmQgYHZhbGAsIG9yIG11bHRpcGxlIGZpZWxkcyB3aXRoIG9uZSBvYmplY3RcbiAqIGZvciBcIm11bHRpcGFydC9mb3JtLWRhdGFcIiByZXF1ZXN0IGJvZGllcy5cbiAqXG4gKiBgYGAganNcbiAqIHJlcXVlc3QucG9zdCgnL3VwbG9hZCcpXG4gKiAgIC5maWVsZCgnZm9vJywgJ2JhcicpXG4gKiAgIC5lbmQoY2FsbGJhY2spO1xuICpcbiAqIHJlcXVlc3QucG9zdCgnL3VwbG9hZCcpXG4gKiAgIC5maWVsZCh7IGZvbzogJ2JhcicsIGJhejogJ3F1eCcgfSlcbiAqICAgLmVuZChjYWxsYmFjayk7XG4gKiBgYGBcbiAqXG4gKiBAcGFyYW0ge1N0cmluZ3xPYmplY3R9IG5hbWUgbmFtZSBvZiBmaWVsZFxuICogQHBhcmFtIHtTdHJpbmd8QmxvYnxGaWxlfEJ1ZmZlcnxmcy5SZWFkU3RyZWFtfSB2YWwgdmFsdWUgb2YgZmllbGRcbiAqIEByZXR1cm4ge1JlcXVlc3R9IGZvciBjaGFpbmluZ1xuICogQGFwaSBwdWJsaWNcbiAqL1xuUmVxdWVzdEJhc2UucHJvdG90eXBlLmZpZWxkID0gZnVuY3Rpb24gKG5hbWUsIHZhbHVlKSB7XG4gIC8vIG5hbWUgc2hvdWxkIGJlIGVpdGhlciBhIHN0cmluZyBvciBhbiBvYmplY3QuXG4gIGlmIChuYW1lID09PSBudWxsIHx8IHVuZGVmaW5lZCA9PT0gbmFtZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignLmZpZWxkKG5hbWUsIHZhbCkgbmFtZSBjYW4gbm90IGJlIGVtcHR5Jyk7XG4gIH1cblxuICBpZiAodGhpcy5fZGF0YSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwiLmZpZWxkKCkgY2FuJ3QgYmUgdXNlZCBpZiAuc2VuZCgpIGlzIHVzZWQuIFBsZWFzZSB1c2Ugb25seSAuc2VuZCgpIG9yIG9ubHkgLmZpZWxkKCkgJiAuYXR0YWNoKClcIlxuICAgICk7XG4gIH1cblxuICBpZiAoaXNPYmplY3QobmFtZSkpIHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBuYW1lKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG5hbWUsIGtleSkpXG4gICAgICAgIHRoaXMuZmllbGQoa2V5LCBuYW1lW2tleV0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgZm9yIChjb25zdCBpIGluIHZhbHVlKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHZhbHVlLCBpKSlcbiAgICAgICAgdGhpcy5maWVsZChuYW1lLCB2YWx1ZVtpXSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvLyB2YWwgc2hvdWxkIGJlIGRlZmluZWQgbm93XG4gIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB1bmRlZmluZWQgPT09IHZhbHVlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCcuZmllbGQobmFtZSwgdmFsKSB2YWwgY2FuIG5vdCBiZSBlbXB0eScpO1xuICB9XG5cbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgdmFsdWUgPSBTdHJpbmcodmFsdWUpO1xuICB9XG5cbiAgdGhpcy5fZ2V0Rm9ybURhdGEoKS5hcHBlbmQobmFtZSwgdmFsdWUpO1xuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogQWJvcnQgdGhlIHJlcXVlc3QsIGFuZCBjbGVhciBwb3RlbnRpYWwgdGltZW91dC5cbiAqXG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSByZXF1ZXN0XG4gKiBAYXBpIHB1YmxpY1xuICovXG5SZXF1ZXN0QmFzZS5wcm90b3R5cGUuYWJvcnQgPSBmdW5jdGlvbiAoKSB7XG4gIGlmICh0aGlzLl9hYm9ydGVkKSB7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICB0aGlzLl9hYm9ydGVkID0gdHJ1ZTtcbiAgaWYgKHRoaXMueGhyKSB0aGlzLnhoci5hYm9ydCgpOyAvLyBicm93c2VyXG4gIGlmICh0aGlzLnJlcSkgdGhpcy5yZXEuYWJvcnQoKTsgLy8gbm9kZVxuICB0aGlzLmNsZWFyVGltZW91dCgpO1xuICB0aGlzLmVtaXQoJ2Fib3J0Jyk7XG4gIHJldHVybiB0aGlzO1xufTtcblxuUmVxdWVzdEJhc2UucHJvdG90eXBlLl9hdXRoID0gZnVuY3Rpb24gKHVzZXIsIHBhc3MsIG9wdGlvbnMsIGJhc2U2NEVuY29kZXIpIHtcbiAgc3dpdGNoIChvcHRpb25zLnR5cGUpIHtcbiAgICBjYXNlICdiYXNpYyc6XG4gICAgICB0aGlzLnNldCgnQXV0aG9yaXphdGlvbicsIGBCYXNpYyAke2Jhc2U2NEVuY29kZXIoYCR7dXNlcn06JHtwYXNzfWApfWApO1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlICdhdXRvJzpcbiAgICAgIHRoaXMudXNlcm5hbWUgPSB1c2VyO1xuICAgICAgdGhpcy5wYXNzd29yZCA9IHBhc3M7XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgJ2JlYXJlcic6IC8vIHVzYWdlIHdvdWxkIGJlIC5hdXRoKGFjY2Vzc1Rva2VuLCB7IHR5cGU6ICdiZWFyZXInIH0pXG4gICAgICB0aGlzLnNldCgnQXV0aG9yaXphdGlvbicsIGBCZWFyZXIgJHt1c2VyfWApO1xuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vKipcbiAqIEVuYWJsZSB0cmFuc21pc3Npb24gb2YgY29va2llcyB3aXRoIHgtZG9tYWluIHJlcXVlc3RzLlxuICpcbiAqIE5vdGUgdGhhdCBmb3IgdGhpcyB0byB3b3JrIHRoZSBvcmlnaW4gbXVzdCBub3QgYmVcbiAqIHVzaW5nIFwiQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luXCIgd2l0aCBhIHdpbGRjYXJkLFxuICogYW5kIGFsc28gbXVzdCBzZXQgXCJBY2Nlc3MtQ29udHJvbC1BbGxvdy1DcmVkZW50aWFsc1wiXG4gKiB0byBcInRydWVcIi5cbiAqXG4gKiBAYXBpIHB1YmxpY1xuICovXG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS53aXRoQ3JlZGVudGlhbHMgPSBmdW5jdGlvbiAob24pIHtcbiAgLy8gVGhpcyBpcyBicm93c2VyLW9ubHkgZnVuY3Rpb25hbGl0eS4gTm9kZSBzaWRlIGlzIG5vLW9wLlxuICBpZiAob24gPT09IHVuZGVmaW5lZCkgb24gPSB0cnVlO1xuICB0aGlzLl93aXRoQ3JlZGVudGlhbHMgPSBvbjtcbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vKipcbiAqIFNldCB0aGUgbWF4IHJlZGlyZWN0cyB0byBgbmAuIERvZXMgbm90aGluZyBpbiBicm93c2VyIFhIUiBpbXBsZW1lbnRhdGlvbi5cbiAqXG4gKiBAcGFyYW0ge051bWJlcn0gblxuICogQHJldHVybiB7UmVxdWVzdH0gZm9yIGNoYWluaW5nXG4gKiBAYXBpIHB1YmxpY1xuICovXG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5yZWRpcmVjdHMgPSBmdW5jdGlvbiAobikge1xuICB0aGlzLl9tYXhSZWRpcmVjdHMgPSBuO1xuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogTWF4aW11bSBzaXplIG9mIGJ1ZmZlcmVkIHJlc3BvbnNlIGJvZHksIGluIGJ5dGVzLiBDb3VudHMgdW5jb21wcmVzc2VkIHNpemUuXG4gKiBEZWZhdWx0IDIwME1CLlxuICpcbiAqIEBwYXJhbSB7TnVtYmVyfSBuIG51bWJlciBvZiBieXRlc1xuICogQHJldHVybiB7UmVxdWVzdH0gZm9yIGNoYWluaW5nXG4gKi9cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5tYXhSZXNwb25zZVNpemUgPSBmdW5jdGlvbiAobikge1xuICBpZiAodHlwZW9mIG4gIT09ICdudW1iZXInKSB7XG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcignSW52YWxpZCBhcmd1bWVudCcpO1xuICB9XG5cbiAgdGhpcy5fbWF4UmVzcG9uc2VTaXplID0gbjtcbiAgcmV0dXJuIHRoaXM7XG59O1xuXG4vKipcbiAqIENvbnZlcnQgdG8gYSBwbGFpbiBqYXZhc2NyaXB0IG9iamVjdCAobm90IEpTT04gc3RyaW5nKSBvZiBzY2FsYXIgcHJvcGVydGllcy5cbiAqIE5vdGUgYXMgdGhpcyBtZXRob2QgaXMgZGVzaWduZWQgdG8gcmV0dXJuIGEgdXNlZnVsIG5vbi10aGlzIHZhbHVlLFxuICogaXQgY2Fubm90IGJlIGNoYWluZWQuXG4gKlxuICogQHJldHVybiB7T2JqZWN0fSBkZXNjcmliaW5nIG1ldGhvZCwgdXJsLCBhbmQgZGF0YSBvZiB0aGlzIHJlcXVlc3RcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVxdWVzdEJhc2UucHJvdG90eXBlLnRvSlNPTiA9IGZ1bmN0aW9uICgpIHtcbiAgcmV0dXJuIHtcbiAgICBtZXRob2Q6IHRoaXMubWV0aG9kLFxuICAgIHVybDogdGhpcy51cmwsXG4gICAgZGF0YTogdGhpcy5fZGF0YSxcbiAgICBoZWFkZXJzOiB0aGlzLl9oZWFkZXJcbiAgfTtcbn07XG5cbi8qKlxuICogU2VuZCBgZGF0YWAgYXMgdGhlIHJlcXVlc3QgYm9keSwgZGVmYXVsdGluZyB0aGUgYC50eXBlKClgIHRvIFwianNvblwiIHdoZW5cbiAqIGFuIG9iamVjdCBpcyBnaXZlbi5cbiAqXG4gKiBFeGFtcGxlczpcbiAqXG4gKiAgICAgICAvLyBtYW51YWwganNvblxuICogICAgICAgcmVxdWVzdC5wb3N0KCcvdXNlcicpXG4gKiAgICAgICAgIC50eXBlKCdqc29uJylcbiAqICAgICAgICAgLnNlbmQoJ3tcIm5hbWVcIjpcInRqXCJ9JylcbiAqICAgICAgICAgLmVuZChjYWxsYmFjaylcbiAqXG4gKiAgICAgICAvLyBhdXRvIGpzb25cbiAqICAgICAgIHJlcXVlc3QucG9zdCgnL3VzZXInKVxuICogICAgICAgICAuc2VuZCh7IG5hbWU6ICd0aicgfSlcbiAqICAgICAgICAgLmVuZChjYWxsYmFjaylcbiAqXG4gKiAgICAgICAvLyBtYW51YWwgeC13d3ctZm9ybS11cmxlbmNvZGVkXG4gKiAgICAgICByZXF1ZXN0LnBvc3QoJy91c2VyJylcbiAqICAgICAgICAgLnR5cGUoJ2Zvcm0nKVxuICogICAgICAgICAuc2VuZCgnbmFtZT10aicpXG4gKiAgICAgICAgIC5lbmQoY2FsbGJhY2spXG4gKlxuICogICAgICAgLy8gYXV0byB4LXd3dy1mb3JtLXVybGVuY29kZWRcbiAqICAgICAgIHJlcXVlc3QucG9zdCgnL3VzZXInKVxuICogICAgICAgICAudHlwZSgnZm9ybScpXG4gKiAgICAgICAgIC5zZW5kKHsgbmFtZTogJ3RqJyB9KVxuICogICAgICAgICAuZW5kKGNhbGxiYWNrKVxuICpcbiAqICAgICAgIC8vIGRlZmF1bHRzIHRvIHgtd3d3LWZvcm0tdXJsZW5jb2RlZFxuICogICAgICByZXF1ZXN0LnBvc3QoJy91c2VyJylcbiAqICAgICAgICAuc2VuZCgnbmFtZT10b2JpJylcbiAqICAgICAgICAuc2VuZCgnc3BlY2llcz1mZXJyZXQnKVxuICogICAgICAgIC5lbmQoY2FsbGJhY2spXG4gKlxuICogQHBhcmFtIHtTdHJpbmd8T2JqZWN0fSBkYXRhXG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSBmb3IgY2hhaW5pbmdcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNvbXBsZXhpdHlcblJlcXVlc3RCYXNlLnByb3RvdHlwZS5zZW5kID0gZnVuY3Rpb24gKGRhdGEpIHtcbiAgY29uc3QgaXNPYmplY3RfID0gaXNPYmplY3QoZGF0YSk7XG4gIGxldCB0eXBlID0gdGhpcy5faGVhZGVyWydjb250ZW50LXR5cGUnXTtcblxuICBpZiAodGhpcy5fZm9ybURhdGEpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcIi5zZW5kKCkgY2FuJ3QgYmUgdXNlZCBpZiAuYXR0YWNoKCkgb3IgLmZpZWxkKCkgaXMgdXNlZC4gUGxlYXNlIHVzZSBvbmx5IC5zZW5kKCkgb3Igb25seSAuZmllbGQoKSAmIC5hdHRhY2goKVwiXG4gICAgKTtcbiAgfVxuXG4gIGlmIChpc09iamVjdF8gJiYgIXRoaXMuX2RhdGEpIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShkYXRhKSkge1xuICAgICAgdGhpcy5fZGF0YSA9IFtdO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuX2lzSG9zdChkYXRhKSkge1xuICAgICAgdGhpcy5fZGF0YSA9IHt9O1xuICAgIH1cbiAgfSBlbHNlIGlmIChkYXRhICYmIHRoaXMuX2RhdGEgJiYgdGhpcy5faXNIb3N0KHRoaXMuX2RhdGEpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiQ2FuJ3QgbWVyZ2UgdGhlc2Ugc2VuZCBjYWxsc1wiKTtcbiAgfVxuXG4gIC8vIG1lcmdlXG4gIGlmIChpc09iamVjdF8gJiYgaXNPYmplY3QodGhpcy5fZGF0YSkpIHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBkYXRhKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGRhdGEsIGtleSkpXG4gICAgICAgIHRoaXMuX2RhdGFba2V5XSA9IGRhdGFba2V5XTtcbiAgICB9XG4gIH0gZWxzZSBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgLy8gZGVmYXVsdCB0byB4LXd3dy1mb3JtLXVybGVuY29kZWRcbiAgICBpZiAoIXR5cGUpIHRoaXMudHlwZSgnZm9ybScpO1xuICAgIHR5cGUgPSB0aGlzLl9oZWFkZXJbJ2NvbnRlbnQtdHlwZSddO1xuICAgIGlmICh0eXBlKSB0eXBlID0gdHlwZS50b0xvd2VyQ2FzZSgpLnRyaW0oKTtcbiAgICBpZiAodHlwZSA9PT0gJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSB0aGlzLl9kYXRhID8gYCR7dGhpcy5fZGF0YX0mJHtkYXRhfWAgOiBkYXRhO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9kYXRhID0gKHRoaXMuX2RhdGEgfHwgJycpICsgZGF0YTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgdGhpcy5fZGF0YSA9IGRhdGE7XG4gIH1cblxuICBpZiAoIWlzT2JqZWN0XyB8fCB0aGlzLl9pc0hvc3QoZGF0YSkpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8vIGRlZmF1bHQgdG8ganNvblxuICBpZiAoIXR5cGUpIHRoaXMudHlwZSgnanNvbicpO1xuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogU29ydCBgcXVlcnlzdHJpbmdgIGJ5IHRoZSBzb3J0IGZ1bmN0aW9uXG4gKlxuICpcbiAqIEV4YW1wbGVzOlxuICpcbiAqICAgICAgIC8vIGRlZmF1bHQgb3JkZXJcbiAqICAgICAgIHJlcXVlc3QuZ2V0KCcvdXNlcicpXG4gKiAgICAgICAgIC5xdWVyeSgnbmFtZT1OaWNrJylcbiAqICAgICAgICAgLnF1ZXJ5KCdzZWFyY2g9TWFubnknKVxuICogICAgICAgICAuc29ydFF1ZXJ5KClcbiAqICAgICAgICAgLmVuZChjYWxsYmFjaylcbiAqXG4gKiAgICAgICAvLyBjdXN0b21pemVkIHNvcnQgZnVuY3Rpb25cbiAqICAgICAgIHJlcXVlc3QuZ2V0KCcvdXNlcicpXG4gKiAgICAgICAgIC5xdWVyeSgnbmFtZT1OaWNrJylcbiAqICAgICAgICAgLnF1ZXJ5KCdzZWFyY2g9TWFubnknKVxuICogICAgICAgICAuc29ydFF1ZXJ5KGZ1bmN0aW9uKGEsIGIpe1xuICogICAgICAgICAgIHJldHVybiBhLmxlbmd0aCAtIGIubGVuZ3RoO1xuICogICAgICAgICB9KVxuICogICAgICAgICAuZW5kKGNhbGxiYWNrKVxuICpcbiAqXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBzb3J0XG4gKiBAcmV0dXJuIHtSZXF1ZXN0fSBmb3IgY2hhaW5pbmdcbiAqIEBhcGkgcHVibGljXG4gKi9cblxuUmVxdWVzdEJhc2UucHJvdG90eXBlLnNvcnRRdWVyeSA9IGZ1bmN0aW9uIChzb3J0KSB7XG4gIC8vIF9zb3J0IGRlZmF1bHQgdG8gdHJ1ZSBidXQgb3RoZXJ3aXNlIGNhbiBiZSBhIGZ1bmN0aW9uIG9yIGJvb2xlYW5cbiAgdGhpcy5fc29ydCA9IHR5cGVvZiBzb3J0ID09PSAndW5kZWZpbmVkJyA/IHRydWUgOiBzb3J0O1xuICByZXR1cm4gdGhpcztcbn07XG5cbi8qKlxuICogQ29tcG9zZSBxdWVyeXN0cmluZyB0byBhcHBlbmQgdG8gcmVxLnVybFxuICpcbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5SZXF1ZXN0QmFzZS5wcm90b3R5cGUuX2ZpbmFsaXplUXVlcnlTdHJpbmcgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHF1ZXJ5ID0gdGhpcy5fcXVlcnkuam9pbignJicpO1xuICBpZiAocXVlcnkpIHtcbiAgICB0aGlzLnVybCArPSAodGhpcy51cmwuaW5jbHVkZXMoJz8nKSA/ICcmJyA6ICc/JykgKyBxdWVyeTtcbiAgfVxuXG4gIHRoaXMuX3F1ZXJ5Lmxlbmd0aCA9IDA7IC8vIE1ha2VzIHRoZSBjYWxsIGlkZW1wb3RlbnRcblxuICBpZiAodGhpcy5fc29ydCkge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy51cmwuaW5kZXhPZignPycpO1xuICAgIGlmIChpbmRleCA+PSAwKSB7XG4gICAgICBjb25zdCBxdWVyeUFycmF5ID0gdGhpcy51cmwuc2xpY2UoaW5kZXggKyAxKS5zcGxpdCgnJicpO1xuICAgICAgaWYgKHR5cGVvZiB0aGlzLl9zb3J0ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIHF1ZXJ5QXJyYXkuc29ydCh0aGlzLl9zb3J0KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHF1ZXJ5QXJyYXkuc29ydCgpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnVybCA9IHRoaXMudXJsLnNsaWNlKDAsIGluZGV4KSArICc/JyArIHF1ZXJ5QXJyYXkuam9pbignJicpO1xuICAgIH1cbiAgfVxufTtcblxuLy8gRm9yIGJhY2t3YXJkcyBjb21wYXQgb25seVxuUmVxdWVzdEJhc2UucHJvdG90eXBlLl9hcHBlbmRRdWVyeVN0cmluZyA9ICgpID0+IHtcbiAgY29uc29sZS53YXJuKCdVbnN1cHBvcnRlZCcpO1xufTtcblxuLyoqXG4gKiBJbnZva2UgY2FsbGJhY2sgd2l0aCB0aW1lb3V0IGVycm9yLlxuICpcbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5fdGltZW91dEVycm9yID0gZnVuY3Rpb24gKHJlYXNvbiwgdGltZW91dCwgZXJybm8pIHtcbiAgaWYgKHRoaXMuX2Fib3J0ZWQpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBlcnIgPSBuZXcgRXJyb3IoYCR7cmVhc29uICsgdGltZW91dH1tcyBleGNlZWRlZGApO1xuICBlcnIudGltZW91dCA9IHRpbWVvdXQ7XG4gIGVyci5jb2RlID0gJ0VDT05OQUJPUlRFRCc7XG4gIGVyci5lcnJubyA9IGVycm5vO1xuICB0aGlzLnRpbWVkb3V0ID0gdHJ1ZTtcbiAgdGhpcy50aW1lZG91dEVycm9yID0gZXJyO1xuICB0aGlzLmFib3J0KCk7XG4gIHRoaXMuY2FsbGJhY2soZXJyKTtcbn07XG5cblJlcXVlc3RCYXNlLnByb3RvdHlwZS5fc2V0VGltZW91dHMgPSBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHNlbGYgPSB0aGlzO1xuXG4gIC8vIGRlYWRsaW5lXG4gIGlmICh0aGlzLl90aW1lb3V0ICYmICF0aGlzLl90aW1lcikge1xuICAgIHRoaXMuX3RpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBzZWxmLl90aW1lb3V0RXJyb3IoJ1RpbWVvdXQgb2YgJywgc2VsZi5fdGltZW91dCwgJ0VUSU1FJyk7XG4gICAgfSwgdGhpcy5fdGltZW91dCk7XG4gIH1cblxuICAvLyByZXNwb25zZSB0aW1lb3V0XG4gIGlmICh0aGlzLl9yZXNwb25zZVRpbWVvdXQgJiYgIXRoaXMuX3Jlc3BvbnNlVGltZW91dFRpbWVyKSB7XG4gICAgdGhpcy5fcmVzcG9uc2VUaW1lb3V0VGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNlbGYuX3RpbWVvdXRFcnJvcihcbiAgICAgICAgJ1Jlc3BvbnNlIHRpbWVvdXQgb2YgJyxcbiAgICAgICAgc2VsZi5fcmVzcG9uc2VUaW1lb3V0LFxuICAgICAgICAnRVRJTUVET1VUJ1xuICAgICAgKTtcbiAgICB9LCB0aGlzLl9yZXNwb25zZVRpbWVvdXQpO1xuICB9XG59O1xuIl19 /***/ }), -/* 128 */ +/* 145 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -18033,15 +20277,13 @@ RequestBase.prototype._setTimeouts = function() { /** * Module dependencies. */ - -var utils = __webpack_require__(129); - +var utils = __webpack_require__(146); /** * Expose `ResponseBase`. */ -module.exports = ResponseBase; +module.exports = ResponseBase; /** * Initialize a new `ResponseBase`. * @@ -18051,7 +20293,6 @@ module.exports = ResponseBase; function ResponseBase(obj) { if (obj) return mixin(obj); } - /** * Mixin the prototype properties. * @@ -18060,13 +20301,14 @@ function ResponseBase(obj) { * @api private */ + function mixin(obj) { for (var key in ResponseBase.prototype) { - obj[key] = ResponseBase.prototype[key]; + if (Object.prototype.hasOwnProperty.call(ResponseBase.prototype, key)) obj[key] = ResponseBase.prototype[key]; } + return obj; } - /** * Get case-insensitive `field` value. * @@ -18075,10 +20317,10 @@ function mixin(obj) { * @api public */ -ResponseBase.prototype.get = function(field) { + +ResponseBase.prototype.get = function (field) { return this.header[field.toLowerCase()]; }; - /** * Set header related properties: * @@ -18091,30 +20333,29 @@ ResponseBase.prototype.get = function(field) { * @api private */ -ResponseBase.prototype._setHeaderProperties = function(header){ - // TODO: moar! - // TODO: make this a util - // content-type - var ct = header['content-type'] || ''; - this.type = utils.type(ct); +ResponseBase.prototype._setHeaderProperties = function (header) { + // TODO: moar! + // TODO: make this a util + // content-type + var ct = header['content-type'] || ''; + this.type = utils.type(ct); // params + + var params = utils.params(ct); - // params - var params = utils.params(ct); - for (var key in params) this[key] = params[key]; + for (var key in params) { + if (Object.prototype.hasOwnProperty.call(params, key)) this[key] = params[key]; + } - this.links = {}; + this.links = {}; // links - // links - try { - if (header.link) { - this.links = utils.parseLinks(header.link); - } - } catch (err) { - // ignore + try { + if (header.link) { + this.links = utils.parseLinks(header.link); } + } catch (_unused) {// ignore + } }; - /** * Set flags such as `.ok` based on `status`. * @@ -18136,43 +20377,46 @@ ResponseBase.prototype._setHeaderProperties = function(header){ * @api private */ -ResponseBase.prototype._setStatusProperties = function(status){ - var type = status / 100 | 0; - - // status / class - this.status = this.statusCode = status; - this.statusType = type; - - // basics - this.info = 1 == type; - this.ok = 2 == type; - this.redirect = 3 == type; - this.clientError = 4 == type; - this.serverError = 5 == type; - this.error = (4 == type || 5 == type) - ? this.toError() - : false; - - // sugar - this.created = 201 == status; - this.accepted = 202 == status; - this.noContent = 204 == status; - this.badRequest = 400 == status; - this.unauthorized = 401 == status; - this.notAcceptable = 406 == status; - this.forbidden = 403 == status; - this.notFound = 404 == status; - this.unprocessableEntity = 422 == status; + +ResponseBase.prototype._setStatusProperties = function (status) { + var type = status / 100 | 0; // status / class + + this.statusCode = status; + this.status = this.statusCode; + this.statusType = type; // basics + + this.info = type === 1; + this.ok = type === 2; + this.redirect = type === 3; + this.clientError = type === 4; + this.serverError = type === 5; + this.error = type === 4 || type === 5 ? this.toError() : false; // sugar + + this.created = status === 201; + this.accepted = status === 202; + this.noContent = status === 204; + this.badRequest = status === 400; + this.unauthorized = status === 401; + this.notAcceptable = status === 406; + this.forbidden = status === 403; + this.notFound = status === 404; + this.unprocessableEntity = status === 422; }; - +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9yZXNwb25zZS1iYXNlLmpzIl0sIm5hbWVzIjpbInV0aWxzIiwicmVxdWlyZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJSZXNwb25zZUJhc2UiLCJvYmoiLCJtaXhpbiIsImtleSIsInByb3RvdHlwZSIsIk9iamVjdCIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImdldCIsImZpZWxkIiwiaGVhZGVyIiwidG9Mb3dlckNhc2UiLCJfc2V0SGVhZGVyUHJvcGVydGllcyIsImN0IiwidHlwZSIsInBhcmFtcyIsImxpbmtzIiwibGluayIsInBhcnNlTGlua3MiLCJfc2V0U3RhdHVzUHJvcGVydGllcyIsInN0YXR1cyIsInN0YXR1c0NvZGUiLCJzdGF0dXNUeXBlIiwiaW5mbyIsIm9rIiwicmVkaXJlY3QiLCJjbGllbnRFcnJvciIsInNlcnZlckVycm9yIiwiZXJyb3IiLCJ0b0Vycm9yIiwiY3JlYXRlZCIsImFjY2VwdGVkIiwibm9Db250ZW50IiwiYmFkUmVxdWVzdCIsInVuYXV0aG9yaXplZCIsIm5vdEFjY2VwdGFibGUiLCJmb3JiaWRkZW4iLCJub3RGb3VuZCIsInVucHJvY2Vzc2FibGVFbnRpdHkiXSwibWFwcGluZ3MiOiI7O0FBQUE7OztBQUlBLElBQU1BLEtBQUssR0FBR0MsT0FBTyxDQUFDLFNBQUQsQ0FBckI7QUFFQTs7Ozs7QUFJQUMsTUFBTSxDQUFDQyxPQUFQLEdBQWlCQyxZQUFqQjtBQUVBOzs7Ozs7QUFNQSxTQUFTQSxZQUFULENBQXNCQyxHQUF0QixFQUEyQjtBQUN6QixNQUFJQSxHQUFKLEVBQVMsT0FBT0MsS0FBSyxDQUFDRCxHQUFELENBQVo7QUFDVjtBQUVEOzs7Ozs7Ozs7QUFRQSxTQUFTQyxLQUFULENBQWVELEdBQWYsRUFBb0I7QUFDbEIsT0FBSyxJQUFNRSxHQUFYLElBQWtCSCxZQUFZLENBQUNJLFNBQS9CLEVBQTBDO0FBQ3hDLFFBQUlDLE1BQU0sQ0FBQ0QsU0FBUCxDQUFpQkUsY0FBakIsQ0FBZ0NDLElBQWhDLENBQXFD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LEdBQTJCbEIsTUFBTSxLQUFLLEdBQXRDO0FBQ0QsQ0ExQkQiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIE1vZHVsZSBkZXBlbmRlbmNpZXMuXG4gKi9cblxuY29uc3QgdXRpbHMgPSByZXF1aXJlKCcuL3V0aWxzJyk7XG5cbi8qKlxuICogRXhwb3NlIGBSZXNwb25zZUJhc2VgLlxuICovXG5cbm1vZHVsZS5leHBvcnRzID0gUmVzcG9uc2VCYXNlO1xuXG4vKipcbiAqIEluaXRpYWxpemUgYSBuZXcgYFJlc3BvbnNlQmFzZWAuXG4gKlxuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5mdW5jdGlvbiBSZXNwb25zZUJhc2Uob2JqKSB7XG4gIGlmIChvYmopIHJldHVybiBtaXhpbihvYmopO1xufVxuXG4vKipcbiAqIE1peGluIHRoZSBwcm90b3R5cGUgcHJvcGVydGllcy5cbiAqXG4gKiBAcGFyYW0ge09iamVjdH0gb2JqXG4gKiBAcmV0dXJuIHtPYmplY3R9XG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5mdW5jdGlvbiBtaXhpbihvYmopIHtcbiAgZm9yIChjb25zdCBrZXkgaW4gUmVzcG9uc2VCYXNlLnByb3RvdHlwZSkge1xuICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoUmVzcG9uc2VCYXNlLnByb3RvdHlwZSwga2V5KSlcbiAgICAgIG9ialtrZXldID0gUmVzcG9uc2VCYXNlLnByb3RvdHlwZVtrZXldO1xuICB9XG5cbiAgcmV0dXJuIG9iajtcbn1cblxuLyoqXG4gKiBHZXQgY2FzZS1pbnNlbnNpdGl2ZSBgZmllbGRgIHZhbHVlLlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBmaWVsZFxuICogQHJldHVybiB7U3RyaW5nfVxuICogQGFwaSBwdWJsaWNcbiAqL1xuXG5SZXNwb25zZUJhc2UucHJvdG90eXBlLmdldCA9IGZ1bmN0aW9uIChmaWVsZCkge1xuICByZXR1cm4gdGhpcy5oZWFkZXJbZmllbGQudG9Mb3dlckNhc2UoKV07XG59O1xuXG4vKipcbiAqIFNldCBoZWFkZXIgcmVsYXRlZCBwcm9wZXJ0aWVzOlxuICpcbiAqICAgLSBgLnR5cGVgIHRoZSBjb250ZW50IHR5cGUgd2l0aG91dCBwYXJhbXNcbiAqXG4gKiBBIHJlc3BvbnNlIG9mIFwiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PXV0Zi04XCJcbiAqIHdpbGwgcHJvdmlkZSB5b3Ugd2l0aCBhIGAudHlwZWAgb2YgXCJ0ZXh0L3BsYWluXCIuXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGhlYWRlclxuICogQGFwaSBwcml2YXRlXG4gKi9cblxuUmVzcG9uc2VCYXNlLnByb3RvdHlwZS5fc2V0SGVhZGVyUHJvcGVydGllcyA9IGZ1bmN0aW9uIChoZWFkZXIpIHtcbiAgLy8gVE9ETzogbW9hciFcbiAgLy8gVE9ETzogbWFrZSB0aGlzIGEgdXRpbFxuXG4gIC8vIGNvbnRlbnQtdHlwZVxuICBjb25zdCBjdCA9IGhlYWRlclsnY29udGVudC10eXBlJ10gfHwgJyc7XG4gIHRoaXMudHlwZSA9IHV0aWxzLnR5cGUoY3QpO1xuXG4gIC8vIHBhcmFtc1xuICBjb25zdCBwYXJhbXMgPSB1dGlscy5wYXJhbXMoY3QpO1xuICBmb3IgKGNvbnN0IGtleSBpbiBwYXJhbXMpIHtcbiAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHBhcmFtcywga2V5KSlcbiAgICAgIHRoaXNba2V5XSA9IHBhcmFtc1trZXldO1xuICB9XG5cbiAgdGhpcy5saW5rcyA9IHt9O1xuXG4gIC8vIGxpbmtzXG4gIHRyeSB7XG4gICAgaWYgKGhlYWRlci5saW5rKSB7XG4gICAgICB0aGlzLmxpbmtzID0gdXRpbHMucGFyc2VMaW5rcyhoZWFkZXIubGluayk7XG4gICAgfVxuICB9IGNhdGNoIHtcbiAgICAvLyBpZ25vcmVcbiAgfVxufTtcblxuLyoqXG4gKiBTZXQgZmxhZ3Mgc3VjaCBhcyBgLm9rYCBiYXNlZCBvbiBgc3RhdHVzYC5cbiAqXG4gKiBGb3IgZXhhbXBsZSBhIDJ4eCByZXNwb25zZSB3aWxsIGdpdmUgeW91IGEgYC5va2Agb2YgX190cnVlX19cbiAqIHdoZXJlYXMgNXh4IHdpbGwgYmUgX19mYWxzZV9fIGFuZCBgLmVycm9yYCB3aWxsIGJlIF9fdHJ1ZV9fLiBUaGVcbiAqIGAuY2xpZW50RXJyb3JgIGFuZCBgLnNlcnZlckVycm9yYCBhcmUgYWxzbyBhdmFpbGFibGUgdG8gYmUgbW9yZVxuICogc3BlY2lmaWMsIGFuZCBgLnN0YXR1c1R5cGVgIGlzIHRoZSBjbGFzcyBvZiBlcnJvciByYW5naW5nIGZyb20gMS4uNVxuICogc29tZXRpbWVzIHVzZWZ1bCBmb3IgbWFwcGluZyByZXNwb25kIGNvbG9ycyBldGMuXG4gKlxuICogXCJzdWdhclwiIHByb3BlcnRpZXMgYXJlIGFsc28gZGVmaW5lZCBmb3IgY29tbW9uIGNhc2VzLiBDdXJyZW50bHkgcHJvdmlkaW5nOlxuICpcbiAqICAgLSAubm9Db250ZW50XG4gKiAgIC0gLmJhZFJlcXVlc3RcbiAqICAgLSAudW5hdXRob3JpemVkXG4gKiAgIC0gLm5vdEFjY2VwdGFibGVcbiAqICAgLSAubm90Rm91bmRcbiAqXG4gKiBAcGFyYW0ge051bWJlcn0gc3RhdHVzXG4gKiBAYXBpIHByaXZhdGVcbiAqL1xuXG5SZXNwb25zZUJhc2UucHJvdG90eXBlLl9zZXRTdGF0dXNQcm9wZXJ0aWVzID0gZnVuY3Rpb24gKHN0YXR1cykge1xuICBjb25zdCB0eXBlID0gKHN0YXR1cyAvIDEwMCkgfCAwO1xuXG4gIC8vIHN0YXR1cyAvIGNsYXNzXG4gIHRoaXMuc3RhdHVzQ29kZSA9IHN0YXR1cztcbiAgdGhpcy5zdGF0dXMgPSB0aGlzLnN0YXR1c0NvZGU7XG4gIHRoaXMuc3RhdHVzVHlwZSA9IHR5cGU7XG5cbiAgLy8gYmFzaWNzXG4gIHRoaXMuaW5mbyA9IHR5cGUgPT09IDE7XG4gIHRoaXMub2sgPSB0eXBlID09PSAyO1xuICB0aGlzLnJlZGlyZWN0ID0gdHlwZSA9PT0gMztcbiAgdGhpcy5jbGllbnRFcnJvciA9IHR5cGUgPT09IDQ7XG4gIHRoaXMuc2VydmVyRXJyb3IgPSB0eXBlID09PSA1O1xuICB0aGlzLmVycm9yID0gdHlwZSA9PT0gNCB8fCB0eXBlID09PSA1ID8gdGhpcy50b0Vycm9yKCkgOiBmYWxzZTtcblxuICAvLyBzdWdhclxuICB0aGlzLmNyZWF0ZWQgPSBzdGF0dXMgPT09IDIwMTtcbiAgdGhpcy5hY2NlcHRlZCA9IHN0YXR1cyA9PT0gMjAyO1xuICB0aGlzLm5vQ29udGVudCA9IHN0YXR1cyA9PT0gMjA0O1xuICB0aGlzLmJhZFJlcXVlc3QgPSBzdGF0dXMgPT09IDQwMDtcbiAgdGhpcy51bmF1dGhvcml6ZWQgPSBzdGF0dXMgPT09IDQwMTtcbiAgdGhpcy5ub3RBY2NlcHRhYmxlID0gc3RhdHVzID09PSA0MDY7XG4gIHRoaXMuZm9yYmlkZGVuID0gc3RhdHVzID09PSA0MDM7XG4gIHRoaXMubm90Rm91bmQgPSBzdGF0dXMgPT09IDQwNDtcbiAgdGhpcy51bnByb2Nlc3NhYmxlRW50aXR5ID0gc3RhdHVzID09PSA0MjI7XG59O1xuIl19 /***/ }), -/* 129 */ +/* 146 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; +function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } + +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } + +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } + /** * Return the mime type for the given `str`. * @@ -18180,11 +20424,9 @@ ResponseBase.prototype._setStatusProperties = function(status){ * @return {String} * @api private */ - -exports.type = function(str){ +exports.type = function (str) { return str.split(/ *; */).shift(); }; - /** * Return header field parameters. * @@ -18193,17 +20435,31 @@ exports.type = function(str){ * @api private */ -exports.params = function(str){ - return str.split(/ *; */).reduce(function(obj, str){ - var parts = str.split(/ *= */); - var key = parts.shift(); - var val = parts.shift(); - if (key && val) obj[key] = val; - return obj; - }, {}); -}; +exports.params = function (val) { + var obj = {}; + + var _iterator = _createForOfIteratorHelper(val.split(/ *; */)), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var str = _step.value; + var parts = str.split(/ *= */); + var key = parts.shift(); + + var _val = parts.shift(); + + if (key && _val) obj[key] = _val; + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + return obj; +}; /** * Parse Link header fields. * @@ -18212,16 +20468,29 @@ exports.params = function(str){ * @api private */ -exports.parseLinks = function(str){ - return str.split(/ *, */).reduce(function(obj, str){ - var parts = str.split(/ *; */); - var url = parts[0].slice(1, -1); - var rel = parts[1].split(/ *= */)[1].slice(1, -1); - obj[rel] = url; - return obj; - }, {}); -}; +exports.parseLinks = function (val) { + var obj = {}; + + var _iterator2 = _createForOfIteratorHelper(val.split(/ *, */)), + _step2; + + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var str = _step2.value; + var parts = str.split(/ *; */); + var url = parts[0].slice(1, -1); + var rel = parts[1].split(/ *= */)[1].slice(1, -1); + obj[rel] = url; + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + + return obj; +}; /** * Strip content related fields from `header`. * @@ -18230,48 +20499,72 @@ exports.parseLinks = function(str){ * @api private */ -exports.cleanHeader = function(header, changesOrigin){ + +exports.cleanHeader = function (header, changesOrigin) { delete header['content-type']; delete header['content-length']; delete header['transfer-encoding']; - delete header['host']; - // secuirty + delete header.host; // secuirty + if (changesOrigin) { - delete header['authorization']; - delete header['cookie']; + delete header.authorization; + delete header.cookie; } + return header; }; - +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy91dGlscy5qcyJdLCJuYW1lcyI6WyJleHBvcnRzIiwidHlwZSIsInN0ciIsInNwbGl0Iiwic2hpZnQiLCJwYXJhbXMiLCJ2YWwiLCJvYmoiLCJwYXJ0cyIsImtleSIsInBhcnNlTGlua3MiLCJ1cmwiLCJzbGljZSIsInJlbCIsImNsZWFuSGVhZGVyIiwiaGVhZGVyIiwiY2hhbmdlc09yaWdpbiIsImhvc3QiLCJhdXRob3JpemF0aW9uIiwiY29va2llIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBOzs7Ozs7O0FBUUFBLE9BQU8sQ0FBQ0MsSUFBUixHQUFlLFVBQUNDLEdBQUQ7QUFBQSxTQUFTQSxHQUFHLENBQUNDLEtBQUosQ0FBVSxPQUFWLEVBQW1CQyxLQUFuQixFQUFUO0FBQUEsQ0FBZjtBQUVBOzs7Ozs7Ozs7QUFRQUosT0FBTyxDQUFDSyxNQUFSLEdBQWlCLFVBQUNDLEdBQUQsRUFBUztBQUN4QixNQUFNQyxHQUFHLEdBQUcsRUFBWjs7QUFEd0IsNkNBRU5ELEdBQUcsQ0FBQ0gsS0FBSixDQUFVLE9BQVYsQ0FGTTtBQUFBOztBQUFBO0FBRXhCLHdEQUFzQztBQUFBLFVBQTNCRCxHQUEyQjtBQUNwQyxVQUFNTSxLQUFLLEdBQUdOLEdBQUcsQ0FBQ0MsS0FBSixDQUFVLE9BQVYsQ0FBZDtBQUNBLFVBQU1NLEdBQUcsR0FBR0QsS0FBSyxDQUFDSixLQUFOLEVBQVo7O0FBQ0EsVUFBTUUsSUFBRyxHQUFHRSxLQUFLLENBQUNKLEtBQU4sRUFBWjs7QUFFQSxVQUFJSyxHQUFHLElBQUlILElBQVgsRUFBZ0JDLEdBQUcsQ0FBQ0UsR0FBRCxDQUFILEdBQVdILElBQVg7QUFDakI7QUFSdUI7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFVeEIsU0FBT0MsR0FBUDtBQUNELENBWEQ7QUFhQTs7Ozs7Ozs7O0FBUUFQLE9BQU8sQ0FBQ1UsVUFBUixHQUFxQixVQUFDSixHQUFELEVBQVM7QUFDNUIsTUFBTUMsR0FBRyxHQUFHLEVBQVo7O0FBRDRCLDhDQUVWRCxHQUFHLENBQUNILEtBQUosQ0FBVSxPQUFWLENBRlU7QUFBQTs7QUFBQTtBQUU1QiwyREFBc0M7QUFBQSxVQUEzQkQsR0FBMkI7QUFDcEMsVUFBTU0sS0FBSyxHQUFHTixHQUFHLENBQUNDLEtBQUosQ0FBVSxPQUFWLENBQWQ7QUFDQSxVQUFNUSxHQUFHLEdBQUdILEtBQUssQ0FBQyxDQUFELENBQUwsQ0FBU0ksS0FBVCxDQUFlLENBQWYsRUFBa0IsQ0FBQyxDQUFuQixDQUFaO0FBQ0EsVUFBTUMsR0FBRyxHQUFHTCxLQUFLLENBQUMsQ0FBRCxDQUFMLENBQVNMLEtBQVQsQ0FBZSxPQUFmLEVBQXdCLENBQXhCLEVBQTJCUyxLQUEzQixDQUFpQyxDQUFqQyxFQUFvQyxDQUFDLENBQXJDLENBQVo7QUFDQUwsTUFBQUEsR0FBRyxDQUFDTSxHQUFELENBQUgsR0FBV0YsR0FBWDtBQUNEO0FBUDJCO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBUzVCLFNBQU9KLEdBQVA7QUFDRCxDQVZEO0FBWUE7Ozs7Ozs7OztBQVFBUCxPQUFPLENBQUNjLFdBQVIsR0FBc0IsVUFBQ0MsTUFBRCxFQUFTQyxhQUFULEVBQTJCO0FBQy9DLFNBQU9ELE1BQU0sQ0FBQyxjQUFELENBQWI7QUFDQSxTQUFPQSxNQUFNLENBQUMsZ0JBQUQsQ0FBYjtBQUNBLFNBQU9BLE1BQU0sQ0FBQyxtQkFBRCxDQUFiO0FBQ0EsU0FBT0EsTUFBTSxDQUFDRSxJQUFkLENBSitDLENBSy9DOztBQUNBLE1BQUlELGFBQUosRUFBbUI7QUFDakIsV0FBT0QsTUFBTSxDQUFDRyxhQUFkO0FBQ0EsV0FBT0gsTUFBTSxDQUFDSSxNQUFkO0FBQ0Q7O0FBRUQsU0FBT0osTUFBUDtBQUNELENBWkQiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJldHVybiB0aGUgbWltZSB0eXBlIGZvciB0aGUgZ2l2ZW4gYHN0cmAuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IHN0clxuICogQHJldHVybiB7U3RyaW5nfVxuICogQGFwaSBwcml2YXRlXG4gKi9cblxuZXhwb3J0cy50eXBlID0gKHN0cikgPT4gc3RyLnNwbGl0KC8gKjsgKi8pLnNoaWZ0KCk7XG5cbi8qKlxuICogUmV0dXJuIGhlYWRlciBmaWVsZCBwYXJhbWV0ZXJzLlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHJcbiAqIEByZXR1cm4ge09iamVjdH1cbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cbmV4cG9ydHMucGFyYW1zID0gKHZhbCkgPT4ge1xuICBjb25zdCBvYmogPSB7fTtcbiAgZm9yIChjb25zdCBzdHIgb2YgdmFsLnNwbGl0KC8gKjsgKi8pKSB7XG4gICAgY29uc3QgcGFydHMgPSBzdHIuc3BsaXQoLyAqPSAqLyk7XG4gICAgY29uc3Qga2V5ID0gcGFydHMuc2hpZnQoKTtcbiAgICBjb25zdCB2YWwgPSBwYXJ0cy5zaGlmdCgpO1xuXG4gICAgaWYgKGtleSAmJiB2YWwpIG9ialtrZXldID0gdmFsO1xuICB9XG5cbiAgcmV0dXJuIG9iajtcbn07XG5cbi8qKlxuICogUGFyc2UgTGluayBoZWFkZXIgZmllbGRzLlxuICpcbiAqIEBwYXJhbSB7U3RyaW5nfSBzdHJcbiAqIEByZXR1cm4ge09iamVjdH1cbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cbmV4cG9ydHMucGFyc2VMaW5rcyA9ICh2YWwpID0+IHtcbiAgY29uc3Qgb2JqID0ge307XG4gIGZvciAoY29uc3Qgc3RyIG9mIHZhbC5zcGxpdCgvICosICovKSkge1xuICAgIGNvbnN0IHBhcnRzID0gc3RyLnNwbGl0KC8gKjsgKi8pO1xuICAgIGNvbnN0IHVybCA9IHBhcnRzWzBdLnNsaWNlKDEsIC0xKTtcbiAgICBjb25zdCByZWwgPSBwYXJ0c1sxXS5zcGxpdCgvICo9ICovKVsxXS5zbGljZSgxLCAtMSk7XG4gICAgb2JqW3JlbF0gPSB1cmw7XG4gIH1cblxuICByZXR1cm4gb2JqO1xufTtcblxuLyoqXG4gKiBTdHJpcCBjb250ZW50IHJlbGF0ZWQgZmllbGRzIGZyb20gYGhlYWRlcmAuXG4gKlxuICogQHBhcmFtIHtPYmplY3R9IGhlYWRlclxuICogQHJldHVybiB7T2JqZWN0fSBoZWFkZXJcbiAqIEBhcGkgcHJpdmF0ZVxuICovXG5cbmV4cG9ydHMuY2xlYW5IZWFkZXIgPSAoaGVhZGVyLCBjaGFuZ2VzT3JpZ2luKSA9PiB7XG4gIGRlbGV0ZSBoZWFkZXJbJ2NvbnRlbnQtdHlwZSddO1xuICBkZWxldGUgaGVhZGVyWydjb250ZW50LWxlbmd0aCddO1xuICBkZWxldGUgaGVhZGVyWyd0cmFuc2Zlci1lbmNvZGluZyddO1xuICBkZWxldGUgaGVhZGVyLmhvc3Q7XG4gIC8vIHNlY3VpcnR5XG4gIGlmIChjaGFuZ2VzT3JpZ2luKSB7XG4gICAgZGVsZXRlIGhlYWRlci5hdXRob3JpemF0aW9uO1xuICAgIGRlbGV0ZSBoZWFkZXIuY29va2llO1xuICB9XG5cbiAgcmV0dXJuIGhlYWRlcjtcbn07XG4iXX0= /***/ }), -/* 130 */ -/***/ (function(module, exports) { +/* 147 */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } + +function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } + +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } + +function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); } + +function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } + +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } function Agent() { this._defaults = []; } -["use", "on", "once", "set", "query", "type", "accept", "auth", "withCredentials", "sortQuery", "retry", "ok", "redirects", - "timeout", "buffer", "serialize", "parse", "ca", "key", "pfx", "cert"].forEach(function(fn) { - /** Default setting for all requests from this agent */ - Agent.prototype[fn] = function(/*varargs*/) { - this._defaults.push({fn:fn, arguments:arguments}); +['use', 'on', 'once', 'set', 'query', 'type', 'accept', 'auth', 'withCredentials', 'sortQuery', 'retry', 'ok', 'redirects', 'timeout', 'buffer', 'serialize', 'parse', 'ca', 'key', 'pfx', 'cert', 'disableTLSCerts'].forEach(function (fn) { + // Default setting for all requests from this agent + Agent.prototype[fn] = function () { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + this._defaults.push({ + fn: fn, + args: args + }); + return this; - } + }; }); -Agent.prototype._setDefaults = function(req) { - this._defaults.forEach(function(def) { - req[def.fn].apply(req, def.arguments); - }); +Agent.prototype._setDefaults = function (req) { + this._defaults.forEach(function (def) { + req[def.fn].apply(req, _toConsumableArray(def.args)); + }); }; module.exports = Agent; - +//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9hZ2VudC1iYXNlLmpzIl0sIm5hbWVzIjpbIkFnZW50IiwiX2RlZmF1bHRzIiwiZm9yRWFjaCIsImZuIiwicHJvdG90eXBlIiwiYXJncyIsInB1c2giLCJfc2V0RGVmYXVsdHMiLCJyZXEiLCJkZWYiLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBLFNBQVNBLEtBQVQsR0FBaUI7QUFDZixPQUFLQyxTQUFMLEdBQWlCLEVBQWpCO0FBQ0Q7O0FBRUQsQ0FDRSxLQURGLEVBRUUsSUFGRixFQUdFLE1BSEYsRUFJRSxLQUpGLEVBS0UsT0FMRixFQU1FLE1BTkYsRUFPRSxRQVBGLEVBUUUsTUFSRixFQVNFLGlCQVRGLEVBVUUsV0FWRixFQVdFLE9BWEYsRUFZRSxJQVpGLEVBYUUsV0FiRixFQWNFLFNBZEYsRUFlRSxRQWZGLEVBZ0JFLFdBaEJGLEVBaUJFLE9BakJGLEVBa0JFLElBbEJGLEVBbUJFLEtBbkJGLEVBb0JFLEtBcEJGLEVBcUJFLE1BckJGLEVBc0JFLGlCQXRCRixFQXVCRUMsT0F2QkYsQ0F1QlUsVUFBQ0MsRUFBRCxFQUFRO0FBQ2hCO0FBQ0FILEVBQUFBLEtBQUssQ0FBQ0ksU0FBTixDQUFnQkQsRUFBaEIsSUFBc0IsWUFBbUI7QUFBQSxzQ0FBTkUsSUFBTTtBQUFOQSxNQUFBQSxJQUFNO0FBQUE7O0FBQ3ZDLFNBQUtKLFNBQUwsQ0FBZUssSUFBZixDQUFvQjtBQUFFSCxNQUFBQSxFQUFFLEVBQUZBLEVBQUY7QUFBTUUsTUFBQUEsSUFBSSxFQUFKQTtBQUFOLEtBQXBCOztBQUNBLFdBQU8sSUFBUDtBQUNELEdBSEQ7QUFJRCxDQTdCRDs7QUErQkFMLEtBQUssQ0FBQ0ksU0FBTixDQUFnQkcsWUFBaEIsR0FBK0IsVUFBVUMsR0FBVixFQUFlO0FBQzVDLE9BQUtQLFNBQUwsQ0FBZUMsT0FBZixDQUF1QixVQUFDTyxHQUFELEVBQVM7QUFDOUJELElBQUFBLEdBQUcsQ0FBQ0MsR0FBRyxDQUFDTixFQUFMLENBQUgsT0FBQUssR0FBRyxxQkFBWUMsR0FBRyxDQUFDSixJQUFoQixFQUFIO0FBQ0QsR0FGRDtBQUdELENBSkQ7O0FBTUFLLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQlgsS0FBakIiLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBBZ2VudCgpIHtcbiAgdGhpcy5fZGVmYXVsdHMgPSBbXTtcbn1cblxuW1xuICAndXNlJyxcbiAgJ29uJyxcbiAgJ29uY2UnLFxuICAnc2V0JyxcbiAgJ3F1ZXJ5JyxcbiAgJ3R5cGUnLFxuICAnYWNjZXB0JyxcbiAgJ2F1dGgnLFxuICAnd2l0aENyZWRlbnRpYWxzJyxcbiAgJ3NvcnRRdWVyeScsXG4gICdyZXRyeScsXG4gICdvaycsXG4gICdyZWRpcmVjdHMnLFxuICAndGltZW91dCcsXG4gICdidWZmZXInLFxuICAnc2VyaWFsaXplJyxcbiAgJ3BhcnNlJyxcbiAgJ2NhJyxcbiAgJ2tleScsXG4gICdwZngnLFxuICAnY2VydCcsXG4gICdkaXNhYmxlVExTQ2VydHMnXG5dLmZvckVhY2goKGZuKSA9PiB7XG4gIC8vIERlZmF1bHQgc2V0dGluZyBmb3IgYWxsIHJlcXVlc3RzIGZyb20gdGhpcyBhZ2VudFxuICBBZ2VudC5wcm90b3R5cGVbZm5dID0gZnVuY3Rpb24gKC4uLmFyZ3MpIHtcbiAgICB0aGlzLl9kZWZhdWx0cy5wdXNoKHsgZm4sIGFyZ3MgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH07XG59KTtcblxuQWdlbnQucHJvdG90eXBlLl9zZXREZWZhdWx0cyA9IGZ1bmN0aW9uIChyZXEpIHtcbiAgdGhpcy5fZGVmYXVsdHMuZm9yRWFjaCgoZGVmKSA9PiB7XG4gICAgcmVxW2RlZi5mbl0oLi4uZGVmLmFyZ3MpO1xuICB9KTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0gQWdlbnQ7XG4iXX0= /***/ }), -/* 131 */ +/* 148 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -18294,8 +20587,6 @@ var _createClass2 = _interopRequireDefault(__webpack_require__(6)); var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); -var _isomorphicWebcrypto = _interopRequireDefault(__webpack_require__(133)); - function concatArrayBuffer(ab1, ab2) { var tmp = new Uint8Array(ab1.byteLength + ab2.byteLength); tmp.set(new Uint8Array(ab1), 0); @@ -18309,6 +20600,11 @@ var WebCryptography = function () { } (0, _createClass2["default"])(WebCryptography, [{ + key: "algo", + get: function get() { + return 'aes-256-cbc'; + } + }, { key: "encrypt", value: function () { var _encrypt = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(key, input) { @@ -18470,21 +20766,12 @@ var WebCryptography = function () { case 8: abPlaindata = _context4.sent; - - if (!(file.data instanceof ArrayBuffer)) { - _context4.next = 13; - break; - } - return _context4.abrupt("return", File.create({ name: file.name, data: abPlaindata })); - case 13: - throw new Error('Cannot decrypt this file. In browser environment file decryption supports only ArrayBuffer.'); - - case 14: + case 10: case "end": return _context4.stop(); } @@ -18509,12 +20796,12 @@ var WebCryptography = function () { case 0: bKey = Buffer.from(key); _context5.next = 3; - return _isomorphicWebcrypto["default"].subtle.digest('SHA-256', bKey.buffer); + return crypto.subtle.digest('SHA-256', bKey.buffer); case 3: abHash = _context5.sent; abKey = Buffer.from(Buffer.from(abHash).toString('hex').slice(0, 32), 'utf8').buffer; - return _context5.abrupt("return", _isomorphicWebcrypto["default"].subtle.importKey('raw', abKey, 'AES-CBC', true, ['encrypt', 'decrypt'])); + return _context5.abrupt("return", crypto.subtle.importKey('raw', abKey, 'AES-CBC', true, ['encrypt', 'decrypt'])); case 6: case "end": @@ -18539,11 +20826,11 @@ var WebCryptography = function () { while (1) { switch (_context6.prev = _context6.next) { case 0: - abIv = _isomorphicWebcrypto["default"].getRandomValues(new Uint8Array(16)); + abIv = crypto.getRandomValues(new Uint8Array(16)); _context6.t0 = concatArrayBuffer; _context6.t1 = abIv.buffer; _context6.next = 5; - return _isomorphicWebcrypto["default"].subtle.encrypt({ + return crypto.subtle.encrypt({ name: 'AES-CBC', iv: abIv }, key, plaintext); @@ -18576,7 +20863,7 @@ var WebCryptography = function () { switch (_context7.prev = _context7.next) { case 0: abIv = ciphertext.slice(0, 16); - return _context7.abrupt("return", _isomorphicWebcrypto["default"].subtle.decrypt({ + return _context7.abrupt("return", crypto.subtle.decrypt({ name: 'AES-CBC', iv: abIv }, key, ciphertext.slice(16))); @@ -18604,10 +20891,10 @@ var WebCryptography = function () { while (1) { switch (_context8.prev = _context8.next) { case 0: - abIv = _isomorphicWebcrypto["default"].getRandomValues(new Uint8Array(16)); + abIv = crypto.getRandomValues(new Uint8Array(16)); abPlaintext = Buffer.from(plaintext).buffer; _context8.next = 4; - return _isomorphicWebcrypto["default"].subtle.encrypt({ + return crypto.subtle.encrypt({ name: 'AES-CBC', iv: abIv }, key, abPlaintext); @@ -18644,7 +20931,7 @@ var WebCryptography = function () { abIv = abCiphertext.slice(0, 16); abPayload = abCiphertext.slice(16); _context9.next = 5; - return _isomorphicWebcrypto["default"].subtle.decrypt({ + return crypto.subtle.decrypt({ name: 'AES-CBC', iv: abIv }, key, abPayload); @@ -18667,11 +20954,6 @@ var WebCryptography = function () { return decryptString; }() - }, { - key: "algo", - get: function get() { - return 'aes-256-cbc'; - } }]); return WebCryptography; }(); @@ -18679,10 +20961,10 @@ var WebCryptography = function () { exports["default"] = WebCryptography; (0, _defineProperty2["default"])(WebCryptography, "IV_LENGTH", 16); module.exports = exports.default; -/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(21).Buffer)) +/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(24).Buffer)) /***/ }), -/* 132 */ +/* 149 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -18705,18 +20987,11 @@ var _createClass2 = _interopRequireDefault(__webpack_require__(6)); var _defineProperty2 = _interopRequireDefault(__webpack_require__(4)); -var _ = __webpack_require__(25); +var _ = __webpack_require__(28); var _class, _temp; var PubNubFile = (_temp = _class = function () { - (0, _createClass2["default"])(PubNubFile, null, [{ - key: "create", - value: function create(config) { - return new this(config); - } - }]); - function PubNubFile(config) { (0, _classCallCheck2["default"])(this, PubNubFile); (0, _defineProperty2["default"])(this, "data", void 0); @@ -18942,6 +21217,11 @@ var PubNubFile = (_temp = _class = function () { return toFile; }() + }], [{ + key: "create", + value: function create(config) { + return new this(config); + } }]); return PubNubFile; }(), (0, _defineProperty2["default"])(_class, "supportsFile", typeof File !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsBlob", typeof Blob !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsArrayBuffer", typeof ArrayBuffer !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsBuffer", false), (0, _defineProperty2["default"])(_class, "supportsStream", false), (0, _defineProperty2["default"])(_class, "supportsString", true), (0, _defineProperty2["default"])(_class, "supportsEncryptFile", true), (0, _defineProperty2["default"])(_class, "supportsFileUri", false), _temp); @@ -18949,633 +21229,6 @@ var _default = PubNubFile; exports["default"] = _default; module.exports = exports.default; -/***/ }), -/* 133 */ -/***/ (function(__webpack_module__, __webpack_exports__, __webpack_require__) { - -"use strict"; -// ESM COMPAT FLAG -__webpack_require__.r(__webpack_exports__); - -// CONCATENATED MODULE: ./node_modules/isomorphic-webcrypto/src/webcrypto-shim.mjs -/** - * @file Web Cryptography API shim - * @author Artem S Vybornov - * @license MIT - */ -(function (global, factory) { - if (typeof define === 'function' && define.amd) { - // AMD. Register as an anonymous module. - define([], function () { - return factory(global); - }); - } else if (typeof module === 'object' && module.exports) { - // CommonJS-like environments that support module.exports - module.exports = factory(global); - } else { - factory(global); - } -}(typeof self !== 'undefined' ? self : undefined, function (global) { - 'use strict'; - - if ( typeof Promise !== 'function' ) - throw "Promise support required"; - - var _crypto = global.crypto || global.msCrypto; - if ( !_crypto ) return; - - var _subtle = _crypto.subtle || _crypto.webkitSubtle; - if ( !_subtle ) return; - - var _Crypto = global.Crypto || _crypto.constructor || Object, - _SubtleCrypto = global.SubtleCrypto || _subtle.constructor || Object, - _CryptoKey = global.CryptoKey || global.Key || Object; - - var isEdge = global.navigator.userAgent.indexOf('Edge/') > -1; - var isIE = !!global.msCrypto && !isEdge; - var isWebkit = !_crypto.subtle && !!_crypto.webkitSubtle; - if ( !isIE && !isWebkit ) return; - - function s2a ( s ) { - return btoa(s).replace(/\=+$/, '').replace(/\+/g, '-').replace(/\//g, '_'); - } - - function a2s ( s ) { - s += '===', s = s.slice( 0, -s.length % 4 ); - return atob( s.replace(/-/g, '+').replace(/_/g, '/') ); - } - - function s2b ( s ) { - var b = new Uint8Array(s.length); - for ( var i = 0; i < s.length; i++ ) b[i] = s.charCodeAt(i); - return b; - } - - function b2s ( b ) { - if ( b instanceof ArrayBuffer ) b = new Uint8Array(b); - return String.fromCharCode.apply( String, b ); - } - - function alg ( a ) { - var r = { 'name': (a.name || a || '').toUpperCase().replace('V','v') }; - switch ( r.name ) { - case 'SHA-1': - case 'SHA-256': - case 'SHA-384': - case 'SHA-512': - break; - case 'AES-CBC': - case 'AES-GCM': - case 'AES-KW': - if ( a.length ) r['length'] = a.length; - break; - case 'HMAC': - if ( a.hash ) r['hash'] = alg(a.hash); - if ( a.length ) r['length'] = a.length; - break; - case 'RSAES-PKCS1-v1_5': - if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent); - if ( a.modulusLength ) r['modulusLength'] = a.modulusLength; - break; - case 'RSASSA-PKCS1-v1_5': - case 'RSA-OAEP': - if ( a.hash ) r['hash'] = alg(a.hash); - if ( a.publicExponent ) r['publicExponent'] = new Uint8Array(a.publicExponent); - if ( a.modulusLength ) r['modulusLength'] = a.modulusLength; - break; - default: - throw new SyntaxError("Bad algorithm name"); - } - return r; - }; - - function jwkAlg ( a ) { - return { - 'HMAC': { - 'SHA-1': 'HS1', - 'SHA-256': 'HS256', - 'SHA-384': 'HS384', - 'SHA-512': 'HS512', - }, - 'RSASSA-PKCS1-v1_5': { - 'SHA-1': 'RS1', - 'SHA-256': 'RS256', - 'SHA-384': 'RS384', - 'SHA-512': 'RS512', - }, - 'RSAES-PKCS1-v1_5': { - '': 'RSA1_5', - }, - 'RSA-OAEP': { - 'SHA-1': 'RSA-OAEP', - 'SHA-256': 'RSA-OAEP-256', - }, - 'AES-KW': { - '128': 'A128KW', - '192': 'A192KW', - '256': 'A256KW', - }, - 'AES-GCM': { - '128': 'A128GCM', - '192': 'A192GCM', - '256': 'A256GCM', - }, - 'AES-CBC': { - '128': 'A128CBC', - '192': 'A192CBC', - '256': 'A256CBC', - }, - }[a.name][ ( a.hash || {} ).name || a.length || '' ]; - } - - function b2jwk ( k ) { - if ( k instanceof ArrayBuffer || k instanceof Uint8Array ) k = JSON.parse( decodeURIComponent( escape( b2s(k) ) ) ); - var jwk = { 'kty': k.kty, 'alg': k.alg, 'ext': k.ext || k.extractable }; - switch ( jwk.kty ) { - case 'oct': - jwk.k = k.k; - case 'RSA': - [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi', 'oth' ].forEach( function ( x ) { if ( x in k ) jwk[x] = k[x] } ); - break; - default: - throw new TypeError("Unsupported key type"); - } - return jwk; - } - - function jwk2b ( k ) { - var jwk = b2jwk(k); - if ( isIE ) jwk['extractable'] = jwk.ext, delete jwk.ext; - return s2b( unescape( encodeURIComponent( JSON.stringify(jwk) ) ) ).buffer; - } - - function pkcs2jwk ( k ) { - var info = b2der(k), prv = false; - if ( info.length > 2 ) prv = true, info.shift(); // remove version from PKCS#8 PrivateKeyInfo structure - var jwk = { 'ext': true }; - switch ( info[0][0] ) { - case '1.2.840.113549.1.1.1': - var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ], - rsaKey = b2der( info[1] ); - if ( prv ) rsaKey.shift(); // remove version from PKCS#1 RSAPrivateKey structure - for ( var i = 0; i < rsaKey.length; i++ ) { - if ( !rsaKey[i][0] ) rsaKey[i] = rsaKey[i].subarray(1); - jwk[ rsaComp[i] ] = s2a( b2s( rsaKey[i] ) ); - } - jwk['kty'] = 'RSA'; - break; - default: - throw new TypeError("Unsupported key type"); - } - return jwk; - } - - function jwk2pkcs ( k ) { - var key, info = [ [ '', null ] ], prv = false; - switch ( k.kty ) { - case 'RSA': - var rsaComp = [ 'n', 'e', 'd', 'p', 'q', 'dp', 'dq', 'qi' ], - rsaKey = []; - for ( var i = 0; i < rsaComp.length; i++ ) { - if ( !( rsaComp[i] in k ) ) break; - var b = rsaKey[i] = s2b( a2s( k[ rsaComp[i] ] ) ); - if ( b[0] & 0x80 ) rsaKey[i] = new Uint8Array(b.length + 1), rsaKey[i].set( b, 1 ); - } - if ( rsaKey.length > 2 ) prv = true, rsaKey.unshift( new Uint8Array([0]) ); // add version to PKCS#1 RSAPrivateKey structure - info[0][0] = '1.2.840.113549.1.1.1'; - key = rsaKey; - break; - default: - throw new TypeError("Unsupported key type"); - } - info.push( new Uint8Array( der2b(key) ).buffer ); - if ( !prv ) info[1] = { 'tag': 0x03, 'value': info[1] }; - else info.unshift( new Uint8Array([0]) ); // add version to PKCS#8 PrivateKeyInfo structure - return new Uint8Array( der2b(info) ).buffer; - } - - var oid2str = { 'KoZIhvcNAQEB': '1.2.840.113549.1.1.1' }, - str2oid = { '1.2.840.113549.1.1.1': 'KoZIhvcNAQEB' }; - - function b2der ( buf, ctx ) { - if ( buf instanceof ArrayBuffer ) buf = new Uint8Array(buf); - if ( !ctx ) ctx = { pos: 0, end: buf.length }; - - if ( ctx.end - ctx.pos < 2 || ctx.end > buf.length ) throw new RangeError("Malformed DER"); - - var tag = buf[ctx.pos++], - len = buf[ctx.pos++]; - - if ( len >= 0x80 ) { - len &= 0x7f; - if ( ctx.end - ctx.pos < len ) throw new RangeError("Malformed DER"); - for ( var xlen = 0; len--; ) xlen <<= 8, xlen |= buf[ctx.pos++]; - len = xlen; - } - - if ( ctx.end - ctx.pos < len ) throw new RangeError("Malformed DER"); - - var rv; - - switch ( tag ) { - case 0x02: // Universal Primitive INTEGER - rv = buf.subarray( ctx.pos, ctx.pos += len ); - break; - case 0x03: // Universal Primitive BIT STRING - if ( buf[ctx.pos++] ) throw new Error( "Unsupported bit string" ); - len--; - case 0x04: // Universal Primitive OCTET STRING - rv = new Uint8Array( buf.subarray( ctx.pos, ctx.pos += len ) ).buffer; - break; - case 0x05: // Universal Primitive NULL - rv = null; - break; - case 0x06: // Universal Primitive OBJECT IDENTIFIER - var oid = btoa( b2s( buf.subarray( ctx.pos, ctx.pos += len ) ) ); - if ( !( oid in oid2str ) ) throw new Error( "Unsupported OBJECT ID " + oid ); - rv = oid2str[oid]; - break; - case 0x30: // Universal Constructed SEQUENCE - rv = []; - for ( var end = ctx.pos + len; ctx.pos < end; ) rv.push( b2der( buf, ctx ) ); - break; - default: - throw new Error( "Unsupported DER tag 0x" + tag.toString(16) ); - } - - return rv; - } - - function der2b ( val, buf ) { - if ( !buf ) buf = []; - - var tag = 0, len = 0, - pos = buf.length + 2; - - buf.push( 0, 0 ); // placeholder - - if ( val instanceof Uint8Array ) { // Universal Primitive INTEGER - tag = 0x02, len = val.length; - for ( var i = 0; i < len; i++ ) buf.push( val[i] ); - } - else if ( val instanceof ArrayBuffer ) { // Universal Primitive OCTET STRING - tag = 0x04, len = val.byteLength, val = new Uint8Array(val); - for ( var i = 0; i < len; i++ ) buf.push( val[i] ); - } - else if ( val === null ) { // Universal Primitive NULL - tag = 0x05, len = 0; - } - else if ( typeof val === 'string' && val in str2oid ) { // Universal Primitive OBJECT IDENTIFIER - var oid = s2b( atob( str2oid[val] ) ); - tag = 0x06, len = oid.length; - for ( var i = 0; i < len; i++ ) buf.push( oid[i] ); - } - else if ( val instanceof Array ) { // Universal Constructed SEQUENCE - for ( var i = 0; i < val.length; i++ ) der2b( val[i], buf ); - tag = 0x30, len = buf.length - pos; - } - else if ( typeof val === 'object' && val.tag === 0x03 && val.value instanceof ArrayBuffer ) { // Tag hint - val = new Uint8Array(val.value), tag = 0x03, len = val.byteLength; - buf.push(0); for ( var i = 0; i < len; i++ ) buf.push( val[i] ); - len++; - } - else { - throw new Error( "Unsupported DER value " + val ); - } - - if ( len >= 0x80 ) { - var xlen = len, len = 4; - buf.splice( pos, 0, (xlen >> 24) & 0xff, (xlen >> 16) & 0xff, (xlen >> 8) & 0xff, xlen & 0xff ); - while ( len > 1 && !(xlen >> 24) ) xlen <<= 8, len--; - if ( len < 4 ) buf.splice( pos, 4 - len ); - len |= 0x80; - } - - buf.splice( pos - 2, 2, tag, len ); - - return buf; - } - - function CryptoKey ( key, alg, ext, use ) { - Object.defineProperties( this, { - _key: { - value: key - }, - type: { - value: key.type, - enumerable: true, - }, - extractable: { - value: (ext === undefined) ? key.extractable : ext, - enumerable: true, - }, - algorithm: { - value: (alg === undefined) ? key.algorithm : alg, - enumerable: true, - }, - usages: { - value: (use === undefined) ? key.usages : use, - enumerable: true, - }, - }); - } - - function isPubKeyUse ( u ) { - return u === 'verify' || u === 'encrypt' || u === 'wrapKey'; - } - - function isPrvKeyUse ( u ) { - return u === 'sign' || u === 'decrypt' || u === 'unwrapKey'; - } - - [ 'generateKey', 'importKey', 'unwrapKey' ] - .forEach( function ( m ) { - var _fn = _subtle[m]; - - _subtle[m] = function ( a, b, c ) { - var args = [].slice.call(arguments), - ka, kx, ku; - - switch ( m ) { - case 'generateKey': - ka = alg(a), kx = b, ku = c; - break; - case 'importKey': - ka = alg(c), kx = args[3], ku = args[4]; - if ( a === 'jwk' ) { - b = b2jwk(b); - if ( !b.alg ) b.alg = jwkAlg(ka); - if ( !b.key_ops ) b.key_ops = ( b.kty !== 'oct' ) ? ( 'd' in b ) ? ku.filter(isPrvKeyUse) : ku.filter(isPubKeyUse) : ku.slice(); - args[1] = jwk2b(b); - } - break; - case 'unwrapKey': - ka = args[4], kx = args[5], ku = args[6]; - args[2] = c._key; - break; - } - - if ( m === 'generateKey' && ka.name === 'HMAC' && ka.hash ) { - ka.length = ka.length || { 'SHA-1': 512, 'SHA-256': 512, 'SHA-384': 1024, 'SHA-512': 1024 }[ka.hash.name]; - return _subtle.importKey( 'raw', _crypto.getRandomValues( new Uint8Array( (ka.length+7)>>3 ) ), ka, kx, ku ); - } - - if ( isWebkit && m === 'generateKey' && ka.name === 'RSASSA-PKCS1-v1_5' && ( !ka.modulusLength || ka.modulusLength >= 2048 ) ) { - a = alg(a), a.name = 'RSAES-PKCS1-v1_5', delete a.hash; - return _subtle.generateKey( a, true, [ 'encrypt', 'decrypt' ] ) - .then( function ( k ) { - return Promise.all([ - _subtle.exportKey( 'jwk', k.publicKey ), - _subtle.exportKey( 'jwk', k.privateKey ), - ]); - }) - .then( function ( keys ) { - keys[0].alg = keys[1].alg = jwkAlg(ka); - keys[0].key_ops = ku.filter(isPubKeyUse), keys[1].key_ops = ku.filter(isPrvKeyUse); - return Promise.all([ - _subtle.importKey( 'jwk', keys[0], ka, true, keys[0].key_ops ), - _subtle.importKey( 'jwk', keys[1], ka, kx, keys[1].key_ops ), - ]); - }) - .then( function ( keys ) { - return { - publicKey: keys[0], - privateKey: keys[1], - }; - }); - } - - if ( ( isWebkit || ( isIE && ( ka.hash || {} ).name === 'SHA-1' ) ) - && m === 'importKey' && a === 'jwk' && ka.name === 'HMAC' && b.kty === 'oct' ) { - return _subtle.importKey( 'raw', s2b( a2s(b.k) ), c, args[3], args[4] ); - } - - if ( isWebkit && m === 'importKey' && ( a === 'spki' || a === 'pkcs8' ) ) { - return _subtle.importKey( 'jwk', pkcs2jwk(b), c, args[3], args[4] ); - } - - if ( isIE && m === 'unwrapKey' ) { - return _subtle.decrypt( args[3], c, b ) - .then( function ( k ) { - return _subtle.importKey( a, k, args[4], args[5], args[6] ); - }); - } - - var op; - try { - op = _fn.apply( _subtle, args ); - } - catch ( e ) { - return Promise.reject(e); - } - - if ( isIE ) { - op = new Promise( function ( res, rej ) { - op.onabort = - op.onerror = function ( e ) { rej(e) }; - op.oncomplete = function ( r ) { res(r.target.result) }; - }); - } - - op = op.then( function ( k ) { - if ( ka.name === 'HMAC' ) { - if ( !ka.length ) ka.length = 8 * k.algorithm.length; - } - if ( ka.name.search('RSA') == 0 ) { - if ( !ka.modulusLength ) ka.modulusLength = (k.publicKey || k).algorithm.modulusLength; - if ( !ka.publicExponent ) ka.publicExponent = (k.publicKey || k).algorithm.publicExponent; - } - if ( k.publicKey && k.privateKey ) { - k = { - publicKey: new CryptoKey( k.publicKey, ka, kx, ku.filter(isPubKeyUse) ), - privateKey: new CryptoKey( k.privateKey, ka, kx, ku.filter(isPrvKeyUse) ), - }; - } - else { - k = new CryptoKey( k, ka, kx, ku ); - } - return k; - }); - - return op; - } - }); - - [ 'exportKey', 'wrapKey' ] - .forEach( function ( m ) { - var _fn = _subtle[m]; - - _subtle[m] = function ( a, b, c ) { - var args = [].slice.call(arguments); - - switch ( m ) { - case 'exportKey': - args[1] = b._key; - break; - case 'wrapKey': - args[1] = b._key, args[2] = c._key; - break; - } - - if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) ) - && m === 'exportKey' && a === 'jwk' && b.algorithm.name === 'HMAC' ) { - args[0] = 'raw'; - } - - if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) { - args[0] = 'jwk'; - } - - if ( isIE && m === 'wrapKey' ) { - return _subtle.exportKey( a, b ) - .then( function ( k ) { - if ( a === 'jwk' ) k = s2b( unescape( encodeURIComponent( JSON.stringify( b2jwk(k) ) ) ) ); - return _subtle.encrypt( args[3], c, k ); - }); - } - - var op; - try { - op = _fn.apply( _subtle, args ); - } - catch ( e ) { - return Promise.reject(e); - } - - if ( isIE ) { - op = new Promise( function ( res, rej ) { - op.onabort = - op.onerror = function ( e ) { rej(e) }; - op.oncomplete = function ( r ) { res(r.target.result) }; - }); - } - - if ( m === 'exportKey' && a === 'jwk' ) { - op = op.then( function ( k ) { - if ( ( isWebkit || ( isIE && ( b.algorithm.hash || {} ).name === 'SHA-1' ) ) - && b.algorithm.name === 'HMAC') { - return { 'kty': 'oct', 'alg': jwkAlg(b.algorithm), 'key_ops': b.usages.slice(), 'ext': true, 'k': s2a( b2s(k) ) }; - } - k = b2jwk(k); - if ( !k.alg ) k['alg'] = jwkAlg(b.algorithm); - if ( !k.key_ops ) k['key_ops'] = ( b.type === 'public' ) ? b.usages.filter(isPubKeyUse) : ( b.type === 'private' ) ? b.usages.filter(isPrvKeyUse) : b.usages.slice(); - return k; - }); - } - - if ( isWebkit && m === 'exportKey' && ( a === 'spki' || a === 'pkcs8' ) ) { - op = op.then( function ( k ) { - k = jwk2pkcs( b2jwk(k) ); - return k; - }); - } - - return op; - } - }); - - [ 'encrypt', 'decrypt', 'sign', 'verify' ] - .forEach( function ( m ) { - var _fn = _subtle[m]; - - _subtle[m] = function ( a, b, c, d ) { - if ( isIE && ( !c.byteLength || ( d && !d.byteLength ) ) ) - throw new Error("Empy input is not allowed"); - - var args = [].slice.call(arguments), - ka = alg(a); - - if ( isIE && m === 'decrypt' && ka.name === 'AES-GCM' ) { - var tl = a.tagLength >> 3; - args[2] = (c.buffer || c).slice( 0, c.byteLength - tl ), - a.tag = (c.buffer || c).slice( c.byteLength - tl ); - } - - args[1] = b._key; - - var op; - try { - op = _fn.apply( _subtle, args ); - } - catch ( e ) { - return Promise.reject(e); - } - - if ( isIE ) { - op = new Promise( function ( res, rej ) { - op.onabort = - op.onerror = function ( e ) { - rej(e); - }; - - op.oncomplete = function ( r ) { - var r = r.target.result; - - if ( m === 'encrypt' && r instanceof AesGcmEncryptResult ) { - var c = r.ciphertext, t = r.tag; - r = new Uint8Array( c.byteLength + t.byteLength ); - r.set( new Uint8Array(c), 0 ); - r.set( new Uint8Array(t), c.byteLength ); - r = r.buffer; - } - - res(r); - }; - }); - } - - return op; - } - }); - - if ( isIE ) { - var _digest = _subtle.digest; - - _subtle['digest'] = function ( a, b ) { - if ( !b.byteLength ) - throw new Error("Empy input is not allowed"); - - var op; - try { - op = _digest.call( _subtle, a, b ); - } - catch ( e ) { - return Promise.reject(e); - } - - op = new Promise( function ( res, rej ) { - op.onabort = - op.onerror = function ( e ) { rej(e) }; - op.oncomplete = function ( r ) { res(r.target.result) }; - }); - - return op; - }; - - global.crypto = Object.create( _crypto, { - getRandomValues: { value: function ( a ) { return _crypto.getRandomValues(a) } }, - subtle: { value: _subtle }, - }); - - global.CryptoKey = CryptoKey; - } - - if ( isWebkit ) { - _crypto.subtle = _subtle; - - global.Crypto = _Crypto; - global.SubtleCrypto = _SubtleCrypto; - global.CryptoKey = CryptoKey; - } -})); - - /* harmony default export */ var webcrypto_shim = ({}); // section modified by isomorphic-webcrypto build - -// CONCATENATED MODULE: ./node_modules/isomorphic-webcrypto/src/browser.mjs - -/* harmony default export */ var browser = __webpack_exports__["default"] = (window.crypto); - - /***/ }) /******/ ]); }); \ No newline at end of file diff --git a/dist/web/pubnub.min.js b/dist/web/pubnub.min.js index 230897400..ce8495804 100644 --- a/dist/web/pubnub.min.js +++ b/dist/web/pubnub.min.js @@ -1,15 +1,11 @@ -/*! 4.32.1 / Consumer */ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.PubNub=t():e.PubNub=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=27)}([function(e,t){e.exports=function(e){return e&&e.__esModule?e:{default:e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={PNTimeOperation:"PNTimeOperation",PNHistoryOperation:"PNHistoryOperation",PNDeleteMessagesOperation:"PNDeleteMessagesOperation",PNFetchMessagesOperation:"PNFetchMessagesOperation",PNMessageCounts:"PNMessageCountsOperation",PNSubscribeOperation:"PNSubscribeOperation",PNUnsubscribeOperation:"PNUnsubscribeOperation",PNPublishOperation:"PNPublishOperation",PNSignalOperation:"PNSignalOperation",PNAddMessageActionOperation:"PNAddActionOperation",PNRemoveMessageActionOperation:"PNRemoveMessageActionOperation",PNGetMessageActionsOperation:"PNGetMessageActionsOperation",PNCreateUserOperation:"PNCreateUserOperation",PNUpdateUserOperation:"PNUpdateUserOperation",PNDeleteUserOperation:"PNDeleteUserOperation",PNGetUserOperation:"PNGetUsersOperation",PNGetUsersOperation:"PNGetUsersOperation",PNCreateSpaceOperation:"PNCreateSpaceOperation",PNUpdateSpaceOperation:"PNUpdateSpaceOperation",PNDeleteSpaceOperation:"PNDeleteSpaceOperation",PNGetSpaceOperation:"PNGetSpacesOperation",PNGetSpacesOperation:"PNGetSpacesOperation",PNGetMembersOperation:"PNGetMembersOperation",PNUpdateMembersOperation:"PNUpdateMembersOperation",PNGetMembershipsOperation:"PNGetMembershipsOperation",PNUpdateMembershipsOperation:"PNUpdateMembershipsOperation",PNListFilesOperation:"PNListFilesOperation",PNGenerateUploadUrlOperation:"PNGenerateUploadUrlOperation",PNPublishFileOperation:"PNPublishFileOperation",PNGetFileUrlOperation:"PNGetFileUrlOperation",PNDownloadFileOperation:"PNDownloadFileOperation",PNGetAllUUIDMetadataOperation:"PNGetAllUUIDMetadataOperation",PNGetUUIDMetadataOperation:"PNGetUUIDMetadataOperation",PNSetUUIDMetadataOperation:"PNSetUUIDMetadataOperation",PNRemoveUUIDMetadataOperation:"PNRemoveUUIDMetadataOperation",PNGetAllChannelMetadataOperation:"PNGetAllChannelMetadataOperation",PNGetChannelMetadataOperation:"PNGetChannelMetadataOperation",PNSetChannelMetadataOperation:"PNSetChannelMetadataOperation",PNRemoveChannelMetadataOperation:"PNRemoveChannelMetadataOperation",PNSetMembersOperation:"PNSetMembersOperation",PNSetMembershipsOperation:"PNSetMembershipsOperation",PNPushNotificationEnabledChannelsOperation:"PNPushNotificationEnabledChannelsOperation",PNRemoveAllPushNotificationsOperation:"PNRemoveAllPushNotificationsOperation",PNWhereNowOperation:"PNWhereNowOperation",PNSetStateOperation:"PNSetStateOperation",PNHereNowOperation:"PNHereNowOperation",PNGetStateOperation:"PNGetStateOperation",PNHeartbeatOperation:"PNHeartbeatOperation",PNChannelGroupsOperation:"PNChannelGroupsOperation",PNRemoveGroupOperation:"PNRemoveGroupOperation",PNChannelsForGroupOperation:"PNChannelsForGroupOperation",PNAddChannelsToGroupOperation:"PNAddChannelsToGroupOperation",PNRemoveChannelsFromGroupOperation:"PNRemoveChannelsFromGroupOperation",PNAccessManagerGrant:"PNAccessManagerGrant",PNAccessManagerGrantToken:"PNAccessManagerGrantToken",PNAccessManagerAudit:"PNAccessManagerAudit"},e.exports=t.default},function(e,t,n){"use strict";e.exports={}},function(e,t,n){"use strict";(function(t){function n(e){return encodeURIComponent(e).replace(/[!~*'()]/g,(function(e){return"%".concat(e.charCodeAt(0).toString(16).toUpperCase())}))}function r(e){return function(e){var t=[];return Object.keys(e).forEach((function(e){return t.push(e)})),t}(e).sort()}var i="The Objects v1 API has been deprecated.\nYou can learn more about Objects v2 API at https://www.pubnub.com/docs/web-javascript/api-reference-objects.\nIf you have questions about the Objects v2 API or require additional help with migrating to the new data model, please contact PubNub Support at support@pubnub.com.";e.exports={signPamFromParams:function(e){return r(e).map((function(t){return"".concat(t,"=").concat(n(e[t]))})).join("&")},endsWith:function(e,t){return-1!==e.indexOf(t,this.length-t.length)},createPromise:function(){var e,t;return{promise:new Promise((function(n,r){e=n,t=r})),reject:t,fulfill:e}},encodeString:n,deprecated:function(e){return function(){var n,r;void 0!==t&&("test"!==(null===(n=t)||void 0===n||null===(r=n.env)||void 0===r?void 0:"production")&&console.warn(i));return e.apply(void 0,arguments)}}}}).call(this,n(39))},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function n(e,t){for(var n=0;n=20?this._presenceTimeout=e:(this._presenceTimeout=20,console.log("WARNING: Presence timeout is less than the minimum. Using minimum value: ",this._presenceTimeout)),this.setHeartbeatInterval(this._presenceTimeout/2-1),this}},{key:"setProxy",value:function(e){this.proxy=e}},{key:"getHeartbeatInterval",value:function(){return this._heartbeatInterval}},{key:"setHeartbeatInterval",value:function(e){return this._heartbeatInterval=e,this}},{key:"getSubscribeTimeout",value:function(){return this._subscribeRequestTimeout}},{key:"setSubscribeTimeout",value:function(e){return this._subscribeRequestTimeout=e,this}},{key:"getTransactionTimeout",value:function(){return this._transactionalRequestTimeout}},{key:"setTransactionTimeout",value:function(e){return this._transactionalRequestTimeout=e,this}},{key:"isSendBeaconEnabled",value:function(){return this._useSendBeacon}},{key:"setSendBeaconConfig",value:function(e){return this._useSendBeacon=e,this}},{key:"getVersion",value:function(){return"4.32.1"}},{key:"_addPnsdkSuffix",value:function(e,t){this._PNSDKSuffix[e]=t}},{key:"_getPnsdkSuffix",value:function(e){var t=this;return Object.keys(this._PNSDKSuffix).reduce((function(n,r){return n+e+t._PNSDKSuffix[r]}),"")}},{key:"_decideUUID",value:function(e){return e||(this._db&&this._db.get&&this._db.get("".concat(this.subscribeKey,"uuid"))?this._db.get("".concat(this.subscribeKey,"uuid")):"pn-".concat(s.default.createUUID()))}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){var r=n(77),i=n(78),o=n(79),a=n(81);e.exports=function(e,t){return r(e)||i(e,t)||o(e,t)||a()}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={PNNetworkUpCategory:"PNNetworkUpCategory",PNNetworkDownCategory:"PNNetworkDownCategory",PNNetworkIssuesCategory:"PNNetworkIssuesCategory",PNTimeoutCategory:"PNTimeoutCategory",PNBadRequestCategory:"PNBadRequestCategory",PNAccessDeniedCategory:"PNAccessDeniedCategory",PNUnknownCategory:"PNUnknownCategory",PNReconnectedCategory:"PNReconnectedCategory",PNConnectedCategory:"PNConnectedCategory",PNRequestMessageCountExceededCategory:"PNRequestMessageCountExceededCategory"},e.exports=t.default},function(e,t,n){e.exports=n(72)},function(e,t){function n(e,t,n,r,i,o,a){try{var s=e[o](a),u=s.value}catch(e){return void n(e)}s.done?t(u):Promise.resolve(u).then(r,i)}e.exports=function(e){return function(){var t=this,r=arguments;return new Promise((function(i,o){var a=e.apply(t,r);function s(e){n(a,i,o,s,u,"next",e)}function u(e){n(a,i,o,s,u,"throw",e)}s(void 0)}))}}},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},n(t)}e.exports=n},function(e,t,n){var r=n(15);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)}},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},n(t,r)}e.exports=n},function(e,t,n){var r=n(7),i=n(19);e.exports=function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?i(e):t}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(31)),o={createUUID:function(){return i.default.uuid?i.default.uuid():(0,i.default)()}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.createValidationError=b,t.generatePNSDK=k,t.signRequest=w,t.default=function(e,t){var n=e.networking,r=e.config,i=e.telemetryManager,o=l.default.createUUID(),a=null,s=null,u={};t.getOperation()===d.default.PNTimeOperation||t.getOperation()===d.default.PNChannelGroupsOperation?a=arguments.length<=2?void 0:arguments[2]:(u=arguments.length<=2?void 0:arguments[2],a=arguments.length<=3?void 0:arguments[3]);"undefined"==typeof Promise||a||(s=f.default.createPromise());var c=t.validateParams(e,u);if(c)return a?a(b(c)):s?(s.reject(new y("Validation failed, check status for details",b(c))),s.promise):void 0;var h,v=t.prepareParams(e,u),O=m(t,e,u),T={url:O,operation:t.getOperation(),timeout:t.getRequestTimeout(e),headers:t.getRequestHeaders?t.getRequestHeaders():{},ignoreBody:"function"==typeof t.ignoreBody&&t.ignoreBody(e),forceBuffered:"function"==typeof t.forceBuffered?t.forceBuffered(e,u):null};v.uuid=r.UUID,v.pnsdk=k(r);var S=i.operationsLatencyForRequest();Object.keys(S).length&&(v=g(g({},v),S));r.useInstanceId&&(v.instanceid=r.instanceId);r.useRequestId&&(v.requestid=o);if(t.isAuthSupported()){var A=_(t,e,u),M=A||r.getAuthKey();M&&(v.auth=M)}r.secretKey&&w(e,O,v,u,t);var E=function(n,r){var c;if(n.error)return t.handleError&&t.handleError(e,u,n),void(a?a(n):s&&s.reject(new y("PubNub call failed, check status for details",n)));i.stopLatencyMeasure(t.getOperation(),o);var l=t.handleResponse(e,r,u);"function"!=typeof(null===(c=l)||void 0===c?void 0:c.then)&&(l=Promise.resolve(l)),l.then((function(e){a?a(n,e):s&&s.fulfill(e)})).catch((function(e){if(a){var n=e;t.getOperation()===d.default.PNSubscribeOperation&&(n={statusCode:400,error:!0,operation:t.getOperation(),errorData:e,category:p.default.PNUnknownCategory}),a(n,null)}else s&&s.reject(new y("PubNub call failed, check status for details",e))}))};if(i.startLatencyMeasure(t.getOperation(),o),"POST"===P(e,t,u)){var x=t.postPayload(e,u);h=n.POST(v,x,T,E)}else if("PATCH"===P(e,t,u)){var R=t.patchPayload(e,u);h=n.PATCH(v,R,T,E)}else h="DELETE"===P(e,t,u)?n.DELETE(v,T,E):"GETFILE"===P(e,t,u)?n.GETFILE(v,T,E):n.GET(v,T,E);if(t.getOperation()===d.default.PNSubscribeOperation)return h;if(s)return s.promise},t.PubNubError=void 0;var i=r(n(4)),o=r(n(5)),a=r(n(14)),s=r(n(16)),u=r(n(13)),c=r(n(45)),l=r(n(17)),f=(n(2),r(n(3))),d=(r(n(8)),r(n(1))),p=r(n(10));function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function g(e){for(var t=1;t0&&(t+=n),t}function P(e,t,n){return t.usePost&&t.usePost(e,n)?"POST":t.usePatch&&t.usePatch(e,n)?"PATCH":t.useDelete&&t.useDelete(e,n)?"DELETE":t.useGetFile&&t.useGetFile(e,n)?"GETFILE":"GET"}function w(e,t,n,r,i){var o=e.config,a=e.crypto,s=P(e,i,r);n.timestamp=Math.floor((new Date).getTime()/1e3),"PNPublishOperation"===i.getOperation()&&i.usePost&&i.usePost(e,r)&&(s="GET"),"GETFILE"===s&&(s="GET");var u="".concat(s,"\n").concat(o.publishKey,"\n").concat(t,"\n").concat(f.default.signPamFromParams(n),"\n");if("POST"===s){var c=i.postPayload(e,r);u+="string"==typeof c?c:JSON.stringify(c)}else if("PATCH"===s){var l=i.patchPayload(e,r);u+="string"==typeof l?l:JSON.stringify(l)}var d="v2.".concat(a.HMACSHA256(u));d=(d=(d=d.replace(/\+/g,"-")).replace(/\//g,"_")).replace(/=+$/,""),n.signature=d}t.PubNubError=y},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t,n){"use strict";(function(r){var i=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=i(n(5)),a=i(n(6)),s=i(n(4)),u=(i(n(8)),i(n(22)));function c(e){var t,n=[];for(t=0;t=20?this._presenceTimeout=e:(this._presenceTimeout=20,console.log("WARNING: Presence timeout is less than the minimum. Using minimum value: ",this._presenceTimeout)),this.setHeartbeatInterval(this._presenceTimeout/2-1),this}},{key:"setProxy",value:function(e){this.proxy=e}},{key:"getHeartbeatInterval",value:function(){return this._heartbeatInterval}},{key:"setHeartbeatInterval",value:function(e){return this._heartbeatInterval=e,this}},{key:"getSubscribeTimeout",value:function(){return this._subscribeRequestTimeout}},{key:"setSubscribeTimeout",value:function(e){return this._subscribeRequestTimeout=e,this}},{key:"getTransactionTimeout",value:function(){return this._transactionalRequestTimeout}},{key:"setTransactionTimeout",value:function(e){return this._transactionalRequestTimeout=e,this}},{key:"isSendBeaconEnabled",value:function(){return this._useSendBeacon}},{key:"setSendBeaconConfig",value:function(e){return this._useSendBeacon=e,this}},{key:"getVersion",value:function(){return"5.0.0"}},{key:"_addPnsdkSuffix",value:function(e,t){this._PNSDKSuffix[e]=t}},{key:"_getPnsdkSuffix",value:function(e){var t=this;return Object.keys(this._PNSDKSuffix).reduce((function(n,r){return n+e+t._PNSDKSuffix[r]}),"")}}]),e}());t.default=s,e.exports=t.default},function(e,t,n){var r=n(80),i=n(81),o=n(82),a=n(84);e.exports=function(e,t){return r(e)||i(e,t)||o(e,t)||a()},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={PNNetworkUpCategory:"PNNetworkUpCategory",PNNetworkDownCategory:"PNNetworkDownCategory",PNNetworkIssuesCategory:"PNNetworkIssuesCategory",PNTimeoutCategory:"PNTimeoutCategory",PNBadRequestCategory:"PNBadRequestCategory",PNAccessDeniedCategory:"PNAccessDeniedCategory",PNUnknownCategory:"PNUnknownCategory",PNReconnectedCategory:"PNReconnectedCategory",PNConnectedCategory:"PNConnectedCategory",PNRequestMessageCountExceededCategory:"PNRequestMessageCountExceededCategory"},e.exports=t.default},function(e,t,n){e.exports=n(75)},function(e,t){function n(e,t,n,r,i,o,a){try{var u=e[o](a),s=u.value}catch(e){return void n(e)}u.done?t(s):Promise.resolve(s).then(r,i)}e.exports=function(e){return function(){var t=this,r=arguments;return new Promise((function(i,o){var a=e.apply(t,r);function u(e){n(a,i,o,u,s,"next",e)}function s(e){n(a,i,o,u,s,"throw",e)}u(void 0)}))}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){function n(t){return e.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},e.exports.default=e.exports,e.exports.__esModule=!0,n(t)}e.exports=n,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(15);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&r(e,t)},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){function n(t,r){return e.exports=n=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},e.exports.default=e.exports,e.exports.__esModule=!0,n(t,r)}e.exports=n,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(7).default,i=n(22);e.exports=function(e,t){if(t&&("object"===r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return i(e)},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(34)),o={createUUID:function(){return i.default.uuid?i.default.uuid():(0,i.default)()}};t.default=o,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.PubNubError=void 0,t.createValidationError=b,t.default=function(e,t){var n=e.networking,r=e.config,i=e.telemetryManager,o=e.tokenManager,a=l.default.createUUID(),u=null,s=null,c={};t.getOperation()===d.default.PNTimeOperation||t.getOperation()===d.default.PNChannelGroupsOperation?u=arguments.length<=2?void 0:arguments[2]:(c=arguments.length<=2?void 0:arguments[2],u=arguments.length<=3?void 0:arguments[3]);"undefined"==typeof Promise||u||(s=f.default.createPromise());var h=t.validateParams(e,c);if(h)return u?u(b(h)):s?(s.reject(new v("Validation failed, check status for details",b(h))),s.promise):void 0;var g,S=t.prepareParams(e,c),w=m(t,e,c),k={url:w,operation:t.getOperation(),timeout:t.getRequestTimeout(e),headers:t.getRequestHeaders?t.getRequestHeaders():{},ignoreBody:"function"==typeof t.ignoreBody&&t.ignoreBody(e),forceBuffered:"function"==typeof t.forceBuffered?t.forceBuffered(e,c):null};S.uuid=r.UUID,S.pnsdk=_(r);var T=i.operationsLatencyForRequest();Object.keys(T).length&&(S=y(y({},S),T));r.useInstanceId&&(S.instanceid=r.instanceId);r.useRequestId&&(S.requestid=a);if(t.isAuthSupported()){var x=o.getToken()||r.getAuthKey();x&&(S.auth=x)}r.secretKey&&O(e,w,S,c,t);var A=function(n,r){var o;if(n.error)return t.handleError&&t.handleError(e,c,n),void(u?u(n):s&&s.reject(new v("PubNub call failed, check status for details",n)));i.stopLatencyMeasure(t.getOperation(),a);var l=t.handleResponse(e,r,c);"function"!=typeof(null===(o=l)||void 0===o?void 0:o.then)&&(l=Promise.resolve(l)),l.then((function(e){u?u(n,e):s&&s.fulfill(e)})).catch((function(e){if(u){var n=e;t.getOperation()===d.default.PNSubscribeOperation&&(n={statusCode:400,error:!0,operation:t.getOperation(),errorData:e,category:p.default.PNUnknownCategory}),u(n,null)}else s&&s.reject(new v("PubNub call failed, check status for details",e))}))};if(i.startLatencyMeasure(t.getOperation(),a),"POST"===P(e,t,c)){var M=t.postPayload(e,c);g=n.POST(S,M,k,A)}else if("PATCH"===P(e,t,c)){var E=t.patchPayload(e,c);g=n.PATCH(S,E,k,A)}else g="DELETE"===P(e,t,c)?n.DELETE(S,k,A):"GETFILE"===P(e,t,c)?n.GETFILE(S,k,A):n.GET(S,k,A);if(t.getOperation()===d.default.PNSubscribeOperation)return g;if(s)return s.promise},t.generatePNSDK=_,t.signRequest=O;var i=r(n(4)),o=r(n(5)),a=r(n(14)),u=r(n(16)),s=r(n(13)),c=r(n(48)),l=r(n(17)),f=(n(2),r(n(3))),d=(r(n(8)),r(n(1))),p=r(n(10));function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function y(e){for(var t=1;t0&&(t+=n),t}function P(e,t,n){return t.usePost&&t.usePost(e,n)?"POST":t.usePatch&&t.usePatch(e,n)?"PATCH":t.useDelete&&t.useDelete(e,n)?"DELETE":t.useGetFile&&t.useGetFile(e,n)?"GETFILE":"GET"}function O(e,t,n,r,i){var o=e.config,a=e.crypto,u=P(e,i,r);n.timestamp=Math.floor((new Date).getTime()/1e3),"PNPublishOperation"===i.getOperation()&&i.usePost&&i.usePost(e,r)&&(u="GET"),"GETFILE"===u&&(u="GET");var s="".concat(u,"\n").concat(o.publishKey,"\n").concat(t,"\n").concat(f.default.signPamFromParams(n),"\n");if("POST"===u){var c=i.postPayload(e,r);s+="string"==typeof c?c:JSON.stringify(c)}else if("PATCH"===u){var l=i.patchPayload(e,r);s+="string"==typeof l?l:JSON.stringify(l)}var d="v2.".concat(a.HMACSHA256(s));d=(d=(d=d.replace(/\+/g,"-")).replace(/\//g,"_")).replace(/=+$/,""),n.signature=d}t.PubNubError=v},function(e,t,n){"use strict";var r=SyntaxError,i=Function,o=TypeError,a=function(e){try{return i('"use strict"; return ('+e+").constructor;")()}catch(e){}},u=Object.getOwnPropertyDescriptor;if(u)try{u({},"")}catch(e){u=null}var s=function(){throw new o},c=u?function(){try{return s}catch(e){try{return u(arguments,"callee").get}catch(e){return s}}}():s,l=n(135)(),f=Object.getPrototypeOf||function(e){return e.__proto__},d={},p="undefined"==typeof Uint8Array?void 0:f(Uint8Array),h={"%AggregateError%":"undefined"==typeof AggregateError?void 0:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?void 0:ArrayBuffer,"%ArrayIteratorPrototype%":l?f([][Symbol.iterator]()):void 0,"%AsyncFromSyncIteratorPrototype%":void 0,"%AsyncFunction%":d,"%AsyncGenerator%":d,"%AsyncGeneratorFunction%":d,"%AsyncIteratorPrototype%":d,"%Atomics%":"undefined"==typeof Atomics?void 0:Atomics,"%BigInt%":"undefined"==typeof BigInt?void 0:BigInt,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?void 0:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":"undefined"==typeof Float32Array?void 0:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?void 0:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?void 0:FinalizationRegistry,"%Function%":i,"%GeneratorFunction%":d,"%Int8Array%":"undefined"==typeof Int8Array?void 0:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?void 0:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?void 0:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":l?f(f([][Symbol.iterator]())):void 0,"%JSON%":"object"==typeof JSON?JSON:void 0,"%Map%":"undefined"==typeof Map?void 0:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&l?f((new Map)[Symbol.iterator]()):void 0,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?void 0:Promise,"%Proxy%":"undefined"==typeof Proxy?void 0:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":"undefined"==typeof Reflect?void 0:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?void 0:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&l?f((new Set)[Symbol.iterator]()):void 0,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?void 0:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":l?f(""[Symbol.iterator]()):void 0,"%Symbol%":l?Symbol:void 0,"%SyntaxError%":r,"%ThrowTypeError%":c,"%TypedArray%":p,"%TypeError%":o,"%Uint8Array%":"undefined"==typeof Uint8Array?void 0:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?void 0:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?void 0:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?void 0:Uint32Array,"%URIError%":URIError,"%WeakMap%":"undefined"==typeof WeakMap?void 0:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?void 0:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?void 0:WeakSet},y={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},g=n(20),v=n(138),b=g.call(Function.call,Array.prototype.concat),m=g.call(Function.apply,Array.prototype.splice),_=g.call(Function.call,String.prototype.replace),P=g.call(Function.call,String.prototype.slice),O=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,S=/\\(\\)?/g,w=function(e){var t=P(e,0,1),n=P(e,-1);if("%"===t&&"%"!==n)throw new r("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new r("invalid intrinsic syntax, expected opening `%`");var i=[];return _(e,O,(function(e,t,n,r){i[i.length]=n?_(r,S,"$1"):t||e})),i},k=function(e,t){var n,i=e;if(v(y,i)&&(i="%"+(n=y[i])[0]+"%"),v(h,i)){var u=h[i];if(u===d&&(u=function e(t){var n;if("%AsyncFunction%"===t)n=a("async function () {}");else if("%GeneratorFunction%"===t)n=a("function* () {}");else if("%AsyncGeneratorFunction%"===t)n=a("async function* () {}");else if("%AsyncGenerator%"===t){var r=e("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===t){var i=e("%AsyncGenerator%");i&&(n=f(i.prototype))}return h[t]=n,n}(i)),void 0===u&&!t)throw new o("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:n,name:i,value:u}}throw new r("intrinsic "+e+" does not exist!")};e.exports=function(e,t){if("string"!=typeof e||0===e.length)throw new o("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof t)throw new o('"allowMissing" argument must be a boolean');var n=w(e),i=n.length>0?n[0]:"",a=k("%"+i+"%",t),s=a.name,c=a.value,l=!1,f=a.alias;f&&(i=f[0],m(n,b([0,1],f)));for(var d=1,p=!0;d=n.length){var O=u(c,y);c=(p=!!O)&&"get"in O&&!("originalValue"in O.get)?O.get:c[y]}else p=v(c,y),c=c[y];p&&!l&&(h[s]=c)}}return c}},function(e,t,n){"use strict";var r=n(137);e.exports=Function.prototype.bind||r},function(e,t,n){"use strict";var r=String.prototype.replace,i=/%20/g,o="RFC1738",a="RFC3986";e.exports={default:a,formatters:{RFC1738:function(e){return r.call(e,i,"+")},RFC3986:function(e){return String(e)}},RFC1738:o,RFC3986:a}},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";(function(r){var i=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=i(n(5)),a=i(n(6)),u=i(n(4)),s=(i(n(8)),i(n(25)));function c(e){var t,n=[];for(t=0;t * @license MIT */ -var r=n(33),i=n(34),o=n(35);function a(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function h(e,t){if(u.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return F(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return B(e).length;default:if(r)return F(e).length;t=(""+t).toLowerCase(),r=!0}}function g(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return E(this,t,n);case"utf8":case"utf-8":return S(this,t,n);case"ascii":return A(this,t,n);case"latin1":case"binary":return M(this,t,n);case"base64":return T(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function v(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function y(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=u.from(t,r)),u.isBuffer(t))return 0===t.length?-1:b(e,t,n,r,i);if("number"==typeof t)return t&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):b(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function b(e,t,n,r,i){var o,a=1,s=e.length,u=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,u/=2,n/=2}function c(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var l=-1;for(o=n;os&&(n=s-u),o=n;o>=0;o--){for(var f=!0,d=0;di&&(r=i):r=i;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a>8,i=n%256,o.push(i),o.push(r);return o}(t,e.length-n),e,n,r)}function T(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function S(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i239?4:c>223?3:c>191?2:1;if(i+f<=n)switch(f){case 1:c<128&&(l=c);break;case 2:128==(192&(o=e[i+1]))&&(u=(31&c)<<6|63&o)>127&&(l=u);break;case 3:o=e[i+1],a=e[i+2],128==(192&o)&&128==(192&a)&&(u=(15&c)<<12|(63&o)<<6|63&a)>2047&&(u<55296||u>57343)&&(l=u);break;case 4:o=e[i+1],a=e[i+2],s=e[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(u=(15&c)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(l=u)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),i+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},u.prototype.compare=function(e,t,n,r,i){if(!u.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(o,a),c=this.slice(r,i),l=e.slice(t,n),f=0;fi)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return _(this,e,t,n);case"ascii":return k(this,e,t,n);case"latin1":case"binary":return P(this,e,t,n);case"base64":return w(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function A(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;ir)&&(n=r);for(var i="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function C(e,t,n,r,i,o){if(!u.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function N(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function U(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function j(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function K(e,t,n,r,o){return o||j(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function I(e,t,n,r,o){return o||j(e,0,n,8),i.write(e,t,n,r,52,8),n+8}u.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(i*=256);)r+=this[e+--t]*i;return r},u.prototype.readUInt8=function(e,t){return t||R(e,1,this.length),this[e]},u.prototype.readUInt16LE=function(e,t){return t||R(e,2,this.length),this[e]|this[e+1]<<8},u.prototype.readUInt16BE=function(e,t){return t||R(e,2,this.length),this[e]<<8|this[e+1]},u.prototype.readUInt32LE=function(e,t){return t||R(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},u.prototype.readUInt32BE=function(e,t){return t||R(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},u.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||R(e,t,this.length);for(var r=this[e],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*t)),r},u.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||R(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},u.prototype.readInt8=function(e,t){return t||R(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},u.prototype.readInt16LE=function(e,t){t||R(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(e,t){t||R(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(e,t){return t||R(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},u.prototype.readInt32BE=function(e,t){return t||R(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},u.prototype.readFloatLE=function(e,t){return t||R(e,4,this.length),i.read(this,e,!0,23,4)},u.prototype.readFloatBE=function(e,t){return t||R(e,4,this.length),i.read(this,e,!1,23,4)},u.prototype.readDoubleLE=function(e,t){return t||R(e,8,this.length),i.read(this,e,!0,52,8)},u.prototype.readDoubleBE=function(e,t){return t||R(e,8,this.length),i.read(this,e,!1,52,8)},u.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||C(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o=0&&(o*=256);)this[t+i]=e/o&255;return t+n},u.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,255,0),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},u.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},u.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},u.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):U(this,e,t,!0),t+4},u.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):U(this,e,t,!1),t+4},u.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);C(this,e,t,n,i-1,-i)}var o=0,a=1,s=0;for(this[t]=255&e;++o>0)-s&255;return t+n},u.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);C(this,e,t,n,i-1,-i)}var o=n-1,a=1,s=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},u.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,1,127,-128),u.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},u.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},u.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},u.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):U(this,e,t,!0),t+4},u.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||C(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),u.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):U(this,e,t,!1),t+4},u.prototype.writeFloatLE=function(e,t,n){return K(this,e,t,!0,n)},u.prototype.writeFloatBE=function(e,t,n){return K(this,e,t,!1,n)},u.prototype.writeDoubleLE=function(e,t,n){return I(this,e,t,!0,n)},u.prototype.writeDoubleBE=function(e,t,n){return I(this,e,t,!1,n)},u.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function B(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(D,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function G(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,n(32))},function(e,t,n){"use strict";var r,i,o,a,s,u=u||function(e,t){var n={},r=n.lib={},i=function(){},o=r.Base={extend:function(e){i.prototype=this;var t=new i;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},a=r.WordArray=o.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||u).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=o.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new a.init(n,t/2)}},c=s.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new a.init(n,t)}},l=s.Utf8={stringify:function(e){try{return decodeURIComponent(escape(c.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return c.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=l.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,i=n.sigBytes,o=this.blockSize,s=i/(4*o);if(t=(s=t?e.ceil(s):e.max((0|s)-this._minBufferSize,0))*o,i=e.min(4*t,i),t){for(var u=0;ul;){var f;e:{f=c;for(var d=e.sqrt(f),p=2;p<=d;p++)if(!(f%p)){f=!1;break e}f=!0}f&&(8>l&&(o[l]=s(e.pow(c,.5))),a[l]=s(e.pow(c,1/3)),l++),c++}var h=[];i=i.SHA256=r.extend({_doReset:function(){this._hash=new n.init(o.slice(0))},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],o=n[2],s=n[3],u=n[4],c=n[5],l=n[6],f=n[7],d=0;64>d;d++){if(16>d)h[d]=0|e[t+d];else{var p=h[d-15],g=h[d-2];h[d]=((p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3)+h[d-7]+((g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10)+h[d-16]}p=f+((u<<26|u>>>6)^(u<<21|u>>>11)^(u<<7|u>>>25))+(u&c^~u&l)+a[d]+h[d],g=((r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22))+(r&i^r&o^i&o),f=l,l=c,c=u,u=s+p|0,s=o,o=i,i=r,r=p+g|0}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+s|0,n[4]=n[4]+u|0,n[5]=n[5]+c|0,n[6]=n[6]+l|0,n[7]=n[7]+f|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return n[i>>>5]|=128<<24-i%32,n[14+(i+64>>>9<<4)]=e.floor(r/4294967296),n[15+(i+64>>>9<<4)]=r,t.sigBytes=4*n.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA256=r._createHelper(i),t.HmacSHA256=r._createHmacHelper(i)}(Math),i=(r=u).enc.Utf8,r.algo.HMAC=r.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=i.parse(t));var n=e.blockSize,r=4*n;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var o=this._oKey=t.clone(),a=this._iKey=t.clone(),s=o.words,u=a.words,c=0;c>>2]>>>24-i%4*8&255)<<16|(t[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|t[i+2>>>2]>>>24-(i+2)%4*8&255,a=0;4>a&&i+.75*a>>6*(3-a)&63));if(t=r.charAt(64))for(;e.length%4;)e.push(t);return e.join("")},parse:function(e){var t=e.length,n=this._map;(r=n.charAt(64))&&-1!=(r=e.indexOf(r))&&(t=r);for(var r=[],i=0,o=0;o>>6-o%4*2;r[i>>>2]|=(s|u)<<24-i%4*8,i++}return a.create(r,i)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(e){function t(e,t,n,r,i,o,a){return((e=e+(t&n|~t&r)+i+a)<>>32-o)+t}function n(e,t,n,r,i,o,a){return((e=e+(t&r|n&~r)+i+a)<>>32-o)+t}function r(e,t,n,r,i,o,a){return((e=e+(t^n^r)+i+a)<>>32-o)+t}function i(e,t,n,r,i,o,a){return((e=e+(n^(t|~r))+i+a)<>>32-o)+t}for(var o=u,a=(c=o.lib).WordArray,s=c.Hasher,c=o.algo,l=[],f=0;64>f;f++)l[f]=4294967296*e.abs(e.sin(f+1))|0;c=c.MD5=s.extend({_doReset:function(){this._hash=new a.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,o){for(var a=0;16>a;a++){var s=e[u=o+a];e[u]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8)}a=this._hash.words;var u=e[o+0],c=(s=e[o+1],e[o+2]),f=e[o+3],d=e[o+4],p=e[o+5],h=e[o+6],g=e[o+7],v=e[o+8],y=e[o+9],b=e[o+10],m=e[o+11],_=e[o+12],k=e[o+13],P=e[o+14],w=e[o+15],O=t(O=a[0],A=a[1],S=a[2],T=a[3],u,7,l[0]),T=t(T,O,A,S,s,12,l[1]),S=t(S,T,O,A,c,17,l[2]),A=t(A,S,T,O,f,22,l[3]);O=t(O,A,S,T,d,7,l[4]),T=t(T,O,A,S,p,12,l[5]),S=t(S,T,O,A,h,17,l[6]),A=t(A,S,T,O,g,22,l[7]),O=t(O,A,S,T,v,7,l[8]),T=t(T,O,A,S,y,12,l[9]),S=t(S,T,O,A,b,17,l[10]),A=t(A,S,T,O,m,22,l[11]),O=t(O,A,S,T,_,7,l[12]),T=t(T,O,A,S,k,12,l[13]),S=t(S,T,O,A,P,17,l[14]),O=n(O,A=t(A,S,T,O,w,22,l[15]),S,T,s,5,l[16]),T=n(T,O,A,S,h,9,l[17]),S=n(S,T,O,A,m,14,l[18]),A=n(A,S,T,O,u,20,l[19]),O=n(O,A,S,T,p,5,l[20]),T=n(T,O,A,S,b,9,l[21]),S=n(S,T,O,A,w,14,l[22]),A=n(A,S,T,O,d,20,l[23]),O=n(O,A,S,T,y,5,l[24]),T=n(T,O,A,S,P,9,l[25]),S=n(S,T,O,A,f,14,l[26]),A=n(A,S,T,O,v,20,l[27]),O=n(O,A,S,T,k,5,l[28]),T=n(T,O,A,S,c,9,l[29]),S=n(S,T,O,A,g,14,l[30]),O=r(O,A=n(A,S,T,O,_,20,l[31]),S,T,p,4,l[32]),T=r(T,O,A,S,v,11,l[33]),S=r(S,T,O,A,m,16,l[34]),A=r(A,S,T,O,P,23,l[35]),O=r(O,A,S,T,s,4,l[36]),T=r(T,O,A,S,d,11,l[37]),S=r(S,T,O,A,g,16,l[38]),A=r(A,S,T,O,b,23,l[39]),O=r(O,A,S,T,k,4,l[40]),T=r(T,O,A,S,u,11,l[41]),S=r(S,T,O,A,f,16,l[42]),A=r(A,S,T,O,h,23,l[43]),O=r(O,A,S,T,y,4,l[44]),T=r(T,O,A,S,_,11,l[45]),S=r(S,T,O,A,w,16,l[46]),O=i(O,A=r(A,S,T,O,c,23,l[47]),S,T,u,6,l[48]),T=i(T,O,A,S,g,10,l[49]),S=i(S,T,O,A,P,15,l[50]),A=i(A,S,T,O,p,21,l[51]),O=i(O,A,S,T,_,6,l[52]),T=i(T,O,A,S,f,10,l[53]),S=i(S,T,O,A,b,15,l[54]),A=i(A,S,T,O,s,21,l[55]),O=i(O,A,S,T,v,6,l[56]),T=i(T,O,A,S,w,10,l[57]),S=i(S,T,O,A,h,15,l[58]),A=i(A,S,T,O,k,21,l[59]),O=i(O,A,S,T,d,6,l[60]),T=i(T,O,A,S,m,10,l[61]),S=i(S,T,O,A,c,15,l[62]),A=i(A,S,T,O,y,21,l[63]);a[0]=a[0]+O|0,a[1]=a[1]+A|0,a[2]=a[2]+S|0,a[3]=a[3]+T|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;n[i>>>5]|=128<<24-i%32;var o=e.floor(r/4294967296);for(n[15+(i+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),n[14+(i+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(n.length+1),this._process(),n=(t=this._hash).words,r=0;4>r;r++)i=n[r],n[r]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8);return t},clone:function(){var e=s.clone.call(this);return e._hash=this._hash.clone(),e}}),o.MD5=s._createHelper(c),o.HmacMD5=s._createHmacHelper(c)}(Math),function(){var e,t=u,n=(e=t.lib).Base,r=e.WordArray,i=(e=t.algo).EvpKDF=n.extend({cfg:n.extend({keySize:4,hasher:e.MD5,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=(s=this.cfg).hasher.create(),i=r.create(),o=i.words,a=s.keySize,s=s.iterations;o.length>>2]}},t.BlockCipher=s.extend({cfg:s.cfg.extend({mode:c,padding:f}),reset:function(){s.reset.call(this);var e=(t=this.cfg).iv,t=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=t.createEncryptor;else n=t.createDecryptor,this._minBufferSize=1;this._mode=n.call(t,this,e&&e.words)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);var t=this._process(!0)}else t=this._process(!0),e.unpad(t);return t},blockSize:4});var d=t.CipherParams=n.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),p=(c=(h.format={}).OpenSSL={stringify:function(e){var t=e.ciphertext;return((e=e.salt)?r.create([1398893684,1701076831]).concat(e).concat(t):t).toString(o)},parse:function(e){var t=(e=o.parse(e)).words;if(1398893684==t[0]&&1701076831==t[1]){var n=r.create(t.slice(2,4));t.splice(0,4),e.sigBytes-=16}return d.create({ciphertext:e,salt:n})}},t.SerializableCipher=n.extend({cfg:n.extend({format:c}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r);return t=i.finalize(t),i=i.cfg,d.create({ciphertext:t,key:n,iv:i.iv,algorithm:e,mode:i.mode,padding:i.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}})),h=(h.kdf={}).OpenSSL={execute:function(e,t,n,i){return i||(i=r.random(8)),e=a.create({keySize:t+n}).compute(e,i),n=r.create(e.words.slice(t),4*n),e.sigBytes=4*t,d.create({key:e,iv:n,salt:i})}},g=t.PasswordBasedCipher=p.extend({cfg:p.cfg.extend({kdf:h}),encrypt:function(e,t,n,r){return n=(r=this.cfg.extend(r)).kdf.execute(n,e.keySize,e.ivSize),r.iv=n.iv,(e=p.encrypt.call(this,e,t,n.key,r)).mixIn(n),e},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),n=r.kdf.execute(n,e.keySize,e.ivSize,t.salt),r.iv=n.iv,p.decrypt.call(this,e,t,n.key,r)}})}(),function(){for(var e=u,t=e.lib.BlockCipher,n=e.algo,r=[],i=[],o=[],a=[],s=[],c=[],l=[],f=[],d=[],p=[],h=[],g=0;256>g;g++)h[g]=128>g?g<<1:g<<1^283;var v=0,y=0;for(g=0;256>g;g++){var b=(b=y^y<<1^y<<2^y<<3^y<<4)>>>8^255&b^99;r[v]=b,i[b]=v;var m=h[v],_=h[m],k=h[_],P=257*h[b]^16843008*b;o[v]=P<<24|P>>>8,a[v]=P<<16|P>>>16,s[v]=P<<8|P>>>24,c[v]=P,P=16843009*k^65537*_^257*m^16843008*v,l[b]=P<<24|P>>>8,f[b]=P<<16|P>>>16,d[b]=P<<8|P>>>24,p[b]=P,v?(v=m^h[h[h[k^m]]],y^=h[h[y]]):v=y=1}var w=[0,1,2,4,8,16,32,64,128,27,54];n=n.AES=t.extend({_doReset:function(){for(var e=(n=this._key).words,t=n.sigBytes/4,n=4*((this._nRounds=t+6)+1),i=this._keySchedule=[],o=0;o>>24]<<24|r[a>>>16&255]<<16|r[a>>>8&255]<<8|r[255&a]):(a=r[(a=a<<8|a>>>24)>>>24]<<24|r[a>>>16&255]<<16|r[a>>>8&255]<<8|r[255&a],a^=w[o/t|0]<<24),i[o]=i[o-t]^a}for(e=this._invKeySchedule=[],t=0;tt||4>=o?a:l[r[a>>>24]]^f[r[a>>>16&255]]^d[r[a>>>8&255]]^p[r[255&a]]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,o,a,s,c,r)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,l,f,d,p,i),n=e[t+1],e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,o,a,s){for(var u=this._nRounds,c=e[t]^n[0],l=e[t+1]^n[1],f=e[t+2]^n[2],d=e[t+3]^n[3],p=4,h=1;h>>24]^i[l>>>16&255]^o[f>>>8&255]^a[255&d]^n[p++],v=r[l>>>24]^i[f>>>16&255]^o[d>>>8&255]^a[255&c]^n[p++],y=r[f>>>24]^i[d>>>16&255]^o[c>>>8&255]^a[255&l]^n[p++];d=r[d>>>24]^i[c>>>16&255]^o[l>>>8&255]^a[255&f]^n[p++],c=g,l=v,f=y}g=(s[c>>>24]<<24|s[l>>>16&255]<<16|s[f>>>8&255]<<8|s[255&d])^n[p++],v=(s[l>>>24]<<24|s[f>>>16&255]<<16|s[d>>>8&255]<<8|s[255&c])^n[p++],y=(s[f>>>24]<<24|s[d>>>16&255]<<16|s[c>>>8&255]<<8|s[255&l])^n[p++],d=(s[d>>>24]<<24|s[c>>>16&255]<<16|s[l>>>8&255]<<8|s[255&f])^n[p++],e[t]=g,e[t+1]=v,e[t+2]=y,e[t+3]=d},keySize:8});e.AES=t._createHelper(n)}(),u.mode.ECB=((s=u.lib.BlockCipherMode.extend()).Encryptor=s.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),s.Decryptor=s.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),s),e.exports=u},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),s=(n(2),r(n(10))),u=function(){function e(){(0,i.default)(this,e),(0,a.default)(this,"_listeners",void 0),this._listeners=[]}return(0,o.default)(e,[{key:"addListener",value:function(e){this._listeners.push(e)}},{key:"removeListener",value:function(e){var t=[];this._listeners.forEach((function(n){n!==e&&t.push(n)})),this._listeners=t}},{key:"removeAllListeners",value:function(){this._listeners=[]}},{key:"announcePresence",value:function(e){this._listeners.forEach((function(t){t.presence&&t.presence(e)}))}},{key:"announceStatus",value:function(e){this._listeners.forEach((function(t){t.status&&t.status(e)}))}},{key:"announceMessage",value:function(e){this._listeners.forEach((function(t){t.message&&t.message(e)}))}},{key:"announceSignal",value:function(e){this._listeners.forEach((function(t){t.signal&&t.signal(e)}))}},{key:"announceMessageAction",value:function(e){this._listeners.forEach((function(t){t.messageAction&&t.messageAction(e)}))}},{key:"announceFile",value:function(e){this._listeners.forEach((function(t){t.file&&t.file(e)}))}},{key:"announceObjects",value:function(e){this._listeners.forEach((function(t){t.objects&&t.objects(e)}))}},{key:"announceUser",value:function(e){this._listeners.forEach((function(t){t.user&&t.user(e)}))}},{key:"announceSpace",value:function(e){this._listeners.forEach((function(t){t.space&&t.space(e)}))}},{key:"announceMembership",value:function(e){this._listeners.forEach((function(t){t.membership&&t.membership(e)}))}},{key:"announceNetworkUp",value:function(){var e={};e.category=s.default.PNNetworkUpCategory,this.announceStatus(e)}},{key:"announceNetworkDown",value:function(){var e={};e.category=s.default.PNNetworkDownCategory,this.announceStatus(e)}}]),e}();t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNTimeOperation},t.getURL=function(){return"/time/0"},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.prepareParams=function(){return{}},t.isAuthSupported=function(){return!1},t.handleResponse=function(e,t){return{timetoken:t[0]}},t.validateParams=function(){};n(2);var i=r(n(1))},function(e,t,n){},function(e,t,n){"use strict";e.exports=function(e){return null!==e&&"object"==typeof e}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(14)),a=r(n(16)),s=r(n(13)),u=r(n(7)),c=r(n(28)),l=r(n(29)),f=r(n(121)),d=r(n(22)),p=r(n(122)),h=r(n(123)),g=n(124),v=(n(2),r(n(131))),y=r(n(132));function b(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=(0,s.default)(e);if(t){var i=(0,s.default)(this).constructor;n=Reflect.construct(r,arguments,i)}else n=r.apply(this,arguments);return(0,a.default)(this,n)}}function m(e){if(!navigator||!navigator.sendBeacon)return!1;navigator.sendBeacon(e)}function _(e){for(var t=d.default.enc.Base64.parse(e).words,n=new ArrayBuffer(4*t.length),r=new Uint8Array(n),i=0,o=0,a=0;a>24,r[o+1]=(16711680&s)>>16,r[o+2]=(65280&s)>>8,r[o+3]=255&s}for(var u=o+3;u>=o;u-=1)0===r[u]&&(i+=1);return i>0?r.buffer.slice(0,r.byteLength-i):r.buffer}function k(e){var t=function(e){return e&&"object"===(0,u.default)(e)&&e.constructor===Object};if(!t(e))return e;var n={};return Object.keys(e).forEach((function(r){var i=function(e){return"string"==typeof e||e instanceof String}(r),o=r,a=e[r];Array.isArray(r)||i&&r.indexOf(",")>=0?o=(i?r.split(","):r).reduce((function(e,t){return e+=String.fromCharCode(t)}),""):(function(e){return"number"==typeof e&&isFinite(e)}(r)||i&&!isNaN(r))&&(o=String.fromCharCode(i?parseInt(r,10):10));n[o]=t(a)?k(a):a})),n}var P=function(e){(0,o.default)(n,e);var t=b(n);function n(e){var r;(0,i.default)(this,n);var o=e.listenToBrowserNetworkEvents,a=void 0===o||o;return e.db=p.default,e.sdkFamily="Web",e.networking=new f.default({del:g.del,get:g.get,post:g.post,patch:g.patch,sendBeacon:m,getfile:g.getfile,postfile:g.postfile}),e.cbor=new h.default((function(e){return k(c.default.decode(e))}),_),e.PubNubFile=y.default,e.cryptography=new v.default,r=t.call(this,e),a&&(window.addEventListener("offline",(function(){r.networkDownDetected()})),window.addEventListener("online",(function(){r.networkUpDetected()}))),r}return n}(l.default);t.default=P,e.exports=t.default},function(e,t,n){var r,i;!function(o,a){"use strict";var s=Math.pow(2,-24),u=Math.pow(2,32),c=Math.pow(2,53);void 0===(i="function"==typeof(r={encode:function(e){var t,n=new ArrayBuffer(256),r=new DataView(n),i=0;function o(e){for(var o=n.byteLength,a=i+e;o>2,c=0;c>6),r.push(128|63&u)):u<55296?(r.push(224|u>>12),r.push(128|u>>6&63),r.push(128|63&u)):(u=(1023&u)<<10,u|=1023&t.charCodeAt(++n),u+=65536,r.push(240|u>>18),r.push(128|u>>12&63),r.push(128|u>>6&63),r.push(128|63&u))}return f(3,r.length),l(r);default:var d;if(Array.isArray(t))for(f(4,d=t.length),n=0;n>5!==e)throw"Invalid indefinite length element";return n}function g(e,t){for(var n=0;n>10),e.push(56320|1023&r))}}"function"!=typeof t&&(t=function(e){return e}),"function"!=typeof n&&(n=function(){});var v=function e(){var u,f,v=c(),y=v>>5,b=31&v;if(7===y)switch(b){case 25:return function(){var e=new ArrayBuffer(4),t=new DataView(e),n=l(),r=32768&n,i=31744&n,o=1023&n;if(31744===i)i=261120;else if(0!==i)i+=114688;else if(0!==o)return o*s;return t.setUint32(0,r<<16|i<<13|o<<13),t.getFloat32(0)}();case 26:return o(r.getFloat32(i),4);case 27:return o(r.getFloat64(i),8)}if((f=p(b))<0&&(y<2||6=0;)_+=f,m.push(a(f));var k=new Uint8Array(_),P=0;for(u=0;u=0;)g(w,f);else g(w,f);return String.fromCharCode.apply(null,w);case 4:var O;if(f<0)for(O=[];!d();)O.push(e());else for(O=new Array(f),u=0;u1?t-1:0),i=1;i1?t-1:0),i=1;i1?t-1:0),i=1;i1?t-1:0),i=1;i0?a-4:a;for(n=0;n>16&255,u[l++]=t>>8&255,u[l++]=255&t;2===s&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,u[l++]=255&t);1===s&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t);return u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],a=0,s=n-i;as?s:a+16383));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var i,o,a=[],s=t;s>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){t.read=function(e,t,n,r,i){var o,a,s=8*i-r-1,u=(1<>1,l=-7,f=n?i-1:0,d=n?-1:1,p=e[t+f];for(f+=d,o=p&(1<<-l)-1,p>>=-l,l+=s;l>0;o=256*o+e[t+f],f+=d,l-=8);for(a=o&(1<<-l)-1,o>>=-l,l+=r;l>0;a=256*a+e[t+f],f+=d,l-=8);if(0===o)o=1-c;else{if(o===u)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,r),o-=c}return(p?-1:1)*a*Math.pow(2,o-r)},t.write=function(e,t,n,r,i,o){var a,s,u,c=8*o-i-1,l=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,h=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-a))<1&&(a--,u*=2),(t+=a+f>=1?d/u:d*Math.pow(2,1-f))*u>=2&&(a++,u/=2),a+f>=l?(s=0,a=l):a+f>=1?(s=(t*u-1)*Math.pow(2,i),a+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;e[n+p]=255&s,p+=h,s/=256,i-=8);for(a=a<0;e[n+p]=255&a,p+=h,a/=256,c-=8);e[n+p-h]|=128*g}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),o=r(n(5)),a=r(n(6)),s=r(n(4)),u=(r(n(20)),r(n(8)),r(n(23)),r(n(37))),c=r(n(38)),l=r(n(3)),f=(n(2),r(n(10))),d=function(){function e(t){var n=t.subscribeEndpoint,r=t.leaveEndpoint,i=t.heartbeatEndpoint,a=t.setStateEndpoint,l=t.timeEndpoint,f=t.getFileUrl,d=t.config,p=t.crypto,h=t.listenerManager;(0,o.default)(this,e),(0,s.default)(this,"_crypto",void 0),(0,s.default)(this,"_config",void 0),(0,s.default)(this,"_listenerManager",void 0),(0,s.default)(this,"_reconnectionManager",void 0),(0,s.default)(this,"_leaveEndpoint",void 0),(0,s.default)(this,"_heartbeatEndpoint",void 0),(0,s.default)(this,"_setStateEndpoint",void 0),(0,s.default)(this,"_subscribeEndpoint",void 0),(0,s.default)(this,"_getFileUrl",void 0),(0,s.default)(this,"_channels",void 0),(0,s.default)(this,"_presenceChannels",void 0),(0,s.default)(this,"_heartbeatChannels",void 0),(0,s.default)(this,"_heartbeatChannelGroups",void 0),(0,s.default)(this,"_channelGroups",void 0),(0,s.default)(this,"_presenceChannelGroups",void 0),(0,s.default)(this,"_currentTimetoken",void 0),(0,s.default)(this,"_lastTimetoken",void 0),(0,s.default)(this,"_storedTimetoken",void 0),(0,s.default)(this,"_region",void 0),(0,s.default)(this,"_subscribeCall",void 0),(0,s.default)(this,"_heartbeatTimer",void 0),(0,s.default)(this,"_subscriptionStatusAnnounced",void 0),(0,s.default)(this,"_autoNetworkDetection",void 0),(0,s.default)(this,"_isOnline",void 0),(0,s.default)(this,"_pendingChannelSubscriptions",void 0),(0,s.default)(this,"_pendingChannelGroupSubscriptions",void 0),(0,s.default)(this,"_dedupingManager",void 0),this._listenerManager=h,this._config=d,this._leaveEndpoint=r,this._heartbeatEndpoint=i,this._setStateEndpoint=a,this._subscribeEndpoint=n,this._getFileUrl=f,this._crypto=p,this._channels={},this._presenceChannels={},this._heartbeatChannels={},this._heartbeatChannelGroups={},this._channelGroups={},this._presenceChannelGroups={},this._pendingChannelSubscriptions=[],this._pendingChannelGroupSubscriptions=[],this._currentTimetoken=0,this._lastTimetoken=0,this._storedTimetoken=null,this._subscriptionStatusAnnounced=!1,this._isOnline=!0,this._reconnectionManager=new u.default({timeEndpoint:l}),this._dedupingManager=new c.default({config:d})}return(0,a.default)(e,[{key:"adaptStateChange",value:function(e,t){var n=this,r=e.state,i=e.channels,o=void 0===i?[]:i,a=e.channelGroups,s=void 0===a?[]:a;return o.forEach((function(e){e in n._channels&&(n._channels[e].state=r)})),s.forEach((function(e){e in n._channelGroups&&(n._channelGroups[e].state=r)})),this._setStateEndpoint({state:r,channels:o,channelGroups:s},t)}},{key:"adaptPresenceChange",value:function(e){var t=this,n=e.connected,r=e.channels,i=void 0===r?[]:r,o=e.channelGroups,a=void 0===o?[]:o;n?(i.forEach((function(e){t._heartbeatChannels[e]={state:{}}})),a.forEach((function(e){t._heartbeatChannelGroups[e]={state:{}}}))):(i.forEach((function(e){e in t._heartbeatChannels&&delete t._heartbeatChannels[e]})),a.forEach((function(e){e in t._heartbeatChannelGroups&&delete t._heartbeatChannelGroups[e]})),!1===this._config.suppressLeaveEvents&&this._leaveEndpoint({channels:i,channelGroups:a},(function(e){t._listenerManager.announceStatus(e)}))),this.reconnect()}},{key:"adaptSubscribeChange",value:function(e){var t=this,n=e.timetoken,r=e.channels,i=void 0===r?[]:r,o=e.channelGroups,a=void 0===o?[]:o,s=e.withPresence,u=void 0!==s&&s,c=e.withHeartbeats,l=void 0!==c&&c;this._config.subscribeKey&&""!==this._config.subscribeKey?(n&&(this._lastTimetoken=this._currentTimetoken,this._currentTimetoken=n),"0"!==this._currentTimetoken&&0!==this._currentTimetoken&&(this._storedTimetoken=this._currentTimetoken,this._currentTimetoken=0),i.forEach((function(e){t._channels[e]={state:{}},u&&(t._presenceChannels[e]={}),(l||t._config.getHeartbeatInterval())&&(t._heartbeatChannels[e]={}),t._pendingChannelSubscriptions.push(e)})),a.forEach((function(e){t._channelGroups[e]={state:{}},u&&(t._presenceChannelGroups[e]={}),(l||t._config.getHeartbeatInterval())&&(t._heartbeatChannelGroups[e]={}),t._pendingChannelGroupSubscriptions.push(e)})),this._subscriptionStatusAnnounced=!1,this.reconnect()):console&&console.log&&console.log("subscribe key missing; aborting subscribe")}},{key:"adaptUnsubscribeChange",value:function(e,t){var n=this,r=e.channels,i=void 0===r?[]:r,o=e.channelGroups,a=void 0===o?[]:o,s=[],u=[];i.forEach((function(e){e in n._channels&&(delete n._channels[e],s.push(e),e in n._heartbeatChannels&&delete n._heartbeatChannels[e]),e in n._presenceChannels&&(delete n._presenceChannels[e],s.push(e))})),a.forEach((function(e){e in n._channelGroups&&(delete n._channelGroups[e],u.push(e),e in n._heartbeatChannelGroups&&delete n._heartbeatChannelGroups[e]),e in n._presenceChannelGroups&&(delete n._channelGroups[e],u.push(e))})),0===s.length&&0===u.length||(!1!==this._config.suppressLeaveEvents||t||this._leaveEndpoint({channels:s,channelGroups:u},(function(e){e.affectedChannels=s,e.affectedChannelGroups=u,e.currentTimetoken=n._currentTimetoken,e.lastTimetoken=n._lastTimetoken,n._listenerManager.announceStatus(e)})),0===Object.keys(this._channels).length&&0===Object.keys(this._presenceChannels).length&&0===Object.keys(this._channelGroups).length&&0===Object.keys(this._presenceChannelGroups).length&&(this._lastTimetoken=0,this._currentTimetoken=0,this._storedTimetoken=null,this._region=null,this._reconnectionManager.stopPolling()),this.reconnect())}},{key:"unsubscribeAll",value:function(e){this.adaptUnsubscribeChange({channels:this.getSubscribedChannels(),channelGroups:this.getSubscribedChannelGroups()},e)}},{key:"getHeartbeatChannels",value:function(){return Object.keys(this._heartbeatChannels)}},{key:"getHeartbeatChannelGroups",value:function(){return Object.keys(this._heartbeatChannelGroups)}},{key:"getSubscribedChannels",value:function(){return Object.keys(this._channels)}},{key:"getSubscribedChannelGroups",value:function(){return Object.keys(this._channelGroups)}},{key:"reconnect",value:function(){this._startSubscribeLoop(),this._registerHeartbeatTimer()}},{key:"disconnect",value:function(){this._stopSubscribeLoop(),this._stopHeartbeatTimer(),this._reconnectionManager.stopPolling()}},{key:"_registerHeartbeatTimer",value:function(){this._stopHeartbeatTimer(),0!==this._config.getHeartbeatInterval()&&void 0!==this._config.getHeartbeatInterval()&&(this._performHeartbeatLoop(),this._heartbeatTimer=setInterval(this._performHeartbeatLoop.bind(this),1e3*this._config.getHeartbeatInterval()))}},{key:"_stopHeartbeatTimer",value:function(){this._heartbeatTimer&&(clearInterval(this._heartbeatTimer),this._heartbeatTimer=null)}},{key:"_performHeartbeatLoop",value:function(){var e=this,t=this.getHeartbeatChannels(),n=this.getHeartbeatChannelGroups(),r={};if(0!==t.length||0!==n.length){this.getSubscribedChannels().forEach((function(t){var n=e._channels[t].state;Object.keys(n).length&&(r[t]=n)})),this.getSubscribedChannelGroups().forEach((function(t){var n=e._channelGroups[t].state;Object.keys(n).length&&(r[t]=n)}));this._heartbeatEndpoint({channels:t,channelGroups:n,state:r},function(t){t.error&&e._config.announceFailedHeartbeats&&e._listenerManager.announceStatus(t),t.error&&e._config.autoNetworkDetection&&e._isOnline&&(e._isOnline=!1,e.disconnect(),e._listenerManager.announceNetworkDown(),e.reconnect()),!t.error&&e._config.announceSuccessfulHeartbeats&&e._listenerManager.announceStatus(t)}.bind(this))}}},{key:"_startSubscribeLoop",value:function(){var e=this;this._stopSubscribeLoop();var t={},n=[],r=[];if(Object.keys(this._channels).forEach((function(r){var i=e._channels[r].state;Object.keys(i).length&&(t[r]=i),n.push(r)})),Object.keys(this._presenceChannels).forEach((function(e){n.push("".concat(e,"-pnpres"))})),Object.keys(this._channelGroups).forEach((function(n){var i=e._channelGroups[n].state;Object.keys(i).length&&(t[n]=i),r.push(n)})),Object.keys(this._presenceChannelGroups).forEach((function(e){r.push("".concat(e,"-pnpres"))})),0!==n.length||0!==r.length){var i={channels:n,channelGroups:r,state:t,timetoken:this._currentTimetoken,filterExpression:this._config.filterExpression,region:this._region};this._subscribeCall=this._subscribeEndpoint(i,this._processSubscribeResponse.bind(this))}}},{key:"_processSubscribeResponse",value:function(e,t){var n=this;if(e.error)e.category===f.default.PNTimeoutCategory?this._startSubscribeLoop():e.category===f.default.PNNetworkIssuesCategory?(this.disconnect(),e.error&&this._config.autoNetworkDetection&&this._isOnline&&(this._isOnline=!1,this._listenerManager.announceNetworkDown()),this._reconnectionManager.onReconnection((function(){n._config.autoNetworkDetection&&!n._isOnline&&(n._isOnline=!0,n._listenerManager.announceNetworkUp()),n.reconnect(),n._subscriptionStatusAnnounced=!0;var t={category:f.default.PNReconnectedCategory,operation:e.operation,lastTimetoken:n._lastTimetoken,currentTimetoken:n._currentTimetoken};n._listenerManager.announceStatus(t)})),this._reconnectionManager.startPolling(),this._listenerManager.announceStatus(e)):e.category===f.default.PNBadRequestCategory?(this._stopHeartbeatTimer(),this._listenerManager.announceStatus(e)):this._listenerManager.announceStatus(e);else{if(this._storedTimetoken?(this._currentTimetoken=this._storedTimetoken,this._storedTimetoken=null):(this._lastTimetoken=this._currentTimetoken,this._currentTimetoken=t.metadata.timetoken),!this._subscriptionStatusAnnounced){var r={};r.category=f.default.PNConnectedCategory,r.operation=e.operation,r.affectedChannels=this._pendingChannelSubscriptions,r.subscribedChannels=this.getSubscribedChannels(),r.affectedChannelGroups=this._pendingChannelGroupSubscriptions,r.lastTimetoken=this._lastTimetoken,r.currentTimetoken=this._currentTimetoken,this._subscriptionStatusAnnounced=!0,this._listenerManager.announceStatus(r),this._pendingChannelSubscriptions=[],this._pendingChannelGroupSubscriptions=[]}var o=t.messages||[],a=this._config,s=a.requestMessageCountThreshold,u=a.dedupeOnSubscribe;if(s&&o.length>=s){var c={};c.category=f.default.PNRequestMessageCountExceededCategory,c.operation=e.operation,this._listenerManager.announceStatus(c)}o.forEach((function(e){var t=e.channel,r=e.subscriptionMatch,o=e.publishMetaData;if(t===r&&(r=null),u){if(n._dedupingManager.isDuplicate(e))return;n._dedupingManager.addEntry(e)}if(l.default.endsWith(e.channel,"-pnpres")){var a={channel:null,subscription:null};a.actualChannel=null!=r?t:null,a.subscribedChannel=null!=r?r:t,t&&(a.channel=t.substring(0,t.lastIndexOf("-pnpres"))),r&&(a.subscription=r.substring(0,r.lastIndexOf("-pnpres"))),a.action=e.payload.action,a.state=e.payload.data,a.timetoken=o.publishTimetoken,a.occupancy=e.payload.occupancy,a.uuid=e.payload.uuid,a.timestamp=e.payload.timestamp,e.payload.join&&(a.join=e.payload.join),e.payload.leave&&(a.leave=e.payload.leave),e.payload.timeout&&(a.timeout=e.payload.timeout),n._listenerManager.announcePresence(a)}else if(1===e.messageType){var s={channel:null,subscription:null};s.channel=t,s.subscription=r,s.timetoken=o.publishTimetoken,s.publisher=e.issuingClientId,e.userMetadata&&(s.userMetadata=e.userMetadata),s.message=e.payload,n._listenerManager.announceSignal(s)}else if(2===e.messageType){var c={channel:null,subscription:null};c.channel=t,c.subscription=r,c.timetoken=o.publishTimetoken,c.publisher=e.issuingClientId,e.userMetadata&&(c.userMetadata=e.userMetadata),c.message={event:e.payload.event,type:e.payload.type,data:e.payload.data},n._listenerManager.announceObjects(c),"user"===e.payload.type?n._listenerManager.announceUser(c):"space"===e.payload.type?n._listenerManager.announceSpace(c):"membership"===e.payload.type&&n._listenerManager.announceMembership(c)}else if(3===e.messageType){var f={};f.channel=t,f.subscription=r,f.timetoken=o.publishTimetoken,f.publisher=e.issuingClientId,f.data={messageTimetoken:e.payload.data.messageTimetoken,actionTimetoken:e.payload.data.actionTimetoken,type:e.payload.data.type,uuid:e.issuingClientId,value:e.payload.data.value},f.event=e.payload.event,n._listenerManager.announceMessageAction(f)}else if(4===e.messageType){var d={};d.channel=t,d.subscription=r,d.timetoken=o.publishTimetoken,d.publisher=e.issuingClientId;var p=e.payload;if(n._config.cipherKey){var h=n._crypto.decrypt(e.payload);"object"===(0,i.default)(h)&&null!==h&&(p=h)}e.userMetadata&&(d.userMetadata=e.userMetadata),d.message=p.message,d.file={id:p.file.id,name:p.file.name,url:n._getFileUrl({id:p.file.id,name:p.file.name,channel:t})},n._listenerManager.announceFile(d)}else{var g={channel:null,subscription:null};g.actualChannel=null!=r?t:null,g.subscribedChannel=null!=r?r:t,g.channel=t,g.subscription=r,g.timetoken=o.publishTimetoken,g.publisher=e.issuingClientId,e.userMetadata&&(g.userMetadata=e.userMetadata),n._config.cipherKey?g.message=n._crypto.decrypt(e.payload):g.message=e.payload,n._listenerManager.announceMessage(g)}})),this._region=t.metadata.region,this._startSubscribeLoop()}}},{key:"_stopSubscribeLoop",value:function(){this._subscribeCall&&("function"==typeof this._subscribeCall.abort&&this._subscribeCall.abort(),this._subscribeCall=null)}}]),e}();t.default=d,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),s=(r(n(24)),n(2),function(){function e(t){var n=t.timeEndpoint;(0,i.default)(this,e),(0,a.default)(this,"_reconnectionCallback",void 0),(0,a.default)(this,"_timeEndpoint",void 0),(0,a.default)(this,"_timeTimer",void 0),this._timeEndpoint=n}return(0,o.default)(e,[{key:"onReconnection",value:function(e){this._reconnectionCallback=e}},{key:"startPolling",value:function(){this._timeTimer=setInterval(this._performTimeLoop.bind(this),3e3)}},{key:"stopPolling",value:function(){clearInterval(this._timeTimer)}},{key:"_performTimeLoop",value:function(){var e=this;this._timeEndpoint((function(t){t.error||(clearInterval(e._timeTimer),e._reconnectionCallback())}))}}]),e}());t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),s=(r(n(8)),n(2),function(){function e(t){var n=t.config;(0,i.default)(this,e),(0,a.default)(this,"_config",void 0),(0,a.default)(this,"hashHistory",void 0),this.hashHistory=[],this._config=n}return(0,o.default)(e,[{key:"getKey",value:function(e){var t=function(e){var t=0;if(0===e.length)return t;for(var n=0;n=this._config.maximumCacheSize&&this.hashHistory.shift(),this.hashHistory.push(this.getKey(e))}},{key:"clearHistory",value:function(){this.hashHistory=[]}}]),e}());t.default=s,e.exports=t.default},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var u,c=[],l=!1,f=-1;function d(){l&&u&&(l=!1,u.length?c=u.concat(c):f=-1,c.length&&p())}function p(){if(!l){var e=s(d);l=!0;for(var t=c.length;t;){for(u=c,c=[];++f1)for(var n=1;n0&&(t["l_".concat(n)]=i)})),t}},{key:"startLatencyMeasure",value:function(e,t){e!==s.default.PNSubscribeOperation&&t&&(this._trackedLatencies[t]=Date.now())}},{key:"stopLatencyMeasure",value:function(e,t){if(e!==s.default.PNSubscribeOperation&&t){var n=this._endpointName(e),r=this._latencies[n],i=this._trackedLatencies[t];r||(r=this._latencies[n]=[]),r.push(Date.now()-i),r.length>this._maximumSamplesCount&&r.splice(0,r.length-this._maximumSamplesCount),delete this._trackedLatencies[t]}}},{key:"_averageLatency",value:function(e){return Math.floor(e.reduce((function(e,t){return e+t}),0)/e.length)}},{key:"_endpointName",value:function(e){var t=null;switch(e){case s.default.PNPublishOperation:t="pub";break;case s.default.PNSignalOperation:t="sig";break;case s.default.PNHistoryOperation:case s.default.PNFetchMessagesOperation:case s.default.PNDeleteMessagesOperation:case s.default.PNMessageCounts:t="hist";break;case s.default.PNUnsubscribeOperation:case s.default.PNWhereNowOperation:case s.default.PNHereNowOperation:case s.default.PNHeartbeatOperation:case s.default.PNSetStateOperation:case s.default.PNGetStateOperation:t="pres";break;case s.default.PNAddChannelsToGroupOperation:case s.default.PNRemoveChannelsFromGroupOperation:case s.default.PNChannelGroupsOperation:case s.default.PNRemoveGroupOperation:case s.default.PNChannelsForGroupOperation:t="cg";break;case s.default.PNPushNotificationEnabledChannelsOperation:case s.default.PNRemoveAllPushNotificationsOperation:t="push";break;case s.default.PNCreateUserOperation:case s.default.PNUpdateUserOperation:case s.default.PNDeleteUserOperation:case s.default.PNGetUserOperation:case s.default.PNGetUsersOperation:case s.default.PNCreateSpaceOperation:case s.default.PNUpdateSpaceOperation:case s.default.PNDeleteSpaceOperation:case s.default.PNGetSpaceOperation:case s.default.PNGetSpacesOperation:case s.default.PNGetMembersOperation:case s.default.PNUpdateMembersOperation:case s.default.PNGetMembershipsOperation:case s.default.PNUpdateMembershipsOperation:t="obj";break;case s.default.PNAddMessageActionOperation:case s.default.PNRemoveMessageActionOperation:case s.default.PNGetMessageActionsOperation:t="msga";break;case s.default.PNAccessManagerGrant:case s.default.PNAccessManagerAudit:t="pam";break;case s.default.PNAccessManagerGrantToken:t="pam3";break;default:t="time"}return t}}]),e}();t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.FCMNotificationPayload=t.MPNSNotificationPayload=t.APNSNotificationPayload=void 0;var i=r(n(42)),o=r(n(19)),a=r(n(14)),s=r(n(16)),u=r(n(13)),c=r(n(5)),l=r(n(6)),f=r(n(4));n(2);function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function p(e){for(var t=1;t2){var r=this._payload,o=(r.notification,r.data,(0,i.default)(r,["notification","data"]));e=p(p({},e),o)}return this._isSilent?e.notification=this._payload.notification:t=this._payload.notification,Object.keys(e).length&&(n.data=e),t&&Object.keys(t).length&&(n.notification=t),Object.keys(n).length?n:null}},{key:"notification",get:function(){return this._payload.notification}},{key:"data",get:function(){return this._payload.data}},{key:"title",get:function(){return this._title},set:function(e){e&&e.length&&(this._payload.notification.title=e,this._title=e)}},{key:"body",get:function(){return this._body},set:function(e){e&&e.length&&(this._payload.notification.body=e,this._body=e)}},{key:"sound",get:function(){return this._sound},set:function(e){e&&e.length&&(this._payload.notification.sound=e,this._sound=e)}},{key:"icon",get:function(){return this._icon},set:function(e){e&&e.length&&(this._payload.notification.icon=e,this._icon=e)}},{key:"tag",get:function(){return this._tag},set:function(e){e&&e.length&&(this._payload.notification.tag=e,this._tag=e)}},{key:"silent",set:function(e){this._isSilent=e}}]),n}(g);t.FCMNotificationPayload=b;var m=function(){function e(t,n){(0,c.default)(this,e),(0,f.default)(this,"_payload",void 0),(0,f.default)(this,"_debugging",void 0),(0,f.default)(this,"_subtitle",void 0),(0,f.default)(this,"_badge",void 0),(0,f.default)(this,"_sound",void 0),(0,f.default)(this,"_title",void 0),(0,f.default)(this,"_body",void 0),(0,f.default)(this,"apns",void 0),(0,f.default)(this,"mpns",void 0),(0,f.default)(this,"fcm",void 0),this._payload={apns:{},mpns:{},fcm:{}},this._title=t,this._body=n,this.apns=new v(this._payload.apns,t,n),this.mpns=new y(this._payload.mpns,t,n),this.fcm=new b(this._payload.fcm,t,n)}return(0,l.default)(e,[{key:"debugging",set:function(e){this._debugging=e}},{key:"title",get:function(){return this._title}},{key:"body",get:function(){return this._body}},{key:"subtitle",get:function(){return this._subtitle},set:function(e){this._subtitle=e,this.apns.subtitle=e,this.mpns.subtitle=e,this.fcm.subtitle=e}},{key:"badge",get:function(){return this._badge},set:function(e){this._badge=e,this.apns.badge=e,this.mpns.badge=e,this.fcm.badge=e}},{key:"sound",get:function(){return this._sound},set:function(e){this._sound=e,this.apns.sound=e,this.mpns.sound=e,this.fcm.sound=e}}]),(0,l.default)(e,[{key:"buildPayload",value:function(e){var t={};if(e.includes("apns")||e.includes("apns2")){this.apns._apnsPushType=e.includes("apns")?"apns":"apns2";var n=this.apns.toObject();n&&Object.keys(n).length&&(t.pn_apns=n)}if(e.includes("mpns")){var r=this.mpns.toObject();r&&Object.keys(r).length&&(t.pn_mpns=r)}if(e.includes("fcm")){var i=this.fcm.toObject();i&&Object.keys(i).length&&(t.pn_gcm=i)}return Object.keys(t).length&&this._debugging&&(t.pn_debug=!0),t}}]),e}();t.default=m},function(e,t,n){var r=n(43);e.exports=function(e,t){if(null==e)return{};var n,i,o=r(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),o=r(n(5)),a=r(n(6)),s=r(n(4)),u=(r(n(8)),n(2),function(){function e(t,n){(0,o.default)(this,e),(0,s.default)(this,"_config",void 0),(0,s.default)(this,"_cbor",void 0),(0,s.default)(this,"_userTokens",void 0),(0,s.default)(this,"_spaceTokens",void 0),(0,s.default)(this,"_userToken",void 0),(0,s.default)(this,"_spaceToken",void 0),this._config=t,this._cbor=n,this._initializeTokens()}return(0,a.default)(e,[{key:"_initializeTokens",value:function(){this._userTokens={},this._spaceTokens={},this._userToken=void 0,this._spaceToken=void 0}},{key:"_setToken",value:function(e){var t=this,n=this.parseToken(e);n&&n.resources&&(n.resources.users&&Object.keys(n.resources.users).forEach((function(n){t._userTokens[n]=e})),n.resources.spaces&&Object.keys(n.resources.spaces).forEach((function(n){t._spaceTokens[n]=e}))),n&&n.patterns&&(n.patterns.users&&Object.keys(n.patterns.users).length>0&&(this._userToken=e),n.patterns.spaces&&Object.keys(n.patterns.spaces).length>0&&(this._spaceToken=e))}},{key:"setToken",value:function(e){e&&e.length>0&&this._setToken(e)}},{key:"setTokens",value:function(e){var t=this;e&&e.length&&"object"===(0,i.default)(e)&&e.forEach((function(e){t.setToken(e)}))}},{key:"getTokens",value:function(e){var t=this,n={users:{},spaces:{}};return e?(e.user&&(n.user=this._userToken),e.space&&(n.space=this._spaceToken),e.users&&e.users.forEach((function(e){n.users[e]=t._userTokens[e]})),e.space&&e.spaces.forEach((function(e){n.spaces[e]=t._spaceTokens[e]}))):(this._userToken&&(n.user=this._userToken),this._spaceToken&&(n.space=this._spaceToken),Object.keys(this._userTokens).forEach((function(e){n.users[e]=t._userTokens[e]})),Object.keys(this._spaceTokens).forEach((function(e){n.spaces[e]=t._spaceTokens[e]}))),n}},{key:"getToken",value:function(e,t){var n;return t?"user"===e?n=this._userTokens[t]:"space"===e&&(n=this._spaceTokens[t]):"user"===e?n=this._userToken:"space"===e&&(n=this._spaceToken),n}},{key:"extractPermissions",value:function(e){var t={create:!1,read:!1,write:!1,manage:!1,delete:!1};return 16==(16&e)&&(t.create=!0),8==(8&e)&&(t.delete=!0),4==(4&e)&&(t.manage=!0),2==(2&e)&&(t.write=!0),1==(1&e)&&(t.read=!0),t}},{key:"parseToken",value:function(e){var t=this,n=this._cbor.decodeToken(e);if(void 0!==n){var r=Object.keys(n.res.usr),i=Object.keys(n.res.spc),o=Object.keys(n.res.chan),a=Object.keys(n.res.grp),s=Object.keys(n.pat.usr),u=Object.keys(n.pat.spc),c=Object.keys(n.pat.chan),l=Object.keys(n.pat.grp),f={version:n.v,timestamp:n.t,ttl:n.ttl},d=r.length>0,p=i.length>0,h=o.length>0,g=a.length>0;(d||p||h||g)&&(f.resources={},d&&(f.resources.users={},r.forEach((function(e){f.resources.users[e]=t.extractPermissions(n.res.usr[e])}))),p&&(f.resources.spaces={},i.forEach((function(e){f.resources.spaces[e]=t.extractPermissions(n.res.spc[e])}))),h&&(f.resources.channels={},o.forEach((function(e){f.resources.channels[e]=t.extractPermissions(n.res.chan[e])}))),g&&(f.resources.groups={},a.forEach((function(e){f.resources.groups[e]=t.extractPermissions(n.res.grp[e])}))));var v=s.length>0,y=u.length>0,b=c.length>0,m=l.length>0;return(v||y||b||m)&&(f.patterns={},v&&(f.patterns.users={},s.forEach((function(e){f.patterns.users[e]=t.extractPermissions(n.pat.usr[e])}))),y&&(f.patterns.spaces={},u.forEach((function(e){f.patterns.spaces[e]=t.extractPermissions(n.pat.spc[e])}))),b&&(f.patterns.channels={},c.forEach((function(e){f.patterns.channels[e]=t.extractPermissions(n.pat.chan[e])}))),m&&(f.patterns.groups={},l.forEach((function(e){f.patterns.groups[e]=t.extractPermissions(n.pat.grp[e])})))),Object.keys(n.meta).length>0&&(f.meta=n.meta),f.signature=n.sig,f}}},{key:"clearTokens",value:function(){this._initializeTokens()}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){var r=n(13),i=n(15),o=n(46),a=n(47);function s(t){var n="function"==typeof Map?new Map:void 0;return e.exports=s=function(e){if(null===e||!o(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(e))return n.get(e);n.set(e,t)}function t(){return a(e,arguments,r(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),i(t,e)},s(t)}e.exports=s},function(e,t){e.exports=function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}},function(e,t,n){var r=n(15),i=n(48);function o(t,n,a){return i()?e.exports=o=Reflect.construct:e.exports=o=function(e,t,n){var i=[null];i.push.apply(i,t);var o=new(Function.bind.apply(e,i));return n&&r(o,n.prototype),o},o.apply(null,arguments)}e.exports=o},function(e,t){e.exports=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAddChannelsToGroupOperation},t.validateParams=function(e,t){var n=t.channels,r=t.channelGroup,i=e.config;if(!r)return"Missing Channel Group";if(!n||0===n.length)return"Missing Channels";if(!i.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(o.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels;return{add:(void 0===n?[]:n).join(",")}},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveChannelsFromGroupOperation},t.validateParams=function(e,t){var n=t.channels,r=t.channelGroup,i=e.config;if(!r)return"Missing Channel Group";if(!n||0===n.length)return"Missing Channels";if(!i.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(o.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels;return{remove:(void 0===n?[]:n).join(",")}},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveGroupOperation},t.validateParams=function(e,t){var n=t.channelGroup,r=e.config;if(!n)return"Missing Channel Group";if(!r.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(o.default.encodeString(n),"/remove")},t.isAuthSupported=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.prepareParams=function(){return{}},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNChannelGroupsOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e){var t=e.config;return"/v1/channel-registration/sub-key/".concat(t.subscribeKey,"/channel-group")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return{groups:t.payload.groups}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNChannelsForGroupOperation},t.validateParams=function(e,t){var n=t.channelGroup,r=e.config;if(!n)return"Missing Channel Group";if(!r.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(o.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return{channels:t.payload.channels}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.channels,o=t.topic,a=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!o)return"Missing APNS2 topic";if(!i||0===i.length)return"Missing Channels";if(!a.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.channels,i=void 0===r?[]:r,o=t.environment,a=void 0===o?"development":o,s=t.topic,u={type:n,add:i.join(",")};"apns2"===n&&delete(u=Object.assign({},u,{environment:a,topic:s})).type;return u},t.handleResponse=function(){return{}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.channels,o=t.topic,a=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!o)return"Missing APNS2 topic";if(!i||0===i.length)return"Missing Channels";if(!a.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.channels,i=void 0===r?[]:r,o=t.environment,a=void 0===o?"development":o,s=t.topic,u={type:n,remove:i.join(",")};"apns2"===n&&delete(u=Object.assign({},u,{environment:a,topic:s})).type;return u},t.handleResponse=function(){return{}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.topic,o=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!i)return"Missing APNS2 topic";if(!o.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.environment,i=void 0===r?"development":r,o=t.topic,a={type:n};"apns2"===n&&delete(a=Object.assign({},a,{environment:i,topic:o})).type;return a},t.handleResponse=function(e,t){return{channels:t}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveAllPushNotificationsOperation},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.topic,o=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!i)return"Missing APNS2 topic";if(!o.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n,"/remove");return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n,"/remove")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.environment,i=void 0===r?"development":r,o=t.topic,a={type:n};"apns2"===n&&delete(a=Object.assign({},a,{environment:i,topic:o})).type;return a},t.handleResponse=function(){return{}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUnsubscribeOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(a),"/leave")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i={};r.length>0&&(i["channel-group"]=r.join(","));return i},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNWhereNowOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.uuid,i=void 0===r?n.UUID:r;return"/v2/presence/sub-key/".concat(n.subscribeKey,"/uuid/").concat(o.default.encodeString(i))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){if(!t.payload)return{channels:[]};return{channels:t.payload.channels}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNHeartbeatOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(a),"/heartbeat")},t.isAuthSupported=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i=t.state,o=void 0===i?{}:i,a=e.config,s={};r.length>0&&(s["channel-group"]=r.join(","));return s.state=JSON.stringify(o),s.heartbeat=a.getPresenceTimeout(),s},t.handleResponse=function(){return{}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetStateOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.uuid,i=void 0===r?n.UUID:r,a=t.channels,s=void 0===a?[]:a,u=s.length>0?s.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(u),"/uuid/").concat(i)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i={};r.length>0&&(i["channel-group"]=r.join(","));return i},t.handleResponse=function(e,t,n){var r=n.channels,i=void 0===r?[]:r,o=n.channelGroups,a=void 0===o?[]:o,s={};1===i.length&&0===a.length?s[i[0]]=t.payload:s=t.payload;return{channels:s}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSetStateOperation},t.validateParams=function(e,t){var n=e.config,r=t.state,i=t.channels,o=void 0===i?[]:i,a=t.channelGroups,s=void 0===a?[]:a;if(!r)return"Missing State";if(!n.subscribeKey)return"Missing Subscribe Key";if(0===o.length&&0===s.length)return"Please provide a list of channels and/or channel-groups"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(a),"/uuid/").concat(o.default.encodeString(n.UUID),"/data")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.state,r=t.channelGroups,i=void 0===r?[]:r,o={};o.state=JSON.stringify(n),i.length>0&&(o["channel-group"]=i.join(","));return o},t.handleResponse=function(e,t){return{state:t.payload}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return o.default.PNHereNowOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=t.channelGroups,s=void 0===o?[]:o,u="/v2/presence/sub-key/".concat(n.subscribeKey);if(i.length>0||s.length>0){var c=i.length>0?i.join(","):",";u+="/channel/".concat(a.default.encodeString(c))}return u},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i=t.includeUUIDs,o=void 0===i||i,a=t.includeState,s=void 0!==a&&a,c=t.queryParameters,l=void 0===c?{}:c,f={};o||(f.disable_uuids=1);s&&(f.state=1);r.length>0&&(f["channel-group"]=r.join(","));return f=u(u({},f),l)},t.handleResponse=function(e,t,n){var r,i=n.channels,o=void 0===i?[]:i,a=n.channelGroups,s=void 0===a?[]:a,u=n.includeUUIDs,c=void 0===u||u,l=n.includeState,f=void 0!==l&&l;r=o.length>1||s.length>0||0===s.length&&0===o.length?function(){var e={};return e.totalChannels=t.payload.total_channels,e.totalOccupancy=t.payload.total_occupancy,e.channels={},Object.keys(t.payload.channels).forEach((function(n){var r=t.payload.channels[n],i=[];return e.channels[n]={occupants:i,name:n,occupancy:r.occupancy},c&&r.uuids.forEach((function(e){f?i.push({state:e.state,uuid:e.uuid}):i.push({state:null,uuid:e})})),e})),e}():function(){var e={},n=[];return e.totalChannels=1,e.totalOccupancy=t.occupancy,e.channels={},e.channels[o[0]]={occupants:n,name:o[0],occupancy:t.occupancy},c&&t.uuids&&t.uuids.forEach((function(e){f?n.push({state:e.state,uuid:e.uuid}):n.push({state:null,uuid:e})})),e}();return r},t.handleError=function(e,t,n){402!==n.statusCode||this.getURL(e,t).includes("channel")||(n.errorData.message="You have tried to perform a Global Here Now operation, your keyset configuration does not support that. Please provide a channel, or enable the Global Here Now feature from the Portal.")};var i=r(n(4)),o=(n(2),r(n(1))),a=r(n(3));function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function u(e){for(var t=1;t15)return"Action.type value exceed maximum length of 15"},t.usePost=function(){return!0},t.postURL=function(e,t){var n=e.config,r=t.channel,i=t.messageTimetoken;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(r),"/message/").concat(i)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getRequestHeaders=function(){return{"Content-Type":"application/json"}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.postPayload=function(e,t){return t.action},t.handleResponse=function(e,t){return{data:t.data}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveMessageActionOperation},t.validateParams=function(e,t){var n=e.config,r=t.channel,i=t.actionTimetoken;if(!t.messageTimetoken)return"Missing message timetoken";if(!i)return"Missing action timetoken";if(!n.subscribeKey)return"Missing Subscribe Key";if(!r)return"Missing message channel"},t.useDelete=function(){return!0},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.actionTimetoken,a=t.messageTimetoken;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(r),"/message/").concat(a,"/action/").concat(i)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return{data:t.data}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMessageActionsOperation},t.validateParams=function(e,t){var n=e.config,r=t.channel;if(!n.subscribeKey)return"Missing Subscribe Key";if(!r)return"Missing message channel"},t.getURL=function(e,t){var n=e.config,r=t.channel;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(r))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.limit,r=t.start,i=t.end,o={};n&&(o.limit=n);r&&(o.start=r);i&&(o.end=i);return o},t.handleResponse=function(e,t){var n={data:t.data,start:null,end:null};n.data.length&&(n.end=n.data[n.data.length-1].actionTimetoken,n.start=n.data[0].actionTimetoken);return n};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),o=r(n(3)),a={getOperation:function(){return i.default.PNListFilesOperation},validateParams:function(e,t){if(!(null==t?void 0:t.channel))return"channel can't be empty"},getURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(o.default.encodeString(t.channel),"/files")},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("fileUpload")},prepareParams:function(e,t){var n={};return t.limit&&(n.limit=t.limit),t.next&&(n.next=t.next),n},handleResponse:function(e,t){return{status:t.status,data:t.data,next:t.next,count:t.count}}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),o=r(n(3)),a={getOperation:function(){return i.default.PNGenerateUploadUrlOperation},validateParams:function(e,t){return(null==t?void 0:t.channel)?(null==t?void 0:t.name)?void 0:"name can't be empty":"channel can't be empty"},usePost:function(){return!0},postURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(o.default.encodeString(t.channel),"/generate-upload-url")},postPayload:function(e,t){return{name:t.name}},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("fileUpload")},prepareParams:function(){return{}},handleResponse:function(e,t){return{status:t.status,data:t.data,file_upload_request:t.file_upload_request}}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),o=r(n(1)),a=r(n(3)),s={getOperation:function(){return o.default.PNPublishFileOperation},validateParams:function(e,t){return(null==t?void 0:t.channel)?(null==t?void 0:t.fileId)?(null==t?void 0:t.fileName)?void 0:"file name can't be empty":"file id can't be empty":"channel can't be empty"},getURL:function(e,t){var n=e.config,r=n.publishKey,i=n.subscribeKey,o=function(e,t){var n=e.crypto,r=e.config,i=JSON.stringify(t);return r.cipherKey&&(i=n.encrypt(i),i=JSON.stringify(i)),i||""}(e,{message:t.message,file:{name:t.fileName,id:t.fileId}});return"/v1/files/publish-file/".concat(r,"/").concat(i,"/0/").concat(a.default.encodeString(t.channel),"/0/").concat(a.default.encodeString(o))},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("fileUpload")},prepareParams:function(e,t){var n={};return t.ttl&&(n.ttl=t.ttl),void 0!==t.storeInHistory&&(n.store=t.storeInHistory?"1":"0"),t.meta&&"object"===(0,i.default)(t.meta)&&(n.meta=JSON.stringify(t.meta)),n},handleResponse:function(e,t){return{timetoken:t[2]}}};t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(11)),o=r(n(12)),a=n(18),s=function(e){return new Promise((function(t){var n="";e.on("data",(function(e){n+=e.toString("utf8")})),e.on("end",(function(){t(n)}))}))};t.default=function(e){var t,n,r,u,c,l,f,d,p,h=(r=(t=e).generateUploadUrl,u=t.publishFile,c=t.modules,l=c.PubNubFile,f=c.config,d=c.cryptography,p=c.networking,n=(0,o.default)(i.default.mark((function e(t){var n,o,c,h,g,v,y,b,m,_,k,P,w,O,T,S,A,M,E,x,R,C;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.channel,o=t.file,c=t.message,h=t.cipherKey,g=t.meta,v=t.ttl,y=t.storeInHistory,n){e.next=3;break}throw new a.PubNubError("Validation failed, check status for details",(0,a.createValidationError)("channel can't be empty"));case 3:if(o){e.next=5;break}throw new a.PubNubError("Validation failed, check status for details",(0,a.createValidationError)("file can't be empty"));case 5:return b=l.create(o),e.next=8,r({channel:n,name:b.name});case 8:if(m=e.sent,_=m.file_upload_request,k=_.url,P=_.form_fields,w=m.data,O=w.id,T=w.name,!l.supportsEncryptFile||!(null!=h?h:f.cipherKey)){e.next=19;break}return e.next=18,d.encryptFile(null!=h?h:f.cipherKey,b,l);case 18:b=e.sent;case 19:if(S=P,b.mimeType&&(S=P.map((function(e){return"Content-Type"===e.key?{key:e.key,value:b.mimeType}:e}))),e.prev=21,!l.supportsFileUri||!o.uri){e.next=34;break}return e.t0=p,e.t1=k,e.t2=S,e.next=28,b.toFileUri();case 28:return e.t3=e.sent,e.next=31,e.t0.POSTFILE.call(e.t0,e.t1,e.t2,e.t3);case 31:A=e.sent,e.next=71;break;case 34:if(!l.supportsFile){e.next=46;break}return e.t4=p,e.t5=k,e.t6=S,e.next=40,b.toFile();case 40:return e.t7=e.sent,e.next=43,e.t4.POSTFILE.call(e.t4,e.t5,e.t6,e.t7);case 43:A=e.sent,e.next=71;break;case 46:if(!l.supportsBuffer){e.next=58;break}return e.t8=p,e.t9=k,e.t10=S,e.next=52,b.toBuffer();case 52:return e.t11=e.sent,e.next=55,e.t8.POSTFILE.call(e.t8,e.t9,e.t10,e.t11);case 55:A=e.sent,e.next=71;break;case 58:if(!l.supportsBlob){e.next=70;break}return e.t12=p,e.t13=k,e.t14=S,e.next=64,b.toBlob();case 64:return e.t15=e.sent,e.next=67,e.t12.POSTFILE.call(e.t12,e.t13,e.t14,e.t15);case 67:A=e.sent,e.next=71;break;case 70:throw new Error("Unsupported environment");case 71:e.next=80;break;case 73:return e.prev=73,e.t16=e.catch(21),e.next=77,s(e.t16.response);case 77:throw M=e.sent,E=/(.*)<\/Message>/gi.exec(M),new a.PubNubError(E?"Upload to bucket failed: ".concat(E[1]):"Upload to bucket failed.",e.t16);case 80:if(204===A.status){e.next=82;break}throw new a.PubNubError("Upload to bucket was unsuccessful",A);case 82:x=5,R=!1,C={timetoken:"0"};case 85:if(R||!(x>0)){e.next=98;break}return e.prev=86,e.next=89,u({channel:n,message:c,fileId:O,fileName:T,meta:g,storeInHistory:y,ttl:v});case 89:C=e.sent,R=!0,e.next=96;break;case 93:e.prev=93,e.t17=e.catch(86),x-=1;case 96:e.next=85;break;case 98:if(R){e.next=102;break}throw new a.PubNubError("Publish failed. You may want to execute that operation manually using pubnub.publishFile",{channel:n,id:O,name:T});case 102:return e.abrupt("return",{timetoken:C.timetoken,id:O,name:T});case 103:case"end":return e.stop()}}),e,null,[[21,73],[86,93]])}))),function(e){return n.apply(this,arguments)});return function(e,t){var n=h(e);return"function"==typeof t?(n.then((function(e){return t(null,e)})).catch((function(e){return t(e,null)})),n):n}},e.exports=t.default},function(e,t,n){var r=function(e){"use strict";var t=Object.prototype,n=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",o=r.asyncIterator||"@@asyncIterator",a=r.toStringTag||"@@toStringTag";function s(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,n){return e[t]=n}}function u(e,t,n,r){var i=t&&t.prototype instanceof f?t:f,o=Object.create(i.prototype),a=new w(r||[]);return o._invoke=function(e,t,n){var r="suspendedStart";return function(i,o){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw o;return T()}for(n.method=i,n.arg=o;;){var a=n.delegate;if(a){var s=_(a,n);if(s){if(s===l)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var u=c(e,t,n);if("normal"===u.type){if(r=n.done?"completed":"suspendedYield",u.arg===l)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(r="completed",n.method="throw",n.arg=u.arg)}}}(e,n,a),o}function c(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var l={};function f(){}function d(){}function p(){}var h={};h[i]=function(){return this};var g=Object.getPrototypeOf,v=g&&g(g(O([])));v&&v!==t&&n.call(v,i)&&(h=v);var y=p.prototype=f.prototype=Object.create(h);function b(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function m(e,t){var r;this._invoke=function(i,o){function a(){return new t((function(r,a){!function r(i,o,a,s){var u=c(e[i],e,o);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==typeof f&&n.call(f,"__await")?t.resolve(f.__await).then((function(e){r("next",e,a,s)}),(function(e){r("throw",e,a,s)})):t.resolve(f).then((function(e){l.value=e,a(l)}),(function(e){return r("throw",e,a,s)}))}s(u.arg)}(i,o,r,a)}))}return r=r?r.then(a,a):a()}}function _(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method))return l;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var r=c(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,l;var i=r.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,l):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,l)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function w(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function O(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),u=n.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),P(n),l}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;P(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:O(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),l}},e}(e.exports);try{regeneratorRuntime=r}catch(e){Function("r","regeneratorRuntime = r")(r)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=n(18),o=r(n(3));t.default=function(e,t){var n=t.channel,r=t.id,a=t.name,s=e.config;if(!n)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("channel can't be empty"));if(!r)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("file id can't be empty"));if(!a)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("file name can't be empty"));var u="/v1/files/".concat(s.subscribeKey,"/channels/").concat(o.default.encodeString(n),"/files/").concat(r,"/").concat(a),c={};c.uuid=s.getUUID(),c.pnsdk=(0,i.generatePNSDK)(s),s.getAuthKey()&&(c.auth=s.getAuthKey()),s.secretKey&&(0,i.signRequest)(e,u,c,{},{getOperation:function(){return"PubNubGetFileUrlOperation"}});var l=Object.keys(c).map((function(e){return"".concat(encodeURIComponent(e),"=").concat(encodeURIComponent(c[e]))})).join("&");return""!==l?"https://".concat(s.origin).concat(u,"?").concat(l):"https://".concat(s.origin).concat(u)},e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i,o=r(n(11)),a=r(n(12)),s=r(n(1)),u=r(n(3)),c={getOperation:function(){return s.default.PNDownloadFileOperation},validateParams:function(e,t){return(null==t?void 0:t.channel)?(null==t?void 0:t.name)?(null==t?void 0:t.id)?void 0:"id can't be empty":"name can't be empty":"channel can't be empty"},useGetFile:function(){return!0},getFileURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(u.default.encodeString(t.channel),"/files/").concat(t.id,"/").concat(t.name)},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},ignoreBody:function(){return!0},forceBuffered:function(){return!0},prepareParams:function(){return{}},handleResponse:(i=(0,a.default)(o.default.mark((function e(t,n,r){var i,a,s,u,c,l;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a=t.PubNubFile,s=t.config,u=t.cryptography,c=n.response.body,!a.supportsEncryptFile||!s.cipherKey){e.next=6;break}return e.next=5,u.decrypt(null!==(l=r.cipherKey)&&void 0!==l?l:s.cipherKey,c);case 5:c=e.sent;case 6:return e.abrupt("return",a.create({data:c,name:null!==(i=n.response.name)&&void 0!==i?i:r.name,mimeType:n.response.type}));case 7:case"end":return e.stop()}}),e)}))),function(e,t,n){return i.apply(this,arguments)})};t.default=c,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),o=r(n(3)),a={getOperation:function(){return i.default.PNListFilesOperation},validateParams:function(e,t){return(null==t?void 0:t.channel)?(null==t?void 0:t.id)?(null==t?void 0:t.name)?void 0:"file name can't be empty":"file id can't be empty":"channel can't be empty"},useDelete:function(){return!0},getURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(o.default.encodeString(t.channel),"/files/").concat(t.id,"/").concat(t.name)},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("fileUpload")},prepareParams:function(){return{}},handleResponse:function(e,t){return{status:t.status}}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(9)),o=r(n(1)),a={getOperation:function(){return o.default.PNGetAllUUIDMetadataOperation},validateParams:function(){},getURL:function(e){var t=e.config;return"/v2/objects/".concat(t.subscribeKey,"/uuids")},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},getAuthToken:function(e){return e.tokenManager.getToken("user")},prepareParams:function(e,t){var n,r,o,a,s,u,c,l,f,d={};((null==t||null===(n=t.include)||void 0===n?void 0:n.customFields)&&(d.include="custom"),null==t||null===(r=t.include)||void 0===r?void 0:r.totalCount)&&(d.count=null===(u=t.include)||void 0===u?void 0:u.totalCount);(null==t||null===(o=t.page)||void 0===o?void 0:o.next)&&(d.start=null===(c=t.page)||void 0===c?void 0:c.next);(null==t||null===(a=t.page)||void 0===a?void 0:a.prev)&&(d.end=null===(l=t.page)||void 0===l?void 0:l.prev);((null==t?void 0:t.filter)&&(d.filter=t.filter),d.limit=null!==(s=null==t?void 0:t.limit)&&void 0!==s?s:100,null==t?void 0:t.sort)&&(d.sort=Object.entries(null!==(f=t.sort)&&void 0!==f?f:{}).map((function(e){var t=(0,i.default)(e,2),n=t[0],r=t[1];return"asc"===r||"desc"===r?"".concat(n,":").concat(r):n})));return d},handleResponse:function(e,t){return{status:t.status,data:t.data,totalCount:t.totalCount,next:t.next,prev:t.prev}}};t.default=a,e.exports=t.default},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,i=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(e){i=!0,o=e}finally{try{r||null==s.return||s.return()}finally{if(i)throw o}}return n}}},function(e,t,n){var r=n(80);e.exports=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&(r.include=o)}return r},t.postPayload=function(e,t){return function(e,t){return t}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateUserOperation},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,o=t.custom;if(!r)return"Missing User.id";if(!i)return"Missing User.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(o&&!Object.values(o).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."},t.usePatch=function(){return!0},t.getURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(r))},t.patchURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(r))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.id)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.patchPayload=function(e,t){return function(e,t){return t}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteUserOperation},t.validateParams=function(e,t){var n=e.config;if(!t)return"Missing UserId";if(!n.subscribeKey)return"Missing Subscribe Key"},t.useDelete=function(){return!0},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t)||e.tokenManager.getToken("user")},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetUserOperation},t.validateParams=function(e,t){if(!t.userId)return"Missing userId"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetUsersOperation},t.validateParams=function(){},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/users")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e){return e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o=t.filter,a={};r&&(a.limit=r);if(n){var s=[];n.totalCount&&(a.count=!0),n.customFields&&s.push("custom");var u=s.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));o&&(a.filter=o);return a},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNCreateSpaceOperation},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,o=t.custom;if(!r)return"Missing Space.id";if(!i)return"Missing Space.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(o&&!Object.values(o).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."},t.usePost=function(){return!0},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.postURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.id)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.postPayload=function(e,t){return function(e,t){return t}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateSpaceOperation},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,o=t.custom;if(!r)return"Missing Space.id";if(!i)return"Missing Space.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(o&&!Object.values(o).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."},t.usePatch=function(){return!0},t.getURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(r))},t.patchURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(r))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.id)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.patchPayload=function(e,t){return function(e,t){return t}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteSpaceOperation},t.validateParams=function(e,t){var n=e.config;if(!t)return"Missing SpaceId";if(!n.subscribeKey)return"Missing Subscribe Key"},t.useDelete=function(){return!0},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t)||e.tokenManager.getToken("space")},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetSpacesOperation},t.validateParams=function(){},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e){return e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o=t.filter,a={};r&&(a.limit=r);if(n){var s=[];n.totalCount&&(a.count=!0),n.customFields&&s.push("custom");var u=s.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));o&&(a.filter=o);return a},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetSpaceOperation},t.validateParams=function(e,t){if(!t.spaceId)return"Missing spaceId"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMembersOperation},t.validateParams=function(e,t){if(!t.spaceId)return"Missing spaceId"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o=t.filter,a={};r&&(a.limit=r);if(n){var s=[];n.totalCount&&(a.count=!0),n.customFields&&s.push("custom"),n.userFields&&s.push("user"),n.customUserFields&&s.push("user.custom");var u=s.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));o&&(a.filter=o);return a},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var s=a.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.patchPayload=function(e,t){return function(e,t){var n=t.users,r={};n&&n.length>0&&(r.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),r.add.push(t)})));return r}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var s=a.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.patchPayload=function(e,t){return function(e,t){var n=t.addMembers,r=t.updateMembers,i=t.removeMembers,o=t.users,a={};n&&n.length>0&&(a.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.add.push(t)})));r&&r.length>0&&(a.update=[],r.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.update.push(t)})));o&&o.length>0&&(a.update=a.update||[],o.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.update.push(t)})));i&&i.length>0&&(a.remove=[],i.forEach((function(e){a.remove.push({id:e})})));return a}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("space",t.spaceId)||e.tokenManager.getToken("space")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var s=a.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.patchPayload=function(e,t){return function(e,t){var n=t.users,r={};n&&n.length>0&&(r.remove=[],n.forEach((function(e){r.remove.push({id:e})})));return r}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMembershipsOperation},t.validateParams=function(e,t){if(!t.userId)return"Missing userId"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o=t.filter,a={};r&&(a.limit=r);if(n){var s=[];n.totalCount&&(a.count=!0),n.customFields&&s.push("custom"),n.spaceFields&&s.push("space"),n.customSpaceFields&&s.push("space.custom");var u=s.join(",");u.length>0&&(a.include=u)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));o&&(a.filter=o);return a},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var s=a.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.patchPayload=function(e,t){return function(e,t){var n=t.addMemberships,r=t.updateMemberships,i=t.removeMemberships,o=t.spaces,a={};n&&n.length>0&&(a.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.add.push(t)})));r&&r.length>0&&(a.update=[],r.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.update.push(t)})));o&&o.length>0&&(a.update=a.update||[],o.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.update.push(t)})));i&&i.length>0&&(a.remove=[],i.forEach((function(e){a.remove.push({id:e})})));return a}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var s=a.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.patchPayload=function(e,t){return function(e,t){var n=t.spaces,r={};n&&n.length>0&&(r.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),r.add.push(t)})));return r}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.usePatch=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.getAuthToken=function(e,t){return e.tokenManager.getToken("user",t.userId)||e.tokenManager.getToken("user")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var s=a.join(",");s.length>0&&(o.include=s)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.patchPayload=function(e,t){return function(e,t){var n=t.spaces,r={};n&&n.length>0&&(r.remove=[],n.forEach((function(e){r.remove.push({id:e})})));return r}(0,t)},t.handleResponse=function(e,t){return t};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerAudit},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e){var t=e.config;return"/v2/auth/audit/sub-key/".concat(t.subscribeKey)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!1},t.prepareParams=function(e,t){var n=t.channel,r=t.channelGroup,i=t.authKeys,o=void 0===i?[]:i,a={};n&&(a.channel=n);r&&(a["channel-group"]=r);o.length>0&&(a.auth=o.join(","));return a},t.handleResponse=function(e,t){return t.payload};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerGrant},t.validateParams=function(e,t){var n=e.config;if(!n.subscribeKey)return"Missing Subscribe Key";if(!n.publishKey)return"Missing Publish Key";if(!n.secretKey)return"Missing Secret Key";if(null!=t.uuids&&!t.authKeys)return"authKeys are required for grant request on uuids";if(null!=t.uuids&&(null!=t.channels||null!=t.channelGroups))return"Both channel/channelgroup and uuid cannot be used in the same request"},t.getURL=function(e){var t=e.config;return"/v2/auth/grant/sub-key/".concat(t.subscribeKey)},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!1},t.prepareParams=function(e,t){var n=t.channels,r=void 0===n?[]:n,i=t.channelGroups,o=void 0===i?[]:i,a=t.uuids,s=void 0===a?[]:a,u=t.ttl,c=t.read,l=void 0!==c&&c,f=t.write,d=void 0!==f&&f,p=t.manage,h=void 0!==p&&p,g=t.get,v=void 0!==g&&g,y=t.join,b=void 0!==y&&y,m=t.update,_=void 0!==m&&m,k=t.authKeys,P=void 0===k?[]:k,w=t.delete,O={};O.r=l?"1":"0",O.w=d?"1":"0",O.m=h?"1":"0",O.d=w?"1":"0",O.g=v?"1":"0",O.j=b?"1":"0",O.u=_?"1":"0",r.length>0&&(O.channel=r.join(","));o.length>0&&(O["channel-group"]=o.join(","));P.length>0&&(O.auth=P.join(","));s.length>0&&(O["target-uuid"]=s.join(","));(u||0===u)&&(O.ttl=u);return O},t.handleResponse=function(){return{}};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerGrantToken},t.extractPermissions=o,t.validateParams=function(e,t){var n=e.config;if(!n.subscribeKey)return"Missing Subscribe Key";if(!n.publishKey)return"Missing Publish Key";if(!n.secretKey)return"Missing Secret Key";if(!t.resources&&!t.patterns)return"Missing either Resources or Patterns.";if(t.resources&&(!t.resources.users||0===Object.keys(t.resources.users).length)&&(!t.resources.spaces||0===Object.keys(t.resources.spaces).length)&&(!t.resources.channels||0===Object.keys(t.resources.channels).length)&&(!t.resources.groups||0===Object.keys(t.resources.groups).length)||t.patterns&&(!t.patterns.users||0===Object.keys(t.patterns.users).length)&&(!t.patterns.spaces||0===Object.keys(t.patterns.spaces).length)&&(!t.patterns.channels||0===Object.keys(t.patterns.channels).length)&&(!t.patterns.groups||0===Object.keys(t.patterns.groups).length))return"Missing values for either Resources or Patterns."},t.postURL=function(e){var t=e.config;return"/v3/pam/".concat(t.subscribeKey,"/grant")},t.usePost=function(){return!0},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!1},t.prepareParams=function(){return{}},t.postPayload=function(e,t){return function(e,t){var n=t.ttl,r=t.resources,i=t.patterns,a=t.meta,s={ttl:0,permissions:{resources:{channels:{},groups:{},users:{},spaces:{}},patterns:{channels:{},groups:{},users:{},spaces:{}},meta:{}}};if(r){var u=r.users,c=r.spaces,l=r.channels,f=r.groups;u&&Object.keys(u).forEach((function(e){s.permissions.resources.users[e]=o(u[e])})),c&&Object.keys(c).forEach((function(e){s.permissions.resources.spaces[e]=o(c[e])})),l&&Object.keys(l).forEach((function(e){s.permissions.resources.channels[e]=o(l[e])})),f&&Object.keys(f).forEach((function(e){s.permissions.resources.groups[e]=o(f[e])}))}if(i){var d=i.users,p=i.spaces,h=i.channels,g=i.groups;d&&Object.keys(d).forEach((function(e){s.permissions.patterns.users[e]=o(d[e])})),p&&Object.keys(p).forEach((function(e){s.permissions.patterns.spaces[e]=o(p[e])})),h&&Object.keys(h).forEach((function(e){s.permissions.patterns.channels[e]=o(h[e])})),g&&Object.keys(g).forEach((function(e){s.permissions.patterns.groups[e]=o(g[e])}))}(n||0===n)&&(s.ttl=n);a&&(s.permissions.meta=a);return s}(0,t)},t.handleResponse=function(e,t){return t.data.token};n(2);var i=r(n(1));function o(e){var t=0;return e.create&&(t|=16),e.delete&&(t|=8),e.manage&&(t|=4),e.write&&(t|=2),e.read&&(t|=1),t}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return o.default.PNPublishOperation},t.validateParams=function(e,t){var n=e.config,r=t.message;if(!t.channel)return"Missing Channel";if(!r)return"Missing Message";if(!n.subscribeKey)return"Missing Subscribe Key"},t.usePost=function(e,t){var n=t.sendByPost;return void 0!==n&&n},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.message,o=s(e,i);return"/publish/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(a.default.encodeString(r),"/0/").concat(a.default.encodeString(o))},t.postURL=function(e,t){var n=e.config,r=t.channel;return"/publish/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(a.default.encodeString(r),"/0")},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.postPayload=function(e,t){var n=t.message;return s(e,n)},t.prepareParams=function(e,t){var n=t.meta,r=t.replicate,o=void 0===r||r,a=t.storeInHistory,s=t.ttl,u={};null!=a&&(u.store=a?"1":"0");s&&(u.ttl=s);!1===o&&(u.norep="true");n&&"object"===(0,i.default)(n)&&(u.meta=JSON.stringify(n));return u},t.handleResponse=function(e,t){return{timetoken:t[2]}};var i=r(n(7)),o=(n(2),r(n(1))),a=r(n(3));function s(e,t){var n=e.crypto,r=e.config,i=JSON.stringify(t);return r.cipherKey&&(i=n.encrypt(i),i=JSON.stringify(i)),i}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSignalOperation},t.validateParams=function(e,t){var n=e.config,r=t.message;if(!t.channel)return"Missing Channel";if(!r)return"Missing Message";if(!n.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.message,a=(s=i,JSON.stringify(s));var s;return"/signal/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(o.default.encodeString(r),"/0/").concat(o.default.encodeString(a))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.handleResponse=function(e,t){return{timetoken:t[2]}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNHistoryOperation},t.validateParams=function(e,t){var n=t.channel,r=e.config;if(!n)return"Missing channel";if(!r.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channel,r=e.config;return"/v2/history/sub-key/".concat(r.subscribeKey,"/channel/").concat(o.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.start,r=t.end,i=t.reverse,o=t.count,a=void 0===o?100:o,s=t.stringifiedTimeToken,u=void 0!==s&&s,c=t.includeMeta,l=void 0!==c&&c,f={include_token:"true"};f.count=a,n&&(f.start=n);r&&(f.end=r);u&&(f.string_message_token="true");null!=i&&(f.reverse=i.toString());l&&(f.include_meta="true");return f},t.handleResponse=function(e,t){var n={messages:[],startTimeToken:t[1],endTimeToken:t[2]};Array.isArray(t[0])&&t[0].forEach((function(t){var r={timetoken:t.timetoken,entry:a(e,t.message)};t.meta&&(r.meta=t.meta),n.messages.push(r)}));return n};n(2);var i=r(n(1)),o=r(n(3));function a(e,t){var n=e.config,r=e.crypto;if(!n.cipherKey)return t;try{return r.decrypt(t)}catch(e){return t}}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteMessagesOperation},t.validateParams=function(e,t){var n=t.channel,r=e.config;if(!n)return"Missing channel";if(!r.subscribeKey)return"Missing Subscribe Key"},t.useDelete=function(){return!0},t.getURL=function(e,t){var n=t.channel,r=e.config;return"/v3/history/sub-key/".concat(r.subscribeKey,"/channel/").concat(o.default.encodeString(n))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.start,r=t.end,i={};n&&(i.start=n);r&&(i.end=r);return i},t.handleResponse=function(e,t){return t.payload};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return o.default.PNMessageCounts},t.validateParams=function(e,t){var n=t.channels,r=t.timetoken,i=t.channelTimetokens,o=e.config;if(!n)return"Missing channel";if(r&&i)return"timetoken and channelTimetokens are incompatible together";if(r&&i&&i.length>1&&n.length!==i.length)return"Length of channelTimetokens and channels do not match";if(!o.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=t.channels,r=e.config,i=n.join(",");return"/v3/history/sub-key/".concat(r.subscribeKey,"/message-counts/").concat(a.default.encodeString(i))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.timetoken,r=t.channelTimetokens,o={};if(r&&1===r.length){var a=(0,i.default)(r,1)[0];o.timetoken=a}else r?o.channelsTimetoken=r.join(","):n&&(o.timetoken=n);return o},t.handleResponse=function(e,t){return{channels:t.channels}};var i=r(n(9)),o=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNFetchMessagesOperation},t.validateParams=function(e,t){var n=t.channels,r=t.includeMessageActions,i=void 0!==r&&r,o=e.config;if(!n||0===n.length)return"Missing channels";if(!o.subscribeKey)return"Missing Subscribe Key";if(i&&n.length>1)throw new TypeError("History can return actions data for a single channel only. Either pass a single channel or disable the includeMessageActions flag.")},t.getURL=function(e,t){var n=t.channels,r=void 0===n?[]:n,i=t.includeMessageActions,a=void 0!==i&&i,s=e.config,u=a?"history-with-actions":"history",c=r.length>0?r.join(","):",";return"/v3/".concat(u,"/sub-key/").concat(s.subscribeKey,"/channel/").concat(o.default.encodeString(c))},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels,r=t.start,i=t.end,o=t.includeMessageActions,a=t.count,s=t.stringifiedTimeToken,u=void 0!==s&&s,c=t.includeMeta,l=void 0!==c&&c,f=t.includeUuid,d=t.includeUUID,p=void 0===d||d,h=t.includeMessageType,g=void 0===h||h,v={};v.max=a||(n.length>1||!0===o?25:100);r&&(v.start=r);i&&(v.end=i);u&&(v.string_message_token="true");l&&(v.include_meta="true");p&&!1!==f&&(v.include_uuid="true");g&&(v.include_message_type="true");return v},t.handleResponse=function(e,t){var n={channels:{}};Object.keys(t.channels||{}).forEach((function(r){n.channels[r]=[],(t.channels[r]||[]).forEach((function(t){var i={};i.channel=r,i.timetoken=t.timetoken,i.message=function(e,t){var n=e.config,r=e.crypto;if(!n.cipherKey)return t;try{return r.decrypt(t)}catch(e){return t}}(e,t.message),i.messageType=t.message_type,i.uuid=t.uuid,t.actions&&(i.actions=t.actions,i.data=t.actions),t.meta&&(i.meta=t.meta),n.channels[r].push(i)}))})),t.more&&(n.more=t.more);return n};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSubscribeOperation},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=i.length>0?i.join(","):",";return"/v2/subscribe/".concat(n.subscribeKey,"/").concat(o.default.encodeString(a),"/0")},t.getRequestTimeout=function(e){return e.config.getSubscribeTimeout()},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=e.config,r=t.state,i=t.channelGroups,o=void 0===i?[]:i,a=t.timetoken,s=t.filterExpression,u=t.region,c={heartbeat:n.getPresenceTimeout()};o.length>0&&(c["channel-group"]=o.join(","));s&&s.length>0&&(c["filter-expr"]=s);Object.keys(r).length&&(c.state=JSON.stringify(r));a&&(c.tt=a);u&&(c.tr=u);return c},t.handleResponse=function(e,t){var n=[];t.m.forEach((function(e){var t={publishTimetoken:e.p.t,region:e.p.r},r={shard:parseInt(e.a,10),subscriptionMatch:e.b,channel:e.c,messageType:e.e,payload:e.d,flags:e.f,issuingClientId:e.i,subscribeKey:e.k,originationTimetoken:e.o,userMetadata:e.u,publishMetaData:t};n.push(r)}));var r={timetoken:t.t.t,region:t.t.r};return{messages:n,metadata:r}};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),s=(r(n(8)),r(n(10))),u=(n(2),function(){function e(t){var n=this;(0,i.default)(this,e),(0,a.default)(this,"_modules",void 0),(0,a.default)(this,"_config",void 0),(0,a.default)(this,"_maxSubDomain",void 0),(0,a.default)(this,"_currentSubDomain",void 0),(0,a.default)(this,"_standardOrigin",void 0),(0,a.default)(this,"_subscribeOrigin",void 0),(0,a.default)(this,"_providedFQDN",void 0),(0,a.default)(this,"_requestTimeout",void 0),(0,a.default)(this,"_coreParams",void 0),this._modules={},Object.keys(t).forEach((function(e){n._modules[e]=t[e].bind(n)}))}return(0,o.default)(e,[{key:"init",value:function(e){this._config=e,this._maxSubDomain=20,this._currentSubDomain=Math.floor(Math.random()*this._maxSubDomain),this._providedFQDN=(this._config.secure?"https://":"http://")+this._config.origin,this._coreParams={},this.shiftStandardOrigin()}},{key:"nextOrigin",value:function(){return this._providedFQDN.match(/ps\.pndsn\.com$/i)?(this._currentSubDomain+=1,this._currentSubDomain>=this._maxSubDomain&&(this._currentSubDomain=1),e=this._currentSubDomain.toString(),this._providedFQDN.replace("ps.pndsn.com","ps".concat(e,".pndsn.com"))):this._providedFQDN;var e}},{key:"hasModule",value:function(e){return e in this._modules}},{key:"shiftStandardOrigin",value:function(){return this._standardOrigin=this.nextOrigin(),this._standardOrigin}},{key:"getStandardOrigin",value:function(){return this._standardOrigin}},{key:"POSTFILE",value:function(e,t,n){return this._modules.postfile(e,t,n)}},{key:"GETFILE",value:function(e,t,n){return this._modules.getfile(e,t,n)}},{key:"POST",value:function(e,t,n,r){return this._modules.post(e,t,n,r)}},{key:"PATCH",value:function(e,t,n,r){return this._modules.patch(e,t,n,r)}},{key:"GET",value:function(e,t,n){return this._modules.get(e,t,n)}},{key:"DELETE",value:function(e,t,n){return this._modules.del(e,t,n)}},{key:"_detectErrorCategory",value:function(e){if("ENOTFOUND"===e.code)return s.default.PNNetworkIssuesCategory;if("ECONNREFUSED"===e.code)return s.default.PNNetworkIssuesCategory;if("ECONNRESET"===e.code)return s.default.PNNetworkIssuesCategory;if("EAI_AGAIN"===e.code)return s.default.PNNetworkIssuesCategory;if(0===e.status||e.hasOwnProperty("status")&&void 0===e.status)return s.default.PNNetworkIssuesCategory;if(e.timeout)return s.default.PNTimeoutCategory;if("ETIMEDOUT"===e.code)return s.default.PNNetworkIssuesCategory;if(e.response){if(e.response.badRequest)return s.default.PNBadRequestCategory;if(e.response.forbidden)return s.default.PNAccessDeniedCategory}return s.default.PNUnknownCategory}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={get:function(e){try{return localStorage.getItem(e)}catch(e){return null}},set:function(e,t){try{return localStorage.setItem(e,t)}catch(e){return null}}};t.default=r,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),o=r(n(5)),a=r(n(6)),s=r(n(4)),u=function(){function e(t,n){(0,o.default)(this,e),(0,s.default)(this,"_base64ToBinary",void 0),(0,s.default)(this,"_cborReader",void 0),this._base64ToBinary=n,this._decode=t}return(0,a.default)(e,[{key:"decodeToken",value:function(e){var t="";e.length%4==3?t="=":e.length%4==2&&(t="==");var n=e.replace(/-/gi,"+").replace(/_/gi,"/")+t,r=this._decode(this._base64ToBinary(n));if("object"===(0,i.default)(r))return r}}]),e}();t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.postfile=function(e,t,n){return c.apply(this,arguments)},t.getfile=function(e,t,n){var r=a.default.get(this.getStandardOrigin()+t.url).set(t.headers).query(e);return u.call(this,r,t,n)},t.get=function(e,t,n){var r=a.default.get(this.getStandardOrigin()+t.url).set(t.headers).query(e);return u.call(this,r,t,n)},t.post=function(e,t,n,r){var i=a.default.post(this.getStandardOrigin()+n.url).query(e).set(n.headers).send(t);return u.call(this,i,n,r)},t.patch=function(e,t,n,r){var i=a.default.patch(this.getStandardOrigin()+n.url).query(e).set(n.headers).send(t);return u.call(this,i,n,r)},t.del=function(e,t,n){var r=a.default.delete(this.getStandardOrigin()+t.url).set(t.headers).query(e);return u.call(this,r,t,n)};var i=r(n(11)),o=r(n(12)),a=r(n(125));n(2);function s(e){var t=(new Date).getTime(),n=(new Date).toISOString(),r=console&&console.log?console:window&&window.console&&window.console.log?window.console:console;r.log("<<<<<"),r.log("[".concat(n,"]"),"\n",e.url,"\n",e.qs),r.log("-----"),e.on("response",(function(n){var i=(new Date).getTime()-t,o=(new Date).toISOString();r.log(">>>>>>"),r.log("[".concat(o," / ").concat(i,"]"),"\n",e.url,"\n",e.qs,"\n",n.text),r.log("-----")}))}function u(e,t,n){var r=this;this._config.logVerbosity&&(e=e.use(s)),this._config.proxy&&this._modules.proxy&&(e=this._modules.proxy.call(this,e)),this._config.keepAlive&&this._modules.keepAlive&&(e=this._modules.keepAlive(e));var i=e;return!0===t.forceBuffered?i="undefined"==typeof Blob?i.buffer().responseType("arraybuffer"):i.responseType("arraybuffer"):!1===t.forceBuffered&&(i=i.buffer(!1)),i.timeout(t.timeout).end((function(e,i){var o,a={};if(a.error=null!==e,a.operation=t.operation,i&&i.status&&(a.statusCode=i.status),e){if(e.response&&e.response.text&&!r._config.logVerbosity)try{a.errorData=JSON.parse(e.response.text)}catch(t){a.errorData=e}else a.errorData=e;return a.category=r._detectErrorCategory(e),n(a,null)}if(t.ignoreBody)o={headers:i.headers,redirects:i.redirects,response:i};else try{o=JSON.parse(i.text)}catch(e){return a.errorData=i,a.error=!0,n(a,null)}return o.error&&1===o.error&&o.status&&o.message&&o.service?(a.errorData=o,a.statusCode=o.status,a.error=!0,a.category=r._detectErrorCategory(a),n(a,null)):(o.error&&o.error.message&&(a.errorData=o.error),n(a,o))}))}function c(){return(c=(0,o.default)(i.default.mark((function e(t,n,r){var o,s;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=a.default.post(t),n.forEach((function(e){var t=e.key,n=e.value;o=o.field(t,n)})),o.attach("file",r,{contentType:"application/octet-stream"}),e.next=5,o;case 5:return s=e.sent,e.abrupt("return",s);case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}},function(e,t,n){var r;"undefined"!=typeof window?r=window:"undefined"!=typeof self?r=self:(console.warn("Using browser-only version of superagent in non-browser environment"),r=this);var i=n(126),o=n(127),a=n(26),s=n(128),u=n(130);function c(){}var l=t=e.exports=function(e,n){return"function"==typeof n?new t.Request("GET",e).end(n):1==arguments.length?new t.Request("GET",e):new t.Request(e,n)};t.Request=y,l.getXHR=function(){if(!(!r.XMLHttpRequest||r.location&&"file:"==r.location.protocol&&r.ActiveXObject))return new XMLHttpRequest;try{return new ActiveXObject("Microsoft.XMLHTTP")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(e){}throw Error("Browser-only version of superagent could not find XHR")};var f="".trim?function(e){return e.trim()}:function(e){return e.replace(/(^\s*|\s*$)/g,"")};function d(e){if(!a(e))return e;var t=[];for(var n in e)p(t,n,e[n]);return t.join("&")}function p(e,t,n){if(null!=n)if(Array.isArray(n))n.forEach((function(n){p(e,t,n)}));else if(a(n))for(var r in n)p(e,t+"["+r+"]",n[r]);else e.push(encodeURIComponent(t)+"="+encodeURIComponent(n));else null===n&&e.push(encodeURIComponent(t))}function h(e){for(var t,n,r={},i=e.split("&"),o=0,a=i.length;o=2&&e._responseTimeoutTimer&&clearTimeout(e._responseTimeoutTimer),4==n){var r;try{r=t.status}catch(e){r=0}if(!r){if(e.timedout||e._aborted)return;return e.crossDomainError()}e.emit("end")}};var r=function(t,n){n.total>0&&(n.percent=n.loaded/n.total*100),n.direction=t,e.emit("progress",n)};if(this.hasListeners("progress"))try{t.onprogress=r.bind(null,"download"),t.upload&&(t.upload.onprogress=r.bind(null,"upload"))}catch(e){}try{this.username&&this.password?t.open(this.method,this.url,!0,this.username,this.password):t.open(this.method,this.url,!0)}catch(e){return this.callback(e)}if(this._withCredentials&&(t.withCredentials=!0),!this._formData&&"GET"!=this.method&&"HEAD"!=this.method&&"string"!=typeof n&&!this._isHost(n)){var i=this._header["content-type"],o=this._serializer||l.serialize[i?i.split(";")[0]:""];!o&&g(i)&&(o=l.serialize["application/json"]),o&&(n=o(n))}for(var a in this.header)null!=this.header[a]&&this.header.hasOwnProperty(a)&&t.setRequestHeader(a,this.header[a]);return this._responseType&&(t.responseType=this._responseType),this.emit("request",this),t.send(void 0!==n?n:null),this},l.agent=function(){return new u},["GET","POST","OPTIONS","PATCH","PUT","DELETE"].forEach((function(e){u.prototype[e.toLowerCase()]=function(t,n){var r=new l.Request(e,t);return this._setDefaults(r),n&&r.end(n),r}})),u.prototype.del=u.prototype.delete,l.get=function(e,t,n){var r=l("GET",e);return"function"==typeof t&&(n=t,t=null),t&&r.query(t),n&&r.end(n),r},l.head=function(e,t,n){var r=l("HEAD",e);return"function"==typeof t&&(n=t,t=null),t&&r.query(t),n&&r.end(n),r},l.options=function(e,t,n){var r=l("OPTIONS",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},l.del=b,l.delete=b,l.patch=function(e,t,n){var r=l("PATCH",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},l.post=function(e,t,n){var r=l("POST",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},l.put=function(e,t,n){var r=l("PUT",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r}},function(e,t,n){function r(e){if(e)return function(e){for(var t in r.prototype)e[t]=r.prototype[t];return e}(e)}e.exports=r,r.prototype.on=r.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},r.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},r.prototype.off=r.prototype.removeListener=r.prototype.removeAllListeners=r.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var i=0;i=this._maxRetries)return!1;if(this._retryCallback)try{var n=this._retryCallback(e,t);if(!0===n)return!0;if(!1===n)return!1}catch(e){console.error(e)}if(t&&t.status&&t.status>=500&&501!=t.status)return!0;if(e){if(e.code&&~o.indexOf(e.code))return!0;if(e.timeout&&"ECONNABORTED"==e.code)return!0;if(e.crossDomain)return!0}return!1},i.prototype._retry=function(){return this.clearTimeout(),this.req&&(this.req=null,this.req=this.request()),this._aborted=!1,this.timedout=!1,this._end()},i.prototype.then=function(e,t){if(!this._fullfilledPromise){var n=this;this._endCalled&&console.warn("Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises"),this._fullfilledPromise=new Promise((function(e,t){n.end((function(n,r){n?t(n):e(r)}))}))}return this._fullfilledPromise.then(e,t)},i.prototype.catch=function(e){return this.then(void 0,e)},i.prototype.use=function(e){return e(this),this},i.prototype.ok=function(e){if("function"!=typeof e)throw Error("Callback required");return this._okCallback=e,this},i.prototype._isResponseOK=function(e){return!!e&&(this._okCallback?this._okCallback(e):e.status>=200&&e.status<300)},i.prototype.get=function(e){return this._header[e.toLowerCase()]},i.prototype.getHeader=i.prototype.get,i.prototype.set=function(e,t){if(r(e)){for(var n in e)this.set(n,e[n]);return this}return this._header[e.toLowerCase()]=t,this.header[e]=t,this},i.prototype.unset=function(e){return delete this._header[e.toLowerCase()],delete this.header[e],this},i.prototype.field=function(e,t){if(null==e)throw new Error(".field(name, val) name can not be empty");if(this._data&&console.error(".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()"),r(e)){for(var n in e)this.field(n,e[n]);return this}if(Array.isArray(t)){for(var i in t)this.field(e,t[i]);return this}if(null==t)throw new Error(".field(name, val) val can not be empty");return"boolean"==typeof t&&(t=""+t),this._getFormData().append(e,t),this},i.prototype.abort=function(){return this._aborted||(this._aborted=!0,this.xhr&&this.xhr.abort(),this.req&&this.req.abort(),this.clearTimeout(),this.emit("abort")),this},i.prototype._auth=function(e,t,n,r){switch(n.type){case"basic":this.set("Authorization","Basic "+r(e+":"+t));break;case"auto":this.username=e,this.password=t;break;case"bearer":this.set("Authorization","Bearer "+e)}return this},i.prototype.withCredentials=function(e){return null==e&&(e=!0),this._withCredentials=e,this},i.prototype.redirects=function(e){return this._maxRedirects=e,this},i.prototype.maxResponseSize=function(e){if("number"!=typeof e)throw TypeError("Invalid argument");return this._maxResponseSize=e,this},i.prototype.toJSON=function(){return{method:this.method,url:this.url,data:this._data,headers:this._header}},i.prototype.send=function(e){var t=r(e),n=this._header["content-type"];if(this._formData&&console.error(".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()"),t&&!this._data)Array.isArray(e)?this._data=[]:this._isHost(e)||(this._data={});else if(e&&this._data&&this._isHost(this._data))throw Error("Can't merge these send calls");if(t&&r(this._data))for(var i in e)this._data[i]=e[i];else"string"==typeof e?(n||this.type("form"),n=this._header["content-type"],this._data="application/x-www-form-urlencoded"==n?this._data?this._data+"&"+e:e:(this._data||"")+e):this._data=e;return!t||this._isHost(e)||n||this.type("json"),this},i.prototype.sortQuery=function(e){return this._sort=void 0===e||e,this},i.prototype._finalizeQueryString=function(){var e=this._query.join("&");if(e&&(this.url+=(this.url.indexOf("?")>=0?"&":"?")+e),this._query.length=0,this._sort){var t=this.url.indexOf("?");if(t>=0){var n=this.url.substring(t+1).split("&");"function"==typeof this._sort?n.sort(this._sort):n.sort(),this.url=this.url.substring(0,t)+"?"+n.join("&")}}},i.prototype._appendQueryString=function(){console.trace("Unsupported")},i.prototype._timeoutError=function(e,t,n){if(!this._aborted){var r=new Error(e+t+"ms exceeded");r.timeout=t,r.code="ECONNABORTED",r.errno=n,this.timedout=!0,this.abort(),this.callback(r)}},i.prototype._setTimeouts=function(){var e=this;this._timeout&&!this._timer&&(this._timer=setTimeout((function(){e._timeoutError("Timeout of ",e._timeout,"ETIME")}),this._timeout)),this._responseTimeout&&!this._responseTimeoutTimer&&(this._responseTimeoutTimer=setTimeout((function(){e._timeoutError("Response timeout of ",e._responseTimeout,"ETIMEDOUT")}),this._responseTimeout))}},function(e,t,n){"use strict";var r=n(129);function i(e){if(e)return function(e){for(var t in i.prototype)e[t]=i.prototype[t];return e}(e)}e.exports=i,i.prototype.get=function(e){return this.header[e.toLowerCase()]},i.prototype._setHeaderProperties=function(e){var t=e["content-type"]||"";this.type=r.type(t);var n=r.params(t);for(var i in n)this[i]=n[i];this.links={};try{e.link&&(this.links=r.parseLinks(e.link))}catch(e){}},i.prototype._setStatusProperties=function(e){var t=e/100|0;this.status=this.statusCode=e,this.statusType=t,this.info=1==t,this.ok=2==t,this.redirect=3==t,this.clientError=4==t,this.serverError=5==t,this.error=(4==t||5==t)&&this.toError(),this.created=201==e,this.accepted=202==e,this.noContent=204==e,this.badRequest=400==e,this.unauthorized=401==e,this.notAcceptable=406==e,this.forbidden=403==e,this.notFound=404==e,this.unprocessableEntity=422==e}},function(e,t,n){"use strict";t.type=function(e){return e.split(/ *; */).shift()},t.params=function(e){return e.split(/ *; */).reduce((function(e,t){var n=t.split(/ *= */),r=n.shift(),i=n.shift();return r&&i&&(e[r]=i),e}),{})},t.parseLinks=function(e){return e.split(/ *, */).reduce((function(e,t){var n=t.split(/ *; */),r=n[0].slice(1,-1);return e[n[1].split(/ *= */)[1].slice(1,-1)]=r,e}),{})},t.cleanHeader=function(e,t){return delete e["content-type"],delete e["content-length"],delete e["transfer-encoding"],delete e.host,t&&(delete e.authorization,delete e.cookie),e}},function(e,t){function n(){this._defaults=[]}["use","on","once","set","query","type","accept","auth","withCredentials","sortQuery","retry","ok","redirects","timeout","buffer","serialize","parse","ca","key","pfx","cert"].forEach((function(e){n.prototype[e]=function(){return this._defaults.push({fn:e,arguments:arguments}),this}})),n.prototype._setDefaults=function(e){this._defaults.forEach((function(t){e[t.fn].apply(e,t.arguments)}))},e.exports=n},function(e,t,n){"use strict";(function(r){var i=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=i(n(11)),a=i(n(12)),s=i(n(5)),u=i(n(6)),c=i(n(4)),l=i(n(133));function f(e,t){var n=new Uint8Array(e.byteLength+t.byteLength);return n.set(new Uint8Array(e),0),n.set(new Uint8Array(t),e.byteLength),n.buffer}var d=function(){function e(){(0,s.default)(this,e)}var t,n,i,c,d,p,h,g,v;return(0,u.default)(e,[{key:"encrypt",value:(v=(0,a.default)(o.default.mark((function e(t,n){var r;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getKey(t);case 2:if(r=e.sent,!(n instanceof ArrayBuffer)){e.next=7;break}return e.abrupt("return",this.encryptArrayBuffer(r,n));case 7:if("string"!=typeof n){e.next=11;break}return e.abrupt("return",this.encryptString(r,n));case 11:throw new Error("Cannot encrypt this file. In browsers file encryption supports only string or ArrayBuffer");case 12:case"end":return e.stop()}}),e,this)}))),function(e,t){return v.apply(this,arguments)})},{key:"decrypt",value:(g=(0,a.default)(o.default.mark((function e(t,n){var r;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getKey(t);case 2:if(r=e.sent,!(n instanceof ArrayBuffer)){e.next=7;break}return e.abrupt("return",this.decryptArrayBuffer(r,n));case 7:if("string"!=typeof n){e.next=11;break}return e.abrupt("return",this.decryptString(r,n));case 11:throw new Error("Cannot decrypt this file. In browsers file decryption supports only string or ArrayBuffer");case 12:case"end":return e.stop()}}),e,this)}))),function(e,t){return g.apply(this,arguments)})},{key:"encryptFile",value:(h=(0,a.default)(o.default.mark((function e(t,n,r){var i,a,s;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getKey(t);case 2:return i=e.sent,e.next=5,n.toArrayBuffer();case 5:return a=e.sent,e.next=8,this.encryptArrayBuffer(i,a);case 8:return s=e.sent,e.abrupt("return",r.create({name:n.name,mimeType:"application/octet-stream",data:s}));case 10:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return h.apply(this,arguments)})},{key:"decryptFile",value:(p=(0,a.default)(o.default.mark((function e(t,n,r){var i,a,s;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getKey(t);case 2:return i=e.sent,e.next=5,n.toArrayBuffer();case 5:return a=e.sent,e.next=8,this.decryptArrayBuffer(i,a);case 8:if(s=e.sent,!(n.data instanceof ArrayBuffer)){e.next=13;break}return e.abrupt("return",r.create({name:n.name,data:s}));case 13:throw new Error("Cannot decrypt this file. In browser environment file decryption supports only ArrayBuffer.");case 14:case"end":return e.stop()}}),e,this)}))),function(e,t,n){return p.apply(this,arguments)})},{key:"getKey",value:(d=(0,a.default)(o.default.mark((function e(t){var n,i,a;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.from(t),e.next=3,l.default.subtle.digest("SHA-256",n.buffer);case 3:return i=e.sent,a=r.from(r.from(i).toString("hex").slice(0,32),"utf8").buffer,e.abrupt("return",l.default.subtle.importKey("raw",a,"AES-CBC",!0,["encrypt","decrypt"]));case 6:case"end":return e.stop()}}),e)}))),function(e){return d.apply(this,arguments)})},{key:"encryptArrayBuffer",value:(c=(0,a.default)(o.default.mark((function e(t,n){var r;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=l.default.getRandomValues(new Uint8Array(16)),e.t0=f,e.t1=r.buffer,e.next=5,l.default.subtle.encrypt({name:"AES-CBC",iv:r},t,n);case 5:return e.t2=e.sent,e.abrupt("return",(0,e.t0)(e.t1,e.t2));case 7:case"end":return e.stop()}}),e)}))),function(e,t){return c.apply(this,arguments)})},{key:"decryptArrayBuffer",value:(i=(0,a.default)(o.default.mark((function e(t,n){var r;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=n.slice(0,16),e.abrupt("return",l.default.subtle.decrypt({name:"AES-CBC",iv:r},t,n.slice(16)));case 2:case"end":return e.stop()}}),e)}))),function(e,t){return i.apply(this,arguments)})},{key:"encryptString",value:(n=(0,a.default)(o.default.mark((function e(t,n){var i,a,s,u;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=l.default.getRandomValues(new Uint8Array(16)),a=r.from(n).buffer,e.next=4,l.default.subtle.encrypt({name:"AES-CBC",iv:i},t,a);case 4:return s=e.sent,u=f(i.buffer,s),e.abrupt("return",r.from(u).toString("utf8"));case 7:case"end":return e.stop()}}),e)}))),function(e,t){return n.apply(this,arguments)})},{key:"decryptString",value:(t=(0,a.default)(o.default.mark((function e(t,n){var i,a,s,u;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=r.from(n),a=i.slice(0,16),s=i.slice(16),e.next=5,l.default.subtle.decrypt({name:"AES-CBC",iv:a},t,s);case 5:return u=e.sent,e.abrupt("return",r.from(u).toString("utf8"));case 7:case"end":return e.stop()}}),e)}))),function(e,n){return t.apply(this,arguments)})},{key:"algo",get:function(){return"aes-256-cbc"}}]),e}();t.default=d,(0,c.default)(d,"IV_LENGTH",16),e.exports=t.default}).call(this,n(21).Buffer)},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i,o,a=r(n(11)),s=r(n(12)),u=r(n(5)),c=r(n(6)),l=r(n(4)),f=(n(25),o=i=function(){function e(t){if((0,u.default)(this,e),(0,l.default)(this,"data",void 0),(0,l.default)(this,"name",void 0),(0,l.default)(this,"mimeType",void 0),t instanceof File)this.data=t,this.name=this.data.name,this.mimeType=this.data.type;else if(t.data){var n=t.data;this.data=new File([n],t.name,{type:t.mimeType}),this.name=t.name,t.mimeType&&(this.mimeType=t.mimeType)}if(void 0===this.data)throw new Error("Couldn't construct a file out of supplied options.");if(void 0===this.name)throw new Error("Couldn't guess filename out of the options. Please provide one.")}var t,n,r,i,o,f,d;return(0,c.default)(e,null,[{key:"create",value:function(e){return new this(e)}}]),(0,c.default)(e,[{key:"toBuffer",value:(d=(0,s.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:throw new Error("This feature is only supported in Node.js environments.");case 1:case"end":return e.stop()}}),e)}))),function(){return d.apply(this,arguments)})},{key:"toStream",value:(f=(0,s.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:throw new Error("This feature is only supported in Node.js environments.");case 1:case"end":return e.stop()}}),e)}))),function(){return f.apply(this,arguments)})},{key:"toFileUri",value:(o=(0,s.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:throw new Error("This feature is only supported in react native environments.");case 1:case"end":return e.stop()}}),e)}))),function(){return o.apply(this,arguments)})},{key:"toBlob",value:(i=(0,s.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.data);case 1:case"end":return e.stop()}}),e,this)}))),function(){return i.apply(this,arguments)})},{key:"toArrayBuffer",value:(r=(0,s.default)(a.default.mark((function e(){var t=this;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){var r=new FileReader;r.addEventListener("load",(function(){if(r.result instanceof ArrayBuffer)return e(r.result)})),r.addEventListener("error",(function(){n(r.error)})),r.readAsArrayBuffer(t.data)})));case 1:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})},{key:"toString",value:(n=(0,s.default)(a.default.mark((function e(){var t=this;return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,n){var r=new FileReader;r.addEventListener("load",(function(){if("string"==typeof r.result)return e(r.result)})),r.addEventListener("error",(function(){n(r.error)})),r.readAsBinaryString(t.data)})));case 1:case"end":return e.stop()}}),e)}))),function(){return n.apply(this,arguments)})},{key:"toFile",value:(t=(0,s.default)(a.default.mark((function e(){return a.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.data);case 1:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})}]),e}(),(0,l.default)(i,"supportsFile","undefined"!=typeof File),(0,l.default)(i,"supportsBlob","undefined"!=typeof Blob),(0,l.default)(i,"supportsArrayBuffer","undefined"!=typeof ArrayBuffer),(0,l.default)(i,"supportsBuffer",!1),(0,l.default)(i,"supportsStream",!1),(0,l.default)(i,"supportsString",!0),(0,l.default)(i,"supportsEncryptFile",!0),(0,l.default)(i,"supportsFileUri",!1),o);t.default=f,e.exports=t.default},function(e,t,n){"use strict";n.r(t), -/** - * @file Web Cryptography API shim - * @author Artem S Vybornov - * @license MIT - */ -function(e,t){"function"==typeof define&&define.amd?define([],(function(){return t(e)})):"object"==typeof module&&module.exports?module.exports=t(e):t(e)}("undefined"!=typeof self?self:void 0,(function(e){if("function"!=typeof Promise)throw"Promise support required";var t=e.crypto||e.msCrypto;if(t){var n=t.subtle||t.webkitSubtle;if(n){var r=e.Crypto||t.constructor||Object,i=e.SubtleCrypto||n.constructor||Object,o=(e.CryptoKey||e.Key,e.navigator.userAgent.indexOf("Edge/")>-1),a=!!e.msCrypto&&!o,s=!t.subtle&&!!t.webkitSubtle;if(a||s){var u={KoZIhvcNAQEB:"1.2.840.113549.1.1.1"},c={"1.2.840.113549.1.1.1":"KoZIhvcNAQEB"};if(["generateKey","importKey","unwrapKey"].forEach((function(e){var r=n[e];n[e]=function(i,o,u){var c,l,f,h,_=[].slice.call(arguments);switch(e){case"generateKey":c=g(i),l=o,f=u;break;case"importKey":c=g(u),l=_[3],f=_[4],"jwk"===i&&((o=y(o)).alg||(o.alg=v(c)),o.key_ops||(o.key_ops="oct"!==o.kty?"d"in o?f.filter(T):f.filter(O):f.slice()),_[1]=b(o));break;case"unwrapKey":c=_[4],l=_[5],f=_[6],_[2]=u._key}if("generateKey"===e&&"HMAC"===c.name&&c.hash)return c.length=c.length||{"SHA-1":512,"SHA-256":512,"SHA-384":1024,"SHA-512":1024}[c.hash.name],n.importKey("raw",t.getRandomValues(new Uint8Array(c.length+7>>3)),c,l,f);if(s&&"generateKey"===e&&"RSASSA-PKCS1-v1_5"===c.name&&(!c.modulusLength||c.modulusLength>=2048))return(i=g(i)).name="RSAES-PKCS1-v1_5",delete i.hash,n.generateKey(i,!0,["encrypt","decrypt"]).then((function(e){return Promise.all([n.exportKey("jwk",e.publicKey),n.exportKey("jwk",e.privateKey)])})).then((function(e){return e[0].alg=e[1].alg=v(c),e[0].key_ops=f.filter(O),e[1].key_ops=f.filter(T),Promise.all([n.importKey("jwk",e[0],c,!0,e[0].key_ops),n.importKey("jwk",e[1],c,l,e[1].key_ops)])})).then((function(e){return{publicKey:e[0],privateKey:e[1]}}));if((s||a&&"SHA-1"===(c.hash||{}).name)&&"importKey"===e&&"jwk"===i&&"HMAC"===c.name&&"oct"===o.kty)return n.importKey("raw",p(d(o.k)),u,_[3],_[4]);if(s&&"importKey"===e&&("spki"===i||"pkcs8"===i))return n.importKey("jwk",m(o),u,_[3],_[4]);if(a&&"unwrapKey"===e)return n.decrypt(_[3],u,o).then((function(e){return n.importKey(i,e,_[4],_[5],_[6])}));try{h=r.apply(n,_)}catch(e){return Promise.reject(e)}return a&&(h=new Promise((function(e,t){h.onabort=h.onerror=function(e){t(e)},h.oncomplete=function(t){e(t.target.result)}}))),h=h.then((function(e){return"HMAC"===c.name&&(c.length||(c.length=8*e.algorithm.length)),0==c.name.search("RSA")&&(c.modulusLength||(c.modulusLength=(e.publicKey||e).algorithm.modulusLength),c.publicExponent||(c.publicExponent=(e.publicKey||e).algorithm.publicExponent)),e=e.publicKey&&e.privateKey?{publicKey:new w(e.publicKey,c,l,f.filter(O)),privateKey:new w(e.privateKey,c,l,f.filter(T))}:new w(e,c,l,f)}))}})),["exportKey","wrapKey"].forEach((function(e){var t=n[e];n[e]=function(r,i,o){var u,c=[].slice.call(arguments);switch(e){case"exportKey":c[1]=i._key;break;case"wrapKey":c[1]=i._key,c[2]=o._key}if((s||a&&"SHA-1"===(i.algorithm.hash||{}).name)&&"exportKey"===e&&"jwk"===r&&"HMAC"===i.algorithm.name&&(c[0]="raw"),!s||"exportKey"!==e||"spki"!==r&&"pkcs8"!==r||(c[0]="jwk"),a&&"wrapKey"===e)return n.exportKey(r,i).then((function(e){return"jwk"===r&&(e=p(unescape(encodeURIComponent(JSON.stringify(y(e)))))),n.encrypt(c[3],o,e)}));try{u=t.apply(n,c)}catch(e){return Promise.reject(e)}return a&&(u=new Promise((function(e,t){u.onabort=u.onerror=function(e){t(e)},u.oncomplete=function(t){e(t.target.result)}}))),"exportKey"===e&&"jwk"===r&&(u=u.then((function(e){return(s||a&&"SHA-1"===(i.algorithm.hash||{}).name)&&"HMAC"===i.algorithm.name?{kty:"oct",alg:v(i.algorithm),key_ops:i.usages.slice(),ext:!0,k:f(h(e))}:((e=y(e)).alg||(e.alg=v(i.algorithm)),e.key_ops||(e.key_ops="public"===i.type?i.usages.filter(O):"private"===i.type?i.usages.filter(T):i.usages.slice()),e)}))),!s||"exportKey"!==e||"spki"!==r&&"pkcs8"!==r||(u=u.then((function(e){return e=_(y(e))}))),u}})),["encrypt","decrypt","sign","verify"].forEach((function(e){var t=n[e];n[e]=function(r,i,o,s){if(a&&(!o.byteLength||s&&!s.byteLength))throw new Error("Empy input is not allowed");var u,c=[].slice.call(arguments),l=g(r);if(a&&"decrypt"===e&&"AES-GCM"===l.name){var f=r.tagLength>>3;c[2]=(o.buffer||o).slice(0,o.byteLength-f),r.tag=(o.buffer||o).slice(o.byteLength-f)}c[1]=i._key;try{u=t.apply(n,c)}catch(e){return Promise.reject(e)}return a&&(u=new Promise((function(t,n){u.onabort=u.onerror=function(e){n(e)},u.oncomplete=function(n){n=n.target.result;if("encrypt"===e&&n instanceof AesGcmEncryptResult){var r=n.ciphertext,i=n.tag;(n=new Uint8Array(r.byteLength+i.byteLength)).set(new Uint8Array(r),0),n.set(new Uint8Array(i),r.byteLength),n=n.buffer}t(n)}}))),u}})),a){var l=n.digest;n.digest=function(e,t){if(!t.byteLength)throw new Error("Empy input is not allowed");var r;try{r=l.call(n,e,t)}catch(e){return Promise.reject(e)}return r=new Promise((function(e,t){r.onabort=r.onerror=function(e){t(e)},r.oncomplete=function(t){e(t.target.result)}}))},e.crypto=Object.create(t,{getRandomValues:{value:function(e){return t.getRandomValues(e)}},subtle:{value:n}}),e.CryptoKey=w}s&&(t.subtle=n,e.Crypto=r,e.SubtleCrypto=i,e.CryptoKey=w)}}}function f(e){return btoa(e).replace(/\=+$/,"").replace(/\+/g,"-").replace(/\//g,"_")}function d(e){return e=(e+="===").slice(0,-e.length%4),atob(e.replace(/-/g,"+").replace(/_/g,"/"))}function p(e){for(var t=new Uint8Array(e.length),n=0;n2&&(n=!0,t.shift());var r={ext:!0};switch(t[0][0]){case"1.2.840.113549.1.1.1":var i=["n","e","d","p","q","dp","dq","qi"],o=k(t[1]);n&&o.shift();for(var a=0;a2&&(r=!0,o.unshift(new Uint8Array([0]))),n[0][0]="1.2.840.113549.1.1.1",t=o;break;default:throw new TypeError("Unsupported key type")}return n.push(new Uint8Array(P(t)).buffer),r?n.unshift(new Uint8Array([0])):n[1]={tag:3,value:n[1]},new Uint8Array(P(n)).buffer}function k(e,t){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),t||(t={pos:0,end:e.length}),t.end-t.pos<2||t.end>e.length)throw new RangeError("Malformed DER");var n,r=e[t.pos++],i=e[t.pos++];if(i>=128){if(i&=127,t.end-t.pos=128){var s=r;r=4;for(t.splice(i,0,s>>24&255,s>>16&255,s>>8&255,255&s);r>1&&!(s>>24);)s<<=8,r--;r<4&&t.splice(i,4-r),r|=128}return t.splice(i-2,2,n,r),t}function w(e,t,n,r){Object.defineProperties(this,{_key:{value:e},type:{value:e.type,enumerable:!0},extractable:{value:void 0===n?e.extractable:n,enumerable:!0},algorithm:{value:void 0===t?e.algorithm:t,enumerable:!0},usages:{value:void 0===r?e.usages:r,enumerable:!0}})}function O(e){return"verify"===e||"encrypt"===e||"wrapKey"===e}function T(e){return"sign"===e||"decrypt"===e||"unwrapKey"===e}}));t.default=window.crypto}])})); \ No newline at end of file +var r=n(36),i=n(37),o=n(38);function a(){return s.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function u(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function h(e,t){if(s.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return B(e).length;default:if(r)return K(e).length;t=(""+t).toLowerCase(),r=!0}}function y(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return M(this,t,n);case"utf8":case"utf-8":return T(this,t,n);case"ascii":return x(this,t,n);case"latin1":case"binary":return A(this,t,n);case"base64":return k(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function g(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function v(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=s.from(t,r)),s.isBuffer(t))return 0===t.length?-1:b(e,t,n,r,i);if("number"==typeof t)return t&=255,s.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):b(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function b(e,t,n,r,i){var o,a=1,u=e.length,s=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,u/=2,s/=2,n/=2}function c(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var l=-1;for(o=n;ou&&(n=u-s),o=n;o>=0;o--){for(var f=!0,d=0;di&&(r=i):r=i;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a>8,i=n%256,o.push(i),o.push(r);return o}(t,e.length-n),e,n,r)}function k(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function T(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i239?4:c>223?3:c>191?2:1;if(i+f<=n)switch(f){case 1:c<128&&(l=c);break;case 2:128==(192&(o=e[i+1]))&&(s=(31&c)<<6|63&o)>127&&(l=s);break;case 3:o=e[i+1],a=e[i+2],128==(192&o)&&128==(192&a)&&(s=(15&c)<<12|(63&o)<<6|63&a)>2047&&(s<55296||s>57343)&&(l=s);break;case 4:o=e[i+1],a=e[i+2],u=e[i+3],128==(192&o)&&128==(192&a)&&128==(192&u)&&(s=(15&c)<<18|(63&o)<<12|(63&a)<<6|63&u)>65535&&s<1114112&&(l=s)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),i+=f}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},s.prototype.compare=function(e,t,n,r,i){if(!s.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),u=Math.min(o,a),c=this.slice(r,i),l=e.slice(t,n),f=0;fi)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return _(this,e,t,n);case"ascii":return P(this,e,t,n);case"latin1":case"binary":return O(this,e,t,n);case"base64":return S(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return w(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},s.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function x(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;ir)&&(n=r);for(var i="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function R(e,t,n,r,i,o){if(!s.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function N(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function C(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function U(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function I(e,t,n,r,o){return o||U(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function F(e,t,n,r,o){return o||U(e,0,n,8),i.write(e,t,n,r,52,8),n+8}s.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(i*=256);)r+=this[e+--t]*i;return r},s.prototype.readUInt8=function(e,t){return t||j(e,1,this.length),this[e]},s.prototype.readUInt16LE=function(e,t){return t||j(e,2,this.length),this[e]|this[e+1]<<8},s.prototype.readUInt16BE=function(e,t){return t||j(e,2,this.length),this[e]<<8|this[e+1]},s.prototype.readUInt32LE=function(e,t){return t||j(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},s.prototype.readUInt32BE=function(e,t){return t||j(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},s.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||j(e,t,this.length);for(var r=this[e],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*t)),r},s.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||j(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},s.prototype.readInt8=function(e,t){return t||j(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},s.prototype.readInt16LE=function(e,t){t||j(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},s.prototype.readInt16BE=function(e,t){t||j(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},s.prototype.readInt32LE=function(e,t){return t||j(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},s.prototype.readInt32BE=function(e,t){return t||j(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},s.prototype.readFloatLE=function(e,t){return t||j(e,4,this.length),i.read(this,e,!0,23,4)},s.prototype.readFloatBE=function(e,t){return t||j(e,4,this.length),i.read(this,e,!1,23,4)},s.prototype.readDoubleLE=function(e,t){return t||j(e,8,this.length),i.read(this,e,!0,52,8)},s.prototype.readDoubleBE=function(e,t){return t||j(e,8,this.length),i.read(this,e,!1,52,8)},s.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||R(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o=0&&(o*=256);)this[t+i]=e/o&255;return t+n},s.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,1,255,0),s.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},s.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,65535,0),s.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},s.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,65535,0),s.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},s.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,4294967295,0),s.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):C(this,e,t,!0),t+4},s.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,4294967295,0),s.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):C(this,e,t,!1),t+4},s.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);R(this,e,t,n,i-1,-i)}var o=0,a=1,u=0;for(this[t]=255&e;++o>0)-u&255;return t+n},s.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);R(this,e,t,n,i-1,-i)}var o=n-1,a=1,u=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)e<0&&0===u&&0!==this[t+o+1]&&(u=1),this[t+o]=(e/a>>0)-u&255;return t+n},s.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,1,127,-128),s.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},s.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,32767,-32768),s.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},s.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,32767,-32768),s.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},s.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,2147483647,-2147483648),s.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):C(this,e,t,!0),t+4},s.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),s.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):C(this,e,t,!1),t+4},s.prototype.writeFloatLE=function(e,t,n){return I(this,e,t,!0,n)},s.prototype.writeFloatBE=function(e,t,n){return I(this,e,t,!1,n)},s.prototype.writeDoubleLE=function(e,t,n){return F(this,e,t,!0,n)},s.prototype.writeDoubleBE=function(e,t,n){return F(this,e,t,!1,n)},s.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(o<1e3||!s.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function B(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(D,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function G(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}}).call(this,n(35))},function(e,t,n){"use strict";var r,i,o,a,u,s=s||function(e,t){var n={},r=n.lib={},i=function(){},o=r.Base={extend:function(e){i.prototype=this;var t=new i;return e&&t.mixIn(e),t.hasOwnProperty("init")||(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty("toString")&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}},a=r.WordArray=o.extend({init:function(e,t){e=this.words=e||[],this.sigBytes=null!=t?t:4*e.length},toString:function(e){return(e||s).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes;if(e=e.sigBytes,this.clamp(),r%4)for(var i=0;i>>2]|=(n[i>>>2]>>>24-i%4*8&255)<<24-(r+i)%4*8;else if(65535>>2]=n[i>>>2];else t.push.apply(t,n);return this.sigBytes+=e,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=o.clone.call(this);return e.words=this.words.slice(0),e},random:function(t){for(var n=[],r=0;r>>2]>>>24-r%4*8&255;n.push((i>>>4).toString(16)),n.push((15&i).toString(16))}return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new a.init(n,t/2)}},c=u.Latin1={stringify:function(e){var t=e.words;e=e.sigBytes;for(var n=[],r=0;r>>2]>>>24-r%4*8&255));return n.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new a.init(n,t)}},l=u.Utf8={stringify:function(e){try{return decodeURIComponent(escape(c.stringify(e)))}catch(e){throw Error("Malformed UTF-8 data")}},parse:function(e){return c.parse(unescape(encodeURIComponent(e)))}},f=r.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new a.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=l.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n=this._data,r=n.words,i=n.sigBytes,o=this.blockSize,u=i/(4*o);if(t=(u=t?e.ceil(u):e.max((0|u)-this._minBufferSize,0))*o,i=e.min(4*t,i),t){for(var s=0;sl;){var f;e:{f=c;for(var d=e.sqrt(f),p=2;p<=d;p++)if(!(f%p)){f=!1;break e}f=!0}f&&(8>l&&(o[l]=u(e.pow(c,.5))),a[l]=u(e.pow(c,1/3)),l++),c++}var h=[];i=i.SHA256=r.extend({_doReset:function(){this._hash=new n.init(o.slice(0))},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],o=n[2],u=n[3],s=n[4],c=n[5],l=n[6],f=n[7],d=0;64>d;d++){if(16>d)h[d]=0|e[t+d];else{var p=h[d-15],y=h[d-2];h[d]=((p<<25|p>>>7)^(p<<14|p>>>18)^p>>>3)+h[d-7]+((y<<15|y>>>17)^(y<<13|y>>>19)^y>>>10)+h[d-16]}p=f+((s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25))+(s&c^~s&l)+a[d]+h[d],y=((r<<30|r>>>2)^(r<<19|r>>>13)^(r<<10|r>>>22))+(r&i^r&o^i&o),f=l,l=c,c=s,s=u+p|0,u=o,o=i,i=r,r=p+y|0}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+o|0,n[3]=n[3]+u|0,n[4]=n[4]+s|0,n[5]=n[5]+c|0,n[6]=n[6]+l|0,n[7]=n[7]+f|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;return n[i>>>5]|=128<<24-i%32,n[14+(i+64>>>9<<4)]=e.floor(r/4294967296),n[15+(i+64>>>9<<4)]=r,t.sigBytes=4*n.length,this._process(),this._hash},clone:function(){var e=r.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA256=r._createHelper(i),t.HmacSHA256=r._createHmacHelper(i)}(Math),i=(r=s).enc.Utf8,r.algo.HMAC=r.lib.Base.extend({init:function(e,t){e=this._hasher=new e.init,"string"==typeof t&&(t=i.parse(t));var n=e.blockSize,r=4*n;t.sigBytes>r&&(t=e.finalize(t)),t.clamp();for(var o=this._oKey=t.clone(),a=this._iKey=t.clone(),u=o.words,s=a.words,c=0;c>>2]>>>24-i%4*8&255)<<16|(t[i+1>>>2]>>>24-(i+1)%4*8&255)<<8|t[i+2>>>2]>>>24-(i+2)%4*8&255,a=0;4>a&&i+.75*a>>6*(3-a)&63));if(t=r.charAt(64))for(;e.length%4;)e.push(t);return e.join("")},parse:function(e){var t=e.length,n=this._map;(r=n.charAt(64))&&-1!=(r=e.indexOf(r))&&(t=r);for(var r=[],i=0,o=0;o>>6-o%4*2;r[i>>>2]|=(u|s)<<24-i%4*8,i++}return a.create(r,i)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},function(e){function t(e,t,n,r,i,o,a){return((e=e+(t&n|~t&r)+i+a)<>>32-o)+t}function n(e,t,n,r,i,o,a){return((e=e+(t&r|n&~r)+i+a)<>>32-o)+t}function r(e,t,n,r,i,o,a){return((e=e+(t^n^r)+i+a)<>>32-o)+t}function i(e,t,n,r,i,o,a){return((e=e+(n^(t|~r))+i+a)<>>32-o)+t}for(var o=s,a=(c=o.lib).WordArray,u=c.Hasher,c=o.algo,l=[],f=0;64>f;f++)l[f]=4294967296*e.abs(e.sin(f+1))|0;c=c.MD5=u.extend({_doReset:function(){this._hash=new a.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,o){for(var a=0;16>a;a++){var u=e[s=o+a];e[s]=16711935&(u<<8|u>>>24)|4278255360&(u<<24|u>>>8)}a=this._hash.words;var s=e[o+0],c=(u=e[o+1],e[o+2]),f=e[o+3],d=e[o+4],p=e[o+5],h=e[o+6],y=e[o+7],g=e[o+8],v=e[o+9],b=e[o+10],m=e[o+11],_=e[o+12],P=e[o+13],O=e[o+14],S=e[o+15],w=t(w=a[0],x=a[1],T=a[2],k=a[3],s,7,l[0]),k=t(k,w,x,T,u,12,l[1]),T=t(T,k,w,x,c,17,l[2]),x=t(x,T,k,w,f,22,l[3]);w=t(w,x,T,k,d,7,l[4]),k=t(k,w,x,T,p,12,l[5]),T=t(T,k,w,x,h,17,l[6]),x=t(x,T,k,w,y,22,l[7]),w=t(w,x,T,k,g,7,l[8]),k=t(k,w,x,T,v,12,l[9]),T=t(T,k,w,x,b,17,l[10]),x=t(x,T,k,w,m,22,l[11]),w=t(w,x,T,k,_,7,l[12]),k=t(k,w,x,T,P,12,l[13]),T=t(T,k,w,x,O,17,l[14]),w=n(w,x=t(x,T,k,w,S,22,l[15]),T,k,u,5,l[16]),k=n(k,w,x,T,h,9,l[17]),T=n(T,k,w,x,m,14,l[18]),x=n(x,T,k,w,s,20,l[19]),w=n(w,x,T,k,p,5,l[20]),k=n(k,w,x,T,b,9,l[21]),T=n(T,k,w,x,S,14,l[22]),x=n(x,T,k,w,d,20,l[23]),w=n(w,x,T,k,v,5,l[24]),k=n(k,w,x,T,O,9,l[25]),T=n(T,k,w,x,f,14,l[26]),x=n(x,T,k,w,g,20,l[27]),w=n(w,x,T,k,P,5,l[28]),k=n(k,w,x,T,c,9,l[29]),T=n(T,k,w,x,y,14,l[30]),w=r(w,x=n(x,T,k,w,_,20,l[31]),T,k,p,4,l[32]),k=r(k,w,x,T,g,11,l[33]),T=r(T,k,w,x,m,16,l[34]),x=r(x,T,k,w,O,23,l[35]),w=r(w,x,T,k,u,4,l[36]),k=r(k,w,x,T,d,11,l[37]),T=r(T,k,w,x,y,16,l[38]),x=r(x,T,k,w,b,23,l[39]),w=r(w,x,T,k,P,4,l[40]),k=r(k,w,x,T,s,11,l[41]),T=r(T,k,w,x,f,16,l[42]),x=r(x,T,k,w,h,23,l[43]),w=r(w,x,T,k,v,4,l[44]),k=r(k,w,x,T,_,11,l[45]),T=r(T,k,w,x,S,16,l[46]),w=i(w,x=r(x,T,k,w,c,23,l[47]),T,k,s,6,l[48]),k=i(k,w,x,T,y,10,l[49]),T=i(T,k,w,x,O,15,l[50]),x=i(x,T,k,w,p,21,l[51]),w=i(w,x,T,k,_,6,l[52]),k=i(k,w,x,T,f,10,l[53]),T=i(T,k,w,x,b,15,l[54]),x=i(x,T,k,w,u,21,l[55]),w=i(w,x,T,k,g,6,l[56]),k=i(k,w,x,T,S,10,l[57]),T=i(T,k,w,x,h,15,l[58]),x=i(x,T,k,w,P,21,l[59]),w=i(w,x,T,k,d,6,l[60]),k=i(k,w,x,T,m,10,l[61]),T=i(T,k,w,x,c,15,l[62]),x=i(x,T,k,w,v,21,l[63]);a[0]=a[0]+w|0,a[1]=a[1]+x|0,a[2]=a[2]+T|0,a[3]=a[3]+k|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,i=8*t.sigBytes;n[i>>>5]|=128<<24-i%32;var o=e.floor(r/4294967296);for(n[15+(i+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),n[14+(i+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(n.length+1),this._process(),n=(t=this._hash).words,r=0;4>r;r++)i=n[r],n[r]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8);return t},clone:function(){var e=u.clone.call(this);return e._hash=this._hash.clone(),e}}),o.MD5=u._createHelper(c),o.HmacMD5=u._createHmacHelper(c)}(Math),function(){var e,t=s,n=(e=t.lib).Base,r=e.WordArray,i=(e=t.algo).EvpKDF=n.extend({cfg:n.extend({keySize:4,hasher:e.MD5,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n=(u=this.cfg).hasher.create(),i=r.create(),o=i.words,a=u.keySize,u=u.iterations;o.length>>2]}},t.BlockCipher=u.extend({cfg:u.cfg.extend({mode:c,padding:f}),reset:function(){u.reset.call(this);var e=(t=this.cfg).iv,t=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=t.createEncryptor;else n=t.createDecryptor,this._minBufferSize=1;this._mode=n.call(t,this,e&&e.words)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){e.pad(this._data,this.blockSize);var t=this._process(!0)}else t=this._process(!0),e.unpad(t);return t},blockSize:4});var d=t.CipherParams=n.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),p=(c=(h.format={}).OpenSSL={stringify:function(e){var t=e.ciphertext;return((e=e.salt)?r.create([1398893684,1701076831]).concat(e).concat(t):t).toString(o)},parse:function(e){var t=(e=o.parse(e)).words;if(1398893684==t[0]&&1701076831==t[1]){var n=r.create(t.slice(2,4));t.splice(0,4),e.sigBytes-=16}return d.create({ciphertext:e,salt:n})}},t.SerializableCipher=n.extend({cfg:n.extend({format:c}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r);return t=i.finalize(t),i=i.cfg,d.create({ciphertext:t,key:n,iv:i.iv,algorithm:e,mode:i.mode,padding:i.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return"string"==typeof e?t.parse(e,this):e}})),h=(h.kdf={}).OpenSSL={execute:function(e,t,n,i){return i||(i=r.random(8)),e=a.create({keySize:t+n}).compute(e,i),n=r.create(e.words.slice(t),4*n),e.sigBytes=4*t,d.create({key:e,iv:n,salt:i})}},y=t.PasswordBasedCipher=p.extend({cfg:p.cfg.extend({kdf:h}),encrypt:function(e,t,n,r){return n=(r=this.cfg.extend(r)).kdf.execute(n,e.keySize,e.ivSize),r.iv=n.iv,(e=p.encrypt.call(this,e,t,n.key,r)).mixIn(n),e},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),n=r.kdf.execute(n,e.keySize,e.ivSize,t.salt),r.iv=n.iv,p.decrypt.call(this,e,t,n.key,r)}})}(),function(){for(var e=s,t=e.lib.BlockCipher,n=e.algo,r=[],i=[],o=[],a=[],u=[],c=[],l=[],f=[],d=[],p=[],h=[],y=0;256>y;y++)h[y]=128>y?y<<1:y<<1^283;var g=0,v=0;for(y=0;256>y;y++){var b=(b=v^v<<1^v<<2^v<<3^v<<4)>>>8^255&b^99;r[g]=b,i[b]=g;var m=h[g],_=h[m],P=h[_],O=257*h[b]^16843008*b;o[g]=O<<24|O>>>8,a[g]=O<<16|O>>>16,u[g]=O<<8|O>>>24,c[g]=O,O=16843009*P^65537*_^257*m^16843008*g,l[b]=O<<24|O>>>8,f[b]=O<<16|O>>>16,d[b]=O<<8|O>>>24,p[b]=O,g?(g=m^h[h[h[P^m]]],v^=h[h[v]]):g=v=1}var S=[0,1,2,4,8,16,32,64,128,27,54];n=n.AES=t.extend({_doReset:function(){for(var e=(n=this._key).words,t=n.sigBytes/4,n=4*((this._nRounds=t+6)+1),i=this._keySchedule=[],o=0;o>>24]<<24|r[a>>>16&255]<<16|r[a>>>8&255]<<8|r[255&a]):(a=r[(a=a<<8|a>>>24)>>>24]<<24|r[a>>>16&255]<<16|r[a>>>8&255]<<8|r[255&a],a^=S[o/t|0]<<24),i[o]=i[o-t]^a}for(e=this._invKeySchedule=[],t=0;tt||4>=o?a:l[r[a>>>24]]^f[r[a>>>16&255]]^d[r[a>>>8&255]]^p[r[255&a]]},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,o,a,u,c,r)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,l,f,d,p,i),n=e[t+1],e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,o,a,u){for(var s=this._nRounds,c=e[t]^n[0],l=e[t+1]^n[1],f=e[t+2]^n[2],d=e[t+3]^n[3],p=4,h=1;h>>24]^i[l>>>16&255]^o[f>>>8&255]^a[255&d]^n[p++],g=r[l>>>24]^i[f>>>16&255]^o[d>>>8&255]^a[255&c]^n[p++],v=r[f>>>24]^i[d>>>16&255]^o[c>>>8&255]^a[255&l]^n[p++];d=r[d>>>24]^i[c>>>16&255]^o[l>>>8&255]^a[255&f]^n[p++],c=y,l=g,f=v}y=(u[c>>>24]<<24|u[l>>>16&255]<<16|u[f>>>8&255]<<8|u[255&d])^n[p++],g=(u[l>>>24]<<24|u[f>>>16&255]<<16|u[d>>>8&255]<<8|u[255&c])^n[p++],v=(u[f>>>24]<<24|u[d>>>16&255]<<16|u[c>>>8&255]<<8|u[255&l])^n[p++],d=(u[d>>>24]<<24|u[c>>>16&255]<<16|u[l>>>8&255]<<8|u[255&f])^n[p++],e[t]=y,e[t+1]=g,e[t+2]=v,e[t+3]=d},keySize:8});e.AES=t._createHelper(n)}(),s.mode.ECB=((u=s.lib.BlockCipherMode.extend()).Encryptor=u.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),u.Decryptor=u.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),u),e.exports=s},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),u=(n(2),r(n(10))),s=function(){function e(){(0,i.default)(this,e),(0,a.default)(this,"_listeners",void 0),this._listeners=[]}return(0,o.default)(e,[{key:"addListener",value:function(e){this._listeners.push(e)}},{key:"removeListener",value:function(e){var t=[];this._listeners.forEach((function(n){n!==e&&t.push(n)})),this._listeners=t}},{key:"removeAllListeners",value:function(){this._listeners=[]}},{key:"announcePresence",value:function(e){this._listeners.forEach((function(t){t.presence&&t.presence(e)}))}},{key:"announceStatus",value:function(e){this._listeners.forEach((function(t){t.status&&t.status(e)}))}},{key:"announceMessage",value:function(e){this._listeners.forEach((function(t){t.message&&t.message(e)}))}},{key:"announceSignal",value:function(e){this._listeners.forEach((function(t){t.signal&&t.signal(e)}))}},{key:"announceMessageAction",value:function(e){this._listeners.forEach((function(t){t.messageAction&&t.messageAction(e)}))}},{key:"announceFile",value:function(e){this._listeners.forEach((function(t){t.file&&t.file(e)}))}},{key:"announceObjects",value:function(e){this._listeners.forEach((function(t){t.objects&&t.objects(e)}))}},{key:"announceUser",value:function(e){this._listeners.forEach((function(t){t.user&&t.user(e)}))}},{key:"announceSpace",value:function(e){this._listeners.forEach((function(t){t.space&&t.space(e)}))}},{key:"announceMembership",value:function(e){this._listeners.forEach((function(t){t.membership&&t.membership(e)}))}},{key:"announceNetworkUp",value:function(){var e={};e.category=u.default.PNNetworkUpCategory,this.announceStatus(e)}},{key:"announceNetworkDown",value:function(){var e={};e.category=u.default.PNNetworkDownCategory,this.announceStatus(e)}}]),e}();t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNTimeOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(){return"/time/0"},t.handleResponse=function(e,t){return{timetoken:t[0]}},t.isAuthSupported=function(){return!1},t.prepareParams=function(){return{}},t.validateParams=function(){};n(2);var i=r(n(1))},function(e,t,n){},function(e,t,n){"use strict";var r=n(21),i=Object.prototype.hasOwnProperty,o=Array.isArray,a=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),u=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(o(n)){for(var r=[],i=0;i=48&&l<=57||l>=65&&l<=90||l>=97&&l<=122||o===r.RFC1738&&(40===l||41===l)?s+=u.charAt(c):l<128?s+=a[l]:l<2048?s+=a[192|l>>6]+a[128|63&l]:l<55296||l>=57344?s+=a[224|l>>12]+a[128|l>>6&63]+a[128|63&l]:(c+=1,l=65536+((1023&l)<<10|1023&u.charCodeAt(c)),s+=a[240|l>>18]+a[128|l>>12&63]+a[128|l>>6&63]+a[128|63&l])}return s},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(o(e)){for(var n=[],r=0;r>24,r[o+1]=(16711680&u)>>16,r[o+2]=(65280&u)>>8,r[o+3]=255&u}for(var s=o+3;s>=o;s-=1)0===r[s]&&(i+=1);return i>0?r.buffer.slice(0,r.byteLength-i):r.buffer}function P(e){var t=function(e){return e&&"object"===(0,s.default)(e)&&e.constructor===Object};if(!t(e))return e;var n={};return Object.keys(e).forEach((function(r){var i=function(e){return"string"==typeof e||e instanceof String}(r),o=r,a=e[r];Array.isArray(r)||i&&r.indexOf(",")>=0?o=(i?r.split(","):r).reduce((function(e,t){return e+=String.fromCharCode(t)}),""):(function(e){return"number"==typeof e&&isFinite(e)}(r)||i&&!isNaN(r))&&(o=String.fromCharCode(i?parseInt(r,10):10));n[o]=t(a)?P(a):a})),n}var O=function(e){(0,o.default)(n,e);var t=b(n);function n(e){var r;(0,i.default)(this,n);var o=e.listenToBrowserNetworkEvents,a=void 0===o||o;return e.db=p.default,e.sdkFamily="Web",e.networking=new f.default({del:y.del,get:y.get,post:y.post,patch:y.patch,sendBeacon:m,getfile:y.getfile,postfile:y.postfile}),e.cbor=new h.default((function(e){return P(c.default.decode(e))}),_),e.PubNubFile=v.default,e.cryptography=new g.default,r=t.call(this,e),a&&(window.addEventListener("offline",(function(){r.networkDownDetected()})),window.addEventListener("online",(function(){r.networkUpDetected()}))),r}return n}(l.default);t.default=O,e.exports=t.default},function(e,t,n){var r,i;!function(o,a){"use strict";var u=Math.pow(2,-24),s=Math.pow(2,32),c=Math.pow(2,53);void 0===(i="function"==typeof(r={encode:function(e){var t,n=new ArrayBuffer(256),r=new DataView(n),i=0;function o(e){for(var o=n.byteLength,a=i+e;o>2,c=0;c>6),r.push(128|63&s)):s<55296?(r.push(224|s>>12),r.push(128|s>>6&63),r.push(128|63&s)):(s=(1023&s)<<10,s|=1023&t.charCodeAt(++n),s+=65536,r.push(240|s>>18),r.push(128|s>>12&63),r.push(128|s>>6&63),r.push(128|63&s))}return f(3,r.length),l(r);default:var d;if(Array.isArray(t))for(f(4,d=t.length),n=0;n>5!==e)throw"Invalid indefinite length element";return n}function y(e,t){for(var n=0;n>10),e.push(56320|1023&r))}}"function"!=typeof t&&(t=function(e){return e}),"function"!=typeof n&&(n=function(){});var g=function e(){var s,f,g=c(),v=g>>5,b=31&g;if(7===v)switch(b){case 25:return function(){var e=new ArrayBuffer(4),t=new DataView(e),n=l(),r=32768&n,i=31744&n,o=1023&n;if(31744===i)i=261120;else if(0!==i)i+=114688;else if(0!==o)return o*u;return t.setUint32(0,r<<16|i<<13|o<<13),t.getFloat32(0)}();case 26:return o(r.getFloat32(i),4);case 27:return o(r.getFloat64(i),8)}if((f=p(b))<0&&(v<2||6=0;)_+=f,m.push(a(f));var P=new Uint8Array(_),O=0;for(s=0;s=0;)y(S,f);else y(S,f);return String.fromCharCode.apply(null,S);case 4:var w;if(f<0)for(w=[];!d();)w.push(e());else for(w=new Array(f),s=0;s1?t-1:0),i=1;i1?t-1:0),i=1;i1?t-1:0),i=1;i1?t-1:0),i=1;i0?a-4:a;for(n=0;n>16&255,s[l++]=t>>8&255,s[l++]=255&t;2===u&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,s[l++]=255&t);1===u&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,s[l++]=t>>8&255,s[l++]=255&t);return s},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],a=0,u=n-i;au?u:a+16383));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",u=0,s=a.length;u0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var i,o,a=[],u=t;u>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(e,t){ +/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ +t.read=function(e,t,n,r,i){var o,a,u=8*i-r-1,s=(1<>1,l=-7,f=n?i-1:0,d=n?-1:1,p=e[t+f];for(f+=d,o=p&(1<<-l)-1,p>>=-l,l+=u;l>0;o=256*o+e[t+f],f+=d,l-=8);for(a=o&(1<<-l)-1,o>>=-l,l+=r;l>0;a=256*a+e[t+f],f+=d,l-=8);if(0===o)o=1-c;else{if(o===s)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,r),o-=c}return(p?-1:1)*a*Math.pow(2,o-r)},t.write=function(e,t,n,r,i,o){var a,u,s,c=8*o-i-1,l=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,h=r?1:-1,y=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(u=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(s=Math.pow(2,-a))<1&&(a--,s*=2),(t+=a+f>=1?d/s:d*Math.pow(2,1-f))*s>=2&&(a++,s/=2),a+f>=l?(u=0,a=l):a+f>=1?(u=(t*s-1)*Math.pow(2,i),a+=f):(u=t*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;e[n+p]=255&u,p+=h,u/=256,i-=8);for(a=a<0;e[n+p]=255&a,p+=h,a/=256,c-=8);e[n+p-h]|=128*y}},function(e,t){var n={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==n.call(e)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),o=r(n(5)),a=r(n(6)),u=r(n(4)),s=(r(n(23)),r(n(8)),r(n(26)),r(n(40))),c=r(n(41)),l=r(n(3)),f=(n(2),r(n(10))),d=function(){function e(t){var n=t.subscribeEndpoint,r=t.leaveEndpoint,i=t.heartbeatEndpoint,a=t.setStateEndpoint,l=t.timeEndpoint,f=t.getFileUrl,d=t.config,p=t.crypto,h=t.listenerManager;(0,o.default)(this,e),(0,u.default)(this,"_crypto",void 0),(0,u.default)(this,"_config",void 0),(0,u.default)(this,"_listenerManager",void 0),(0,u.default)(this,"_reconnectionManager",void 0),(0,u.default)(this,"_leaveEndpoint",void 0),(0,u.default)(this,"_heartbeatEndpoint",void 0),(0,u.default)(this,"_setStateEndpoint",void 0),(0,u.default)(this,"_subscribeEndpoint",void 0),(0,u.default)(this,"_getFileUrl",void 0),(0,u.default)(this,"_channels",void 0),(0,u.default)(this,"_presenceChannels",void 0),(0,u.default)(this,"_heartbeatChannels",void 0),(0,u.default)(this,"_heartbeatChannelGroups",void 0),(0,u.default)(this,"_channelGroups",void 0),(0,u.default)(this,"_presenceChannelGroups",void 0),(0,u.default)(this,"_currentTimetoken",void 0),(0,u.default)(this,"_lastTimetoken",void 0),(0,u.default)(this,"_storedTimetoken",void 0),(0,u.default)(this,"_region",void 0),(0,u.default)(this,"_subscribeCall",void 0),(0,u.default)(this,"_heartbeatTimer",void 0),(0,u.default)(this,"_subscriptionStatusAnnounced",void 0),(0,u.default)(this,"_autoNetworkDetection",void 0),(0,u.default)(this,"_isOnline",void 0),(0,u.default)(this,"_pendingChannelSubscriptions",void 0),(0,u.default)(this,"_pendingChannelGroupSubscriptions",void 0),(0,u.default)(this,"_dedupingManager",void 0),this._listenerManager=h,this._config=d,this._leaveEndpoint=r,this._heartbeatEndpoint=i,this._setStateEndpoint=a,this._subscribeEndpoint=n,this._getFileUrl=f,this._crypto=p,this._channels={},this._presenceChannels={},this._heartbeatChannels={},this._heartbeatChannelGroups={},this._channelGroups={},this._presenceChannelGroups={},this._pendingChannelSubscriptions=[],this._pendingChannelGroupSubscriptions=[],this._currentTimetoken=0,this._lastTimetoken=0,this._storedTimetoken=null,this._subscriptionStatusAnnounced=!1,this._isOnline=!0,this._reconnectionManager=new s.default({timeEndpoint:l}),this._dedupingManager=new c.default({config:d})}return(0,a.default)(e,[{key:"adaptStateChange",value:function(e,t){var n=this,r=e.state,i=e.channels,o=void 0===i?[]:i,a=e.channelGroups,u=void 0===a?[]:a;return o.forEach((function(e){e in n._channels&&(n._channels[e].state=r)})),u.forEach((function(e){e in n._channelGroups&&(n._channelGroups[e].state=r)})),this._setStateEndpoint({state:r,channels:o,channelGroups:u},t)}},{key:"adaptPresenceChange",value:function(e){var t=this,n=e.connected,r=e.channels,i=void 0===r?[]:r,o=e.channelGroups,a=void 0===o?[]:o;n?(i.forEach((function(e){t._heartbeatChannels[e]={state:{}}})),a.forEach((function(e){t._heartbeatChannelGroups[e]={state:{}}}))):(i.forEach((function(e){e in t._heartbeatChannels&&delete t._heartbeatChannels[e]})),a.forEach((function(e){e in t._heartbeatChannelGroups&&delete t._heartbeatChannelGroups[e]})),!1===this._config.suppressLeaveEvents&&this._leaveEndpoint({channels:i,channelGroups:a},(function(e){t._listenerManager.announceStatus(e)}))),this.reconnect()}},{key:"adaptSubscribeChange",value:function(e){var t=this,n=e.timetoken,r=e.channels,i=void 0===r?[]:r,o=e.channelGroups,a=void 0===o?[]:o,u=e.withPresence,s=void 0!==u&&u,c=e.withHeartbeats,l=void 0!==c&&c;this._config.subscribeKey&&""!==this._config.subscribeKey?(n&&(this._lastTimetoken=this._currentTimetoken,this._currentTimetoken=n),"0"!==this._currentTimetoken&&0!==this._currentTimetoken&&(this._storedTimetoken=this._currentTimetoken,this._currentTimetoken=0),i.forEach((function(e){t._channels[e]={state:{}},s&&(t._presenceChannels[e]={}),(l||t._config.getHeartbeatInterval())&&(t._heartbeatChannels[e]={}),t._pendingChannelSubscriptions.push(e)})),a.forEach((function(e){t._channelGroups[e]={state:{}},s&&(t._presenceChannelGroups[e]={}),(l||t._config.getHeartbeatInterval())&&(t._heartbeatChannelGroups[e]={}),t._pendingChannelGroupSubscriptions.push(e)})),this._subscriptionStatusAnnounced=!1,this.reconnect()):console&&console.log&&console.log("subscribe key missing; aborting subscribe")}},{key:"adaptUnsubscribeChange",value:function(e,t){var n=this,r=e.channels,i=void 0===r?[]:r,o=e.channelGroups,a=void 0===o?[]:o,u=[],s=[];i.forEach((function(e){e in n._channels&&(delete n._channels[e],u.push(e),e in n._heartbeatChannels&&delete n._heartbeatChannels[e]),e in n._presenceChannels&&(delete n._presenceChannels[e],u.push(e))})),a.forEach((function(e){e in n._channelGroups&&(delete n._channelGroups[e],s.push(e),e in n._heartbeatChannelGroups&&delete n._heartbeatChannelGroups[e]),e in n._presenceChannelGroups&&(delete n._channelGroups[e],s.push(e))})),0===u.length&&0===s.length||(!1!==this._config.suppressLeaveEvents||t||this._leaveEndpoint({channels:u,channelGroups:s},(function(e){e.affectedChannels=u,e.affectedChannelGroups=s,e.currentTimetoken=n._currentTimetoken,e.lastTimetoken=n._lastTimetoken,n._listenerManager.announceStatus(e)})),0===Object.keys(this._channels).length&&0===Object.keys(this._presenceChannels).length&&0===Object.keys(this._channelGroups).length&&0===Object.keys(this._presenceChannelGroups).length&&(this._lastTimetoken=0,this._currentTimetoken=0,this._storedTimetoken=null,this._region=null,this._reconnectionManager.stopPolling()),this.reconnect())}},{key:"unsubscribeAll",value:function(e){this.adaptUnsubscribeChange({channels:this.getSubscribedChannels(),channelGroups:this.getSubscribedChannelGroups()},e)}},{key:"getHeartbeatChannels",value:function(){return Object.keys(this._heartbeatChannels)}},{key:"getHeartbeatChannelGroups",value:function(){return Object.keys(this._heartbeatChannelGroups)}},{key:"getSubscribedChannels",value:function(){return Object.keys(this._channels)}},{key:"getSubscribedChannelGroups",value:function(){return Object.keys(this._channelGroups)}},{key:"reconnect",value:function(){this._startSubscribeLoop(),this._registerHeartbeatTimer()}},{key:"disconnect",value:function(){this._stopSubscribeLoop(),this._stopHeartbeatTimer(),this._reconnectionManager.stopPolling()}},{key:"_registerHeartbeatTimer",value:function(){this._stopHeartbeatTimer(),0!==this._config.getHeartbeatInterval()&&void 0!==this._config.getHeartbeatInterval()&&(this._performHeartbeatLoop(),this._heartbeatTimer=setInterval(this._performHeartbeatLoop.bind(this),1e3*this._config.getHeartbeatInterval()))}},{key:"_stopHeartbeatTimer",value:function(){this._heartbeatTimer&&(clearInterval(this._heartbeatTimer),this._heartbeatTimer=null)}},{key:"_performHeartbeatLoop",value:function(){var e=this,t=this.getHeartbeatChannels(),n=this.getHeartbeatChannelGroups(),r={};if(0!==t.length||0!==n.length){this.getSubscribedChannels().forEach((function(t){var n=e._channels[t].state;Object.keys(n).length&&(r[t]=n)})),this.getSubscribedChannelGroups().forEach((function(t){var n=e._channelGroups[t].state;Object.keys(n).length&&(r[t]=n)}));this._heartbeatEndpoint({channels:t,channelGroups:n,state:r},function(t){t.error&&e._config.announceFailedHeartbeats&&e._listenerManager.announceStatus(t),t.error&&e._config.autoNetworkDetection&&e._isOnline&&(e._isOnline=!1,e.disconnect(),e._listenerManager.announceNetworkDown(),e.reconnect()),!t.error&&e._config.announceSuccessfulHeartbeats&&e._listenerManager.announceStatus(t)}.bind(this))}}},{key:"_startSubscribeLoop",value:function(){var e=this;this._stopSubscribeLoop();var t={},n=[],r=[];if(Object.keys(this._channels).forEach((function(r){var i=e._channels[r].state;Object.keys(i).length&&(t[r]=i),n.push(r)})),Object.keys(this._presenceChannels).forEach((function(e){n.push("".concat(e,"-pnpres"))})),Object.keys(this._channelGroups).forEach((function(n){var i=e._channelGroups[n].state;Object.keys(i).length&&(t[n]=i),r.push(n)})),Object.keys(this._presenceChannelGroups).forEach((function(e){r.push("".concat(e,"-pnpres"))})),0!==n.length||0!==r.length){var i={channels:n,channelGroups:r,state:t,timetoken:this._currentTimetoken,filterExpression:this._config.filterExpression,region:this._region};this._subscribeCall=this._subscribeEndpoint(i,this._processSubscribeResponse.bind(this))}}},{key:"_processSubscribeResponse",value:function(e,t){var n=this;if(e.error)e.category===f.default.PNTimeoutCategory?this._startSubscribeLoop():e.category===f.default.PNNetworkIssuesCategory?(this.disconnect(),e.error&&this._config.autoNetworkDetection&&this._isOnline&&(this._isOnline=!1,this._listenerManager.announceNetworkDown()),this._reconnectionManager.onReconnection((function(){n._config.autoNetworkDetection&&!n._isOnline&&(n._isOnline=!0,n._listenerManager.announceNetworkUp()),n.reconnect(),n._subscriptionStatusAnnounced=!0;var t={category:f.default.PNReconnectedCategory,operation:e.operation,lastTimetoken:n._lastTimetoken,currentTimetoken:n._currentTimetoken};n._listenerManager.announceStatus(t)})),this._reconnectionManager.startPolling(),this._listenerManager.announceStatus(e)):e.category===f.default.PNBadRequestCategory?(this._stopHeartbeatTimer(),this._listenerManager.announceStatus(e)):this._listenerManager.announceStatus(e);else{if(this._storedTimetoken?(this._currentTimetoken=this._storedTimetoken,this._storedTimetoken=null):(this._lastTimetoken=this._currentTimetoken,this._currentTimetoken=t.metadata.timetoken),!this._subscriptionStatusAnnounced){var r={};r.category=f.default.PNConnectedCategory,r.operation=e.operation,r.affectedChannels=this._pendingChannelSubscriptions,r.subscribedChannels=this.getSubscribedChannels(),r.affectedChannelGroups=this._pendingChannelGroupSubscriptions,r.lastTimetoken=this._lastTimetoken,r.currentTimetoken=this._currentTimetoken,this._subscriptionStatusAnnounced=!0,this._listenerManager.announceStatus(r),this._pendingChannelSubscriptions=[],this._pendingChannelGroupSubscriptions=[]}var o=t.messages||[],a=this._config,u=a.requestMessageCountThreshold,s=a.dedupeOnSubscribe;if(u&&o.length>=u){var c={};c.category=f.default.PNRequestMessageCountExceededCategory,c.operation=e.operation,this._listenerManager.announceStatus(c)}o.forEach((function(e){var t=e.channel,r=e.subscriptionMatch,o=e.publishMetaData;if(t===r&&(r=null),s){if(n._dedupingManager.isDuplicate(e))return;n._dedupingManager.addEntry(e)}if(l.default.endsWith(e.channel,"-pnpres")){var a={channel:null,subscription:null};a.actualChannel=null!=r?t:null,a.subscribedChannel=null!=r?r:t,t&&(a.channel=t.substring(0,t.lastIndexOf("-pnpres"))),r&&(a.subscription=r.substring(0,r.lastIndexOf("-pnpres"))),a.action=e.payload.action,a.state=e.payload.data,a.timetoken=o.publishTimetoken,a.occupancy=e.payload.occupancy,a.uuid=e.payload.uuid,a.timestamp=e.payload.timestamp,e.payload.join&&(a.join=e.payload.join),e.payload.leave&&(a.leave=e.payload.leave),e.payload.timeout&&(a.timeout=e.payload.timeout),n._listenerManager.announcePresence(a)}else if(1===e.messageType){var u={channel:null,subscription:null};u.channel=t,u.subscription=r,u.timetoken=o.publishTimetoken,u.publisher=e.issuingClientId,e.userMetadata&&(u.userMetadata=e.userMetadata),u.message=e.payload,n._listenerManager.announceSignal(u)}else if(2===e.messageType){var c={channel:null,subscription:null};c.channel=t,c.subscription=r,c.timetoken=o.publishTimetoken,c.publisher=e.issuingClientId,e.userMetadata&&(c.userMetadata=e.userMetadata),c.message={event:e.payload.event,type:e.payload.type,data:e.payload.data},n._listenerManager.announceObjects(c),"user"===e.payload.type?n._listenerManager.announceUser(c):"space"===e.payload.type?n._listenerManager.announceSpace(c):"membership"===e.payload.type&&n._listenerManager.announceMembership(c)}else if(3===e.messageType){var f={};f.channel=t,f.subscription=r,f.timetoken=o.publishTimetoken,f.publisher=e.issuingClientId,f.data={messageTimetoken:e.payload.data.messageTimetoken,actionTimetoken:e.payload.data.actionTimetoken,type:e.payload.data.type,uuid:e.issuingClientId,value:e.payload.data.value},f.event=e.payload.event,n._listenerManager.announceMessageAction(f)}else if(4===e.messageType){var d={};d.channel=t,d.subscription=r,d.timetoken=o.publishTimetoken,d.publisher=e.issuingClientId;var p=e.payload;if(n._config.cipherKey){var h=n._crypto.decrypt(e.payload);"object"===(0,i.default)(h)&&null!==h&&(p=h)}e.userMetadata&&(d.userMetadata=e.userMetadata),d.message=p.message,d.file={id:p.file.id,name:p.file.name,url:n._getFileUrl({id:p.file.id,name:p.file.name,channel:t})},n._listenerManager.announceFile(d)}else{var y={channel:null,subscription:null};y.actualChannel=null!=r?t:null,y.subscribedChannel=null!=r?r:t,y.channel=t,y.subscription=r,y.timetoken=o.publishTimetoken,y.publisher=e.issuingClientId,e.userMetadata&&(y.userMetadata=e.userMetadata),n._config.cipherKey?y.message=n._crypto.decrypt(e.payload):y.message=e.payload,n._listenerManager.announceMessage(y)}})),this._region=t.metadata.region,this._startSubscribeLoop()}}},{key:"_stopSubscribeLoop",value:function(){this._subscribeCall&&("function"==typeof this._subscribeCall.abort&&this._subscribeCall.abort(),this._subscribeCall=null)}}]),e}();t.default=d,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),u=(r(n(27)),n(2),function(){function e(t){var n=t.timeEndpoint;(0,i.default)(this,e),(0,a.default)(this,"_reconnectionCallback",void 0),(0,a.default)(this,"_timeEndpoint",void 0),(0,a.default)(this,"_timeTimer",void 0),this._timeEndpoint=n}return(0,o.default)(e,[{key:"onReconnection",value:function(e){this._reconnectionCallback=e}},{key:"startPolling",value:function(){this._timeTimer=setInterval(this._performTimeLoop.bind(this),3e3)}},{key:"stopPolling",value:function(){clearInterval(this._timeTimer)}},{key:"_performTimeLoop",value:function(){var e=this;this._timeEndpoint((function(t){t.error||(clearInterval(e._timeTimer),e._reconnectionCallback())}))}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),u=(r(n(8)),n(2),function(){function e(t){var n=t.config;(0,i.default)(this,e),(0,a.default)(this,"_config",void 0),(0,a.default)(this,"hashHistory",void 0),this.hashHistory=[],this._config=n}return(0,o.default)(e,[{key:"getKey",value:function(e){var t=function(e){var t=0;if(0===e.length)return t;for(var n=0;n=this._config.maximumCacheSize&&this.hashHistory.shift(),this.hashHistory.push(this.getKey(e))}},{key:"clearHistory",value:function(){this.hashHistory=[]}}]),e}());t.default=u,e.exports=t.default},function(e,t){var n,r,i=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function u(e){if(n===setTimeout)return setTimeout(e,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(e){n=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var s,c=[],l=!1,f=-1;function d(){l&&s&&(l=!1,s.length?c=s.concat(c):f=-1,c.length&&p())}function p(){if(!l){var e=u(d);l=!0;for(var t=c.length;t;){for(s=c,c=[];++f1)for(var n=1;n0&&(t["l_".concat(n)]=i)})),t}},{key:"startLatencyMeasure",value:function(e,t){e!==u.default.PNSubscribeOperation&&t&&(this._trackedLatencies[t]=Date.now())}},{key:"stopLatencyMeasure",value:function(e,t){if(e!==u.default.PNSubscribeOperation&&t){var n=this._endpointName(e),r=this._latencies[n],i=this._trackedLatencies[t];r||(r=this._latencies[n]=[]),r.push(Date.now()-i),r.length>this._maximumSamplesCount&&r.splice(0,r.length-this._maximumSamplesCount),delete this._trackedLatencies[t]}}},{key:"_averageLatency",value:function(e){return Math.floor(e.reduce((function(e,t){return e+t}),0)/e.length)}},{key:"_endpointName",value:function(e){var t=null;switch(e){case u.default.PNPublishOperation:t="pub";break;case u.default.PNSignalOperation:t="sig";break;case u.default.PNHistoryOperation:case u.default.PNFetchMessagesOperation:case u.default.PNDeleteMessagesOperation:case u.default.PNMessageCounts:t="hist";break;case u.default.PNUnsubscribeOperation:case u.default.PNWhereNowOperation:case u.default.PNHereNowOperation:case u.default.PNHeartbeatOperation:case u.default.PNSetStateOperation:case u.default.PNGetStateOperation:t="pres";break;case u.default.PNAddChannelsToGroupOperation:case u.default.PNRemoveChannelsFromGroupOperation:case u.default.PNChannelGroupsOperation:case u.default.PNRemoveGroupOperation:case u.default.PNChannelsForGroupOperation:t="cg";break;case u.default.PNPushNotificationEnabledChannelsOperation:case u.default.PNRemoveAllPushNotificationsOperation:t="push";break;case u.default.PNCreateUserOperation:case u.default.PNUpdateUserOperation:case u.default.PNDeleteUserOperation:case u.default.PNGetUserOperation:case u.default.PNGetUsersOperation:case u.default.PNCreateSpaceOperation:case u.default.PNUpdateSpaceOperation:case u.default.PNDeleteSpaceOperation:case u.default.PNGetSpaceOperation:case u.default.PNGetSpacesOperation:case u.default.PNGetMembersOperation:case u.default.PNUpdateMembersOperation:case u.default.PNGetMembershipsOperation:case u.default.PNUpdateMembershipsOperation:t="obj";break;case u.default.PNAddMessageActionOperation:case u.default.PNRemoveMessageActionOperation:case u.default.PNGetMessageActionsOperation:t="msga";break;case u.default.PNAccessManagerGrant:case u.default.PNAccessManagerAudit:t="pam";break;case u.default.PNAccessManagerGrantToken:case u.default.PNAccessManagerRevokeToken:t="pamv3";break;default:t="time"}return t}}]),e}();t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.MPNSNotificationPayload=t.FCMNotificationPayload=t.APNSNotificationPayload=void 0;var i=r(n(45)),o=r(n(22)),a=r(n(14)),u=r(n(16)),s=r(n(13)),c=r(n(5)),l=r(n(6)),f=r(n(4)),d=(n(2),["notification","data"]);function p(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function h(e){for(var t=1;t2){var r=this._payload,o=(r.notification,r.data,(0,i.default)(r,d));e=h(h({},e),o)}return this._isSilent?e.notification=this._payload.notification:t=this._payload.notification,Object.keys(e).length&&(n.data=e),t&&Object.keys(t).length&&(n.notification=t),Object.keys(n).length?n:null}}]),n}(g);t.FCMNotificationPayload=m;var _=function(){function e(t,n){(0,c.default)(this,e),(0,f.default)(this,"_payload",void 0),(0,f.default)(this,"_debugging",void 0),(0,f.default)(this,"_subtitle",void 0),(0,f.default)(this,"_badge",void 0),(0,f.default)(this,"_sound",void 0),(0,f.default)(this,"_title",void 0),(0,f.default)(this,"_body",void 0),(0,f.default)(this,"apns",void 0),(0,f.default)(this,"mpns",void 0),(0,f.default)(this,"fcm",void 0),this._payload={apns:{},mpns:{},fcm:{}},this._title=t,this._body=n,this.apns=new v(this._payload.apns,t,n),this.mpns=new b(this._payload.mpns,t,n),this.fcm=new m(this._payload.fcm,t,n)}return(0,l.default)(e,[{key:"debugging",set:function(e){this._debugging=e}},{key:"title",get:function(){return this._title}},{key:"body",get:function(){return this._body}},{key:"subtitle",get:function(){return this._subtitle},set:function(e){this._subtitle=e,this.apns.subtitle=e,this.mpns.subtitle=e,this.fcm.subtitle=e}},{key:"badge",get:function(){return this._badge},set:function(e){this._badge=e,this.apns.badge=e,this.mpns.badge=e,this.fcm.badge=e}},{key:"sound",get:function(){return this._sound},set:function(e){this._sound=e,this.apns.sound=e,this.mpns.sound=e,this.fcm.sound=e}},{key:"buildPayload",value:function(e){var t={};if(e.includes("apns")||e.includes("apns2")){this.apns._apnsPushType=e.includes("apns")?"apns":"apns2";var n=this.apns.toObject();n&&Object.keys(n).length&&(t.pn_apns=n)}if(e.includes("mpns")){var r=this.mpns.toObject();r&&Object.keys(r).length&&(t.pn_mpns=r)}if(e.includes("fcm")){var i=this.fcm.toObject();i&&Object.keys(i).length&&(t.pn_gcm=i)}return Object.keys(t).length&&this._debugging&&(t.pn_debug=!0),t}}]),e}();t.default=_},function(e,t,n){var r=n(46);e.exports=function(e,t){if(null==e)return{};var n,i,o=r(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r=0||(i[n]=e[n]);return i},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),u=(r(n(8)),n(2),function(){function e(t,n){(0,i.default)(this,e),(0,a.default)(this,"_config",void 0),(0,a.default)(this,"_cbor",void 0),(0,a.default)(this,"_token",void 0),this._config=t,this._cbor=n}return(0,o.default)(e,[{key:"setToken",value:function(e){e&&e.length>0?this._token=e:this._token=void 0}},{key:"getToken",value:function(){return this._token}},{key:"extractPermissions",value:function(e){var t={read:!1,write:!1,manage:!1,delete:!1,get:!1,update:!1,join:!1};return 128==(128&e)&&(t.join=!0),64==(64&e)&&(t.update=!0),32==(32&e)&&(t.get=!0),8==(8&e)&&(t.delete=!0),4==(4&e)&&(t.manage=!0),2==(2&e)&&(t.write=!0),1==(1&e)&&(t.read=!0),t}},{key:"parseToken",value:function(e){var t=this,n=this._cbor.decodeToken(e);if(void 0!==n){var r=n.res.uuid?Object.keys(n.res.uuid):[],i=Object.keys(n.res.chan),o=Object.keys(n.res.grp),a=n.pat.uuid?Object.keys(n.pat.uuid):[],u=Object.keys(n.pat.chan),s=Object.keys(n.pat.grp),c={version:n.v,timestamp:n.t,ttl:n.ttl,authorized_uuid:n.uuid},l=r.length>0,f=i.length>0,d=o.length>0;(l||f||d)&&(c.resources={},l&&(c.resources.uuids={},r.forEach((function(e){c.resources.uuids[e]=t.extractPermissions(n.res.uuid[e])}))),f&&(c.resources.channels={},i.forEach((function(e){c.resources.channels[e]=t.extractPermissions(n.res.chan[e])}))),d&&(c.resources.groups={},o.forEach((function(e){c.resources.groups[e]=t.extractPermissions(n.res.grp[e])}))));var p=a.length>0,h=u.length>0,y=s.length>0;return(p||h||y)&&(c.patterns={},p&&(c.patterns.uuids={},a.forEach((function(e){c.patterns.uuids[e]=t.extractPermissions(n.pat.uuid[e])}))),h&&(c.patterns.channels={},u.forEach((function(e){c.patterns.channels[e]=t.extractPermissions(n.pat.chan[e])}))),y&&(c.patterns.groups={},s.forEach((function(e){c.patterns.groups[e]=t.extractPermissions(n.pat.grp[e])})))),Object.keys(n.meta).length>0&&(c.meta=n.meta),c.signature=n.sig,c}}}]),e}());t.default=u,e.exports=t.default},function(e,t,n){var r=n(13),i=n(15),o=n(49),a=n(50);function u(t){var n="function"==typeof Map?new Map:void 0;return e.exports=u=function(e){if(null===e||!o(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(e))return n.get(e);n.set(e,t)}function t(){return a(e,arguments,r(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),i(t,e)},e.exports.default=e.exports,e.exports.__esModule=!0,u(t)}e.exports=u,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e){return-1!==Function.toString.call(e).indexOf("[native code]")},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(15),i=n(51);function o(t,n,a){return i()?(e.exports=o=Reflect.construct,e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=o=function(e,t,n){var i=[null];i.push.apply(i,t);var o=new(Function.bind.apply(e,i));return n&&r(o,n.prototype),o},e.exports.default=e.exports,e.exports.__esModule=!0),o.apply(null,arguments)}e.exports=o,e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAddChannelsToGroupOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(o.default.encodeString(n))},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels;return{add:(void 0===n?[]:n).join(",")}},t.validateParams=function(e,t){var n=t.channels,r=t.channelGroup,i=e.config;if(!r)return"Missing Channel Group";if(!n||0===n.length)return"Missing Channels";if(!i.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveChannelsFromGroupOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(o.default.encodeString(n))},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels;return{remove:(void 0===n?[]:n).join(",")}},t.validateParams=function(e,t){var n=t.channels,r=t.channelGroup,i=e.config;if(!r)return"Missing Channel Group";if(!n||0===n.length)return"Missing Channels";if(!i.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveGroupOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(o.default.encodeString(n),"/remove")},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e,t){var n=t.channelGroup,r=e.config;if(!n)return"Missing Channel Group";if(!r.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNChannelGroupsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v1/channel-registration/sub-key/".concat(t.subscribeKey,"/channel-group")},t.handleResponse=function(e,t){return{groups:t.payload.groups}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNChannelsForGroupOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channelGroup,r=e.config;return"/v1/channel-registration/sub-key/".concat(r.subscribeKey,"/channel-group/").concat(o.default.encodeString(n))},t.handleResponse=function(e,t){return{channels:t.payload.channels}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e,t){var n=t.channelGroup,r=e.config;if(!n)return"Missing Channel Group";if(!r.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.channels,i=void 0===r?[]:r,o=t.environment,a=void 0===o?"development":o,u=t.topic,s={type:n,add:i.join(",")};"apns2"===n&&delete(s=Object.assign({},s,{environment:a,topic:u})).type;return s},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.channels,o=t.topic,a=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!o)return"Missing APNS2 topic";if(!i||0===i.length)return"Missing Channels";if(!a.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.channels,i=void 0===r?[]:r,o=t.environment,a=void 0===o?"development":o,u=t.topic,s={type:n,remove:i.join(",")};"apns2"===n&&delete(s=Object.assign({},s,{environment:a,topic:u})).type;return s},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.channels,o=t.topic,a=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!o)return"Missing APNS2 topic";if(!i||0===i.length)return"Missing Channels";if(!a.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNPushNotificationEnabledChannelsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n);return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n)},t.handleResponse=function(e,t){return{channels:t}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.environment,i=void 0===r?"development":r,o=t.topic,a={type:n};"apns2"===n&&delete(a=Object.assign({},a,{environment:i,topic:o})).type;return a},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.topic,o=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!i)return"Missing APNS2 topic";if(!o.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveAllPushNotificationsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.device,r=t.pushGateway,i=e.config;if("apns2"===r)return"/v2/push/sub-key/".concat(i.subscribeKey,"/devices-apns2/").concat(n,"/remove");return"/v1/push/sub-key/".concat(i.subscribeKey,"/devices/").concat(n,"/remove")},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.pushGateway,r=t.environment,i=void 0===r?"development":r,o=t.topic,a={type:n};"apns2"===n&&delete(a=Object.assign({},a,{environment:i,topic:o})).type;return a},t.validateParams=function(e,t){var n=t.device,r=t.pushGateway,i=t.topic,o=e.config;if(!n)return"Missing Device ID (device)";if(!r)return"Missing GW Type (pushGateway: gcm, apns or apns2)";if("apns2"===r&&!i)return"Missing APNS2 topic";if(!o.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUnsubscribeOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(a),"/leave")},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i={};r.length>0&&(i["channel-group"]=r.join(","));return i},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNWhereNowOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.uuid,i=void 0===r?n.UUID:r;return"/v2/presence/sub-key/".concat(n.subscribeKey,"/uuid/").concat(o.default.encodeString(i))},t.handleResponse=function(e,t){if(!t.payload)return{channels:[]};return{channels:t.payload.channels}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNHeartbeatOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(a),"/heartbeat")},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i=t.state,o=void 0===i?{}:i,a=e.config,u={};r.length>0&&(u["channel-group"]=r.join(","));return u.state=JSON.stringify(o),u.heartbeat=a.getPresenceTimeout(),u},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetStateOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.uuid,i=void 0===r?n.UUID:r,a=t.channels,u=void 0===a?[]:a,s=u.length>0?u.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(s),"/uuid/").concat(i)},t.handleResponse=function(e,t,n){var r=n.channels,i=void 0===r?[]:r,o=n.channelGroups,a=void 0===o?[]:o,u={};1===i.length&&0===a.length?u[i[0]]=t.payload:u=t.payload;return{channels:u}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i={};r.length>0&&(i["channel-group"]=r.join(","));return i},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSetStateOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=i.length>0?i.join(","):",";return"/v2/presence/sub-key/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(a),"/uuid/").concat(o.default.encodeString(n.UUID),"/data")},t.handleResponse=function(e,t){return{state:t.payload}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.state,r=t.channelGroups,i=void 0===r?[]:r,o={};o.state=JSON.stringify(n),i.length>0&&(o["channel-group"]=i.join(","));return o},t.validateParams=function(e,t){var n=e.config,r=t.state,i=t.channels,o=void 0===i?[]:i,a=t.channelGroups,u=void 0===a?[]:a;if(!r)return"Missing State";if(!n.subscribeKey)return"Missing Subscribe Key";if(0===o.length&&0===u.length)return"Please provide a list of channels and/or channel-groups"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return o.default.PNHereNowOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,o=t.channelGroups,u=void 0===o?[]:o,s="/v2/presence/sub-key/".concat(n.subscribeKey);if(i.length>0||u.length>0){var c=i.length>0?i.join(","):",";s+="/channel/".concat(a.default.encodeString(c))}return s},t.handleError=function(e,t,n){402!==n.statusCode||this.getURL(e,t).includes("channel")||(n.errorData.message="You have tried to perform a Global Here Now operation, your keyset configuration does not support that. Please provide a channel, or enable the Global Here Now feature from the Portal.")},t.handleResponse=function(e,t,n){var r,i=n.channels,o=void 0===i?[]:i,a=n.channelGroups,u=void 0===a?[]:a,s=n.includeUUIDs,c=void 0===s||s,l=n.includeState,f=void 0!==l&&l;r=o.length>1||u.length>0||0===u.length&&0===o.length?function(){var e={};return e.totalChannels=t.payload.total_channels,e.totalOccupancy=t.payload.total_occupancy,e.channels={},Object.keys(t.payload.channels).forEach((function(n){var r=t.payload.channels[n],i=[];return e.channels[n]={occupants:i,name:n,occupancy:r.occupancy},c&&r.uuids.forEach((function(e){f?i.push({state:e.state,uuid:e.uuid}):i.push({state:null,uuid:e})})),e})),e}():function(){var e={},n=[];return e.totalChannels=1,e.totalOccupancy=t.occupancy,e.channels={},e.channels[o[0]]={occupants:n,name:o[0],occupancy:t.occupancy},c&&t.uuids&&t.uuids.forEach((function(e){f?n.push({state:e.state,uuid:e.uuid}):n.push({state:null,uuid:e})})),e}();return r},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channelGroups,r=void 0===n?[]:n,i=t.includeUUIDs,o=void 0===i||i,a=t.includeState,u=void 0!==a&&a,c=t.queryParameters,l=void 0===c?{}:c,f={};o||(f.disable_uuids=1);u&&(f.state=1);r.length>0&&(f["channel-group"]=r.join(","));return f=s(s({},f),l)},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};var i=r(n(4)),o=(n(2),r(n(1))),a=r(n(3));function u(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function s(e){for(var t=1;t15)return"Action.type value exceed maximum length of 15"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNRemoveMessageActionOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.actionTimetoken,a=t.messageTimetoken;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(r),"/message/").concat(a,"/action/").concat(i)},t.handleResponse=function(e,t){return{data:t.data}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.useDelete=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.channel,i=t.actionTimetoken;if(!t.messageTimetoken)return"Missing message timetoken";if(!i)return"Missing action timetoken";if(!n.subscribeKey)return"Missing Subscribe Key";if(!r)return"Missing message channel"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMessageActionsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channel;return"/v1/message-actions/".concat(n.subscribeKey,"/channel/").concat(o.default.encodeString(r))},t.handleResponse=function(e,t){var n={data:t.data,start:null,end:null};n.data.length&&(n.end=n.data[n.data.length-1].actionTimetoken,n.start=n.data[0].actionTimetoken);return n},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.limit,r=t.start,i=t.end,o={};n&&(o.limit=n);r&&(o.start=r);i&&(o.end=i);return o},t.validateParams=function(e,t){var n=e.config,r=t.channel;if(!n.subscribeKey)return"Missing Subscribe Key";if(!r)return"Missing message channel"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),o=r(n(3)),a={getOperation:function(){return i.default.PNListFilesOperation},validateParams:function(e,t){if(null==t||!t.channel)return"channel can't be empty"},getURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(o.default.encodeString(t.channel),"/files")},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(e,t){var n={};return t.limit&&(n.limit=t.limit),t.next&&(n.next=t.next),n},handleResponse:function(e,t){return{status:t.status,data:t.data,next:t.next,count:t.count}}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),o=r(n(3)),a={getOperation:function(){return i.default.PNGenerateUploadUrlOperation},validateParams:function(e,t){return null!=t&&t.channel?null!=t&&t.name?void 0:"name can't be empty":"channel can't be empty"},usePost:function(){return!0},postURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(o.default.encodeString(t.channel),"/generate-upload-url")},postPayload:function(e,t){return{name:t.name}},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(){return{}},handleResponse:function(e,t){return{status:t.status,data:t.data,file_upload_request:t.file_upload_request}}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),o=r(n(1)),a=r(n(3)),u={getOperation:function(){return o.default.PNPublishFileOperation},validateParams:function(e,t){return null!=t&&t.channel?null!=t&&t.fileId?null!=t&&t.fileName?void 0:"file name can't be empty":"file id can't be empty":"channel can't be empty"},getURL:function(e,t){var n=e.config,r=n.publishKey,i=n.subscribeKey,o=function(e,t){var n=e.crypto,r=e.config,i=JSON.stringify(t);return r.cipherKey&&(i=n.encrypt(i),i=JSON.stringify(i)),i||""}(e,{message:t.message,file:{name:t.fileName,id:t.fileId}});return"/v1/files/publish-file/".concat(r,"/").concat(i,"/0/").concat(a.default.encodeString(t.channel),"/0/").concat(a.default.encodeString(o))},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(e,t){var n={};return t.ttl&&(n.ttl=t.ttl),void 0!==t.storeInHistory&&(n.store=t.storeInHistory?"1":"0"),t.meta&&"object"===(0,i.default)(t.meta)&&(n.meta=JSON.stringify(t.meta)),n},handleResponse:function(e,t){return{timetoken:t[2]}}};t.default=u,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(11)),o=r(n(12)),a=n(18),u=function(e){return new Promise((function(t){var n="";e.on("data",(function(e){n+=e.toString("utf8")})),e.on("end",(function(){t(n)}))}))};t.default=function(e){var t,n,r,s,c,l,f,d,p,h=(r=(t=e).generateUploadUrl,s=t.publishFile,c=t.modules,l=c.PubNubFile,f=c.config,d=c.cryptography,p=c.networking,n=(0,o.default)(i.default.mark((function e(t){var n,o,c,h,y,g,v,b,m,_,P,O,S,w,k,T,x,A,M,E,j,R;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.channel,o=t.file,c=t.message,h=t.cipherKey,y=t.meta,g=t.ttl,v=t.storeInHistory,n){e.next=3;break}throw new a.PubNubError("Validation failed, check status for details",(0,a.createValidationError)("channel can't be empty"));case 3:if(o){e.next=5;break}throw new a.PubNubError("Validation failed, check status for details",(0,a.createValidationError)("file can't be empty"));case 5:return b=l.create(o),e.next=8,r({channel:n,name:b.name});case 8:if(m=e.sent,_=m.file_upload_request,P=_.url,O=_.form_fields,S=m.data,w=S.id,k=S.name,!l.supportsEncryptFile||!(null!=h?h:f.cipherKey)){e.next=19;break}return e.next=18,d.encryptFile(null!=h?h:f.cipherKey,b,l);case 18:b=e.sent;case 19:if(T=O,b.mimeType&&(T=O.map((function(e){return"Content-Type"===e.key?{key:e.key,value:b.mimeType}:e}))),e.prev=21,!l.supportsFileUri||!o.uri){e.next=34;break}return e.t0=p,e.t1=P,e.t2=T,e.next=28,b.toFileUri();case 28:return e.t3=e.sent,e.next=31,e.t0.POSTFILE.call(e.t0,e.t1,e.t2,e.t3);case 31:x=e.sent,e.next=71;break;case 34:if(!l.supportsFile){e.next=46;break}return e.t4=p,e.t5=P,e.t6=T,e.next=40,b.toFile();case 40:return e.t7=e.sent,e.next=43,e.t4.POSTFILE.call(e.t4,e.t5,e.t6,e.t7);case 43:x=e.sent,e.next=71;break;case 46:if(!l.supportsBuffer){e.next=58;break}return e.t8=p,e.t9=P,e.t10=T,e.next=52,b.toBuffer();case 52:return e.t11=e.sent,e.next=55,e.t8.POSTFILE.call(e.t8,e.t9,e.t10,e.t11);case 55:x=e.sent,e.next=71;break;case 58:if(!l.supportsBlob){e.next=70;break}return e.t12=p,e.t13=P,e.t14=T,e.next=64,b.toBlob();case 64:return e.t15=e.sent,e.next=67,e.t12.POSTFILE.call(e.t12,e.t13,e.t14,e.t15);case 67:x=e.sent,e.next=71;break;case 70:throw new Error("Unsupported environment");case 71:e.next=80;break;case 73:return e.prev=73,e.t16=e.catch(21),e.next=77,u(e.t16.response);case 77:throw A=e.sent,M=/(.*)<\/Message>/gi.exec(A),new a.PubNubError(M?"Upload to bucket failed: ".concat(M[1]):"Upload to bucket failed.",e.t16);case 80:if(204===x.status){e.next=82;break}throw new a.PubNubError("Upload to bucket was unsuccessful",x);case 82:E=f.fileUploadPublishRetryLimit,j=!1,R={timetoken:"0"};case 85:return e.prev=85,e.next=88,s({channel:n,message:c,fileId:w,fileName:k,meta:y,storeInHistory:v,ttl:g});case 88:R=e.sent,j=!0,e.next=95;break;case 92:e.prev=92,e.t17=e.catch(85),E-=1;case 95:if(!j&&E>0){e.next=85;break}case 96:if(j){e.next=100;break}throw new a.PubNubError("Publish failed. You may want to execute that operation manually using pubnub.publishFile",{channel:n,id:w,name:k});case 100:return e.abrupt("return",{timetoken:R.timetoken,id:w,name:k});case 101:case"end":return e.stop()}}),e,null,[[21,73],[85,92]])}))),function(e){return n.apply(this,arguments)});return function(e,t){var n=h(e);return"function"==typeof t?(n.then((function(e){return t(null,e)})).catch((function(e){return t(e,null)})),n):n}},e.exports=t.default},function(e,t,n){var r=function(e){"use strict";var t=Object.prototype,n=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",o=r.asyncIterator||"@@asyncIterator",a=r.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function s(e,t,n,r){var i=t&&t.prototype instanceof f?t:f,o=Object.create(i.prototype),a=new S(r||[]);return o._invoke=function(e,t,n){var r="suspendedStart";return function(i,o){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===i)throw o;return k()}for(n.method=i,n.arg=o;;){var a=n.delegate;if(a){var u=_(a,n);if(u){if(u===l)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var s=c(e,t,n);if("normal"===s.type){if(r=n.done?"completed":"suspendedYield",s.arg===l)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(r="completed",n.method="throw",n.arg=s.arg)}}}(e,n,a),o}function c(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var l={};function f(){}function d(){}function p(){}var h={};u(h,i,(function(){return this}));var y=Object.getPrototypeOf,g=y&&y(y(w([])));g&&g!==t&&n.call(g,i)&&(h=g);var v=p.prototype=f.prototype=Object.create(h);function b(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function m(e,t){var r;this._invoke=function(i,o){function a(){return new t((function(r,a){!function r(i,o,a,u){var s=c(e[i],e,o);if("throw"!==s.type){var l=s.arg,f=l.value;return f&&"object"==typeof f&&n.call(f,"__await")?t.resolve(f.__await).then((function(e){r("next",e,a,u)}),(function(e){r("throw",e,a,u)})):t.resolve(f).then((function(e){l.value=e,a(l)}),(function(e){return r("throw",e,a,u)}))}u(s.arg)}(i,o,r,a)}))}return r=r?r.then(a,a):a()}}function _(e,t){var n=e.iterator[t.method];if(void 0===n){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method))return l;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var r=c(n,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,l;var i=r.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,l):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,l)}function P(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function O(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(P,this),this.reset(!0)}function w(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,o=function t(){for(;++r=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var u=n.call(o,"catchLoc"),s=n.call(o,"finallyLoc");if(u&&s){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),O(n),l}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var i=r.arg;O(n)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:w(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),l}},e}(e.exports);try{regeneratorRuntime=r}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=r:Function("r","regeneratorRuntime = r")(r)}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=n(18),o=r(n(3));t.default=function(e,t){var n=t.channel,r=t.id,a=t.name,u=e.config,s=e.networking;if(!n)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("channel can't be empty"));if(!r)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("file id can't be empty"));if(!a)throw new i.PubNubError("Validation failed, check status for details",(0,i.createValidationError)("file name can't be empty"));var c="/v1/files/".concat(u.subscribeKey,"/channels/").concat(o.default.encodeString(n),"/files/").concat(r,"/").concat(a),l={};l.uuid=u.getUUID(),l.pnsdk=(0,i.generatePNSDK)(u),u.getAuthKey()&&(l.auth=u.getAuthKey()),u.secretKey&&(0,i.signRequest)(e,c,l,{},{getOperation:function(){return"PubNubGetFileUrlOperation"}});var f=Object.keys(l).map((function(e){return"".concat(encodeURIComponent(e),"=").concat(encodeURIComponent(l[e]))})).join("&");return""!==f?"".concat(s.getStandardOrigin()).concat(c,"?").concat(f):"".concat(s.getStandardOrigin()).concat(c)},e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i,o=r(n(11)),a=r(n(12)),u=r(n(1)),s=r(n(3)),c={getOperation:function(){return u.default.PNDownloadFileOperation},validateParams:function(e,t){return null!=t&&t.channel?null!=t&&t.name?null!=t&&t.id?void 0:"id can't be empty":"name can't be empty":"channel can't be empty"},useGetFile:function(){return!0},getFileURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(s.default.encodeString(t.channel),"/files/").concat(t.id,"/").concat(t.name)},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},ignoreBody:function(){return!0},forceBuffered:function(){return!0},prepareParams:function(){return{}},handleResponse:(i=(0,a.default)(o.default.mark((function e(t,n,r){var i,a,u,s,c,l,f;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(u=t.PubNubFile,s=t.config,c=t.cryptography,l=n.response.body,!u.supportsEncryptFile||!(null!==(i=r.cipherKey)&&void 0!==i?i:s.cipherKey)){e.next=6;break}return e.next=5,c.decrypt(null!==(f=r.cipherKey)&&void 0!==f?f:s.cipherKey,l);case 5:l=e.sent;case 6:return e.abrupt("return",u.create({data:l,name:null!==(a=n.response.name)&&void 0!==a?a:r.name,mimeType:n.response.type}));case 7:case"end":return e.stop()}}),e)}))),function(e,t,n){return i.apply(this,arguments)})};t.default=c,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),o=r(n(3)),a={getOperation:function(){return i.default.PNListFilesOperation},validateParams:function(e,t){return null!=t&&t.channel?null!=t&&t.id?null!=t&&t.name?void 0:"file name can't be empty":"file id can't be empty":"channel can't be empty"},useDelete:function(){return!0},getURL:function(e,t){var n=e.config;return"/v1/files/".concat(n.subscribeKey,"/channels/").concat(o.default.encodeString(t.channel),"/files/").concat(t.id,"/").concat(t.name)},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(){return{}},handleResponse:function(e,t){return{status:t.status}}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(9)),o=r(n(1)),a={getOperation:function(){return o.default.PNGetAllUUIDMetadataOperation},validateParams:function(){},getURL:function(e){var t=e.config;return"/v2/objects/".concat(t.subscribeKey,"/uuids")},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!0},prepareParams:function(e,t){var n,r,o,a,u,s,c,l,f,d={};(null!=t&&null!==(n=t.include)&&void 0!==n&&n.customFields&&(d.include="custom"),null!=t&&null!==(r=t.include)&&void 0!==r&&r.totalCount)&&(d.count=null===(s=t.include)||void 0===s?void 0:s.totalCount);null!=t&&null!==(o=t.page)&&void 0!==o&&o.next&&(d.start=null===(c=t.page)||void 0===c?void 0:c.next);null!=t&&null!==(a=t.page)&&void 0!==a&&a.prev&&(d.end=null===(l=t.page)||void 0===l?void 0:l.prev);(null!=t&&t.filter&&(d.filter=t.filter),d.limit=null!==(u=null==t?void 0:t.limit)&&void 0!==u?u:100,null!=t&&t.sort)&&(d.sort=Object.entries(null!==(f=t.sort)&&void 0!==f?f:{}).map((function(e){var t=(0,i.default)(e,2),n=t[0],r=t[1];return"asc"===r||"desc"===r?"".concat(n,":").concat(r):n})));return d},handleResponse:function(e,t){return{status:t.status,data:t.data,totalCount:t.totalCount,next:t.next,prev:t.prev}}};t.default=a,e.exports=t.default},function(e,t){e.exports=function(e){if(Array.isArray(e))return e},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o=[],a=!0,u=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(e){u=!0,i=e}finally{try{a||null==n.return||n.return()}finally{if(u)throw i}}return o}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t,n){var r=n(83);e.exports=function(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}},e.exports.default=e.exports,e.exports.__esModule=!0},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&(r.include=o)}return r},t.usePost=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,o=t.custom;if(!r)return"Missing User.id";if(!i)return"Missing User.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(o&&!Object.values(o).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateUserOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(r))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){return t}(0,t)},t.patchURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(r))},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,o=t.custom;if(!r)return"Missing User.id";if(!i)return"Missing User.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(o&&!Object.values(o).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteUserOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.useDelete=function(){return!0},t.validateParams=function(e,t){var n=e.config;if(!t)return"Missing UserId";if(!n.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetUserOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.validateParams=function(e,t){if(!t.userId)return"Missing userId"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetUsersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o=t.filter,a={};r&&(a.limit=r);if(n){var u=[];n.totalCount&&(a.count=!0),n.customFields&&u.push("custom");var s=u.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));o&&(a.filter=o);return a},t.validateParams=function(){};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNCreateSpaceOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.postPayload=function(e,t){return function(e,t){return t}(0,t)},t.postURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.usePost=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,o=t.custom;if(!r)return"Missing Space.id";if(!i)return"Missing Space.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(o&&!Object.values(o).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateSpaceOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(r))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){return t}(0,t)},t.patchURL=function(e,t){var n=e.config,r=t.id;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(r))},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=e.config,r=t.id,i=t.name,o=t.custom;if(!r)return"Missing Space.id";if(!i)return"Missing Space.name";if(!n.subscribeKey)return"Missing Subscribe Key";if(o&&!Object.values(o).every((function(e){return"string"==typeof e||"number"==typeof e||"boolean"==typeof e})))return"Invalid custom type, only string, number and boolean values are allowed."};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteSpaceOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.useDelete=function(){return!0},t.validateParams=function(e,t){var n=e.config;if(!t)return"Missing SpaceId";if(!n.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetSpacesOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v1/objects/".concat(t.subscribeKey,"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o=t.filter,a={};r&&(a.limit=r);if(n){var u=[];n.totalCount&&(a.count=!0),n.customFields&&u.push("custom");var s=u.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));o&&(a.filter=o);return a},t.validateParams=function(){};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetSpaceOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId))},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r={};n?void 0===n.customFields&&(n.customFields=!0):n={customFields:!0};if(n){var i=[];n.customFields&&i.push("custom");var o=i.join(",");o.length>0&&(r.include=o)}return r},t.validateParams=function(e,t){if(!t.spaceId)return"Missing spaceId"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMembersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o=t.filter,a={};r&&(a.limit=r);if(n){var u=[];n.totalCount&&(a.count=!0),n.customFields&&u.push("custom"),n.userFields&&u.push("user"),n.customUserFields&&u.push("user.custom");var s=u.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));o&&(a.filter=o);return a},t.validateParams=function(e,t){if(!t.spaceId)return"Missing spaceId"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.users,r={};n&&n.length>0&&(r.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),r.add.push(t)})));return r}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var u=a.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.addMembers,r=t.updateMembers,i=t.removeMembers,o=t.users,a={};n&&n.length>0&&(a.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.add.push(t)})));r&&r.length>0&&(a.update=[],r.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.update.push(t)})));o&&o.length>0&&(a.update=a.update||[],o.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.update.push(t)})));i&&i.length>0&&(a.remove=[],i.forEach((function(e){a.remove.push({id:e})})));return a}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var u=a.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembersOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.users,r={};n&&n.length>0&&(r.remove=[],n.forEach((function(e){r.remove.push({id:e})})));return r}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/spaces/").concat(o.default.encodeString(t.spaceId),"/users")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var u=a.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.spaceId,r=t.users;if(!n)return"Missing spaceId";if(!r)return"Missing users"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNGetMembershipsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o=t.filter,a={};r&&(a.limit=r);if(n){var u=[];n.totalCount&&(a.count=!0),n.customFields&&u.push("custom"),n.spaceFields&&u.push("space"),n.customSpaceFields&&u.push("space.custom");var s=u.join(",");s.length>0&&(a.include=s)}i&&(i.next&&(a.start=i.next),i.prev&&(a.end=i.prev));o&&(a.filter=o);return a},t.validateParams=function(e,t){if(!t.userId)return"Missing userId"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.addMemberships,r=t.updateMemberships,i=t.removeMemberships,o=t.spaces,a={};n&&n.length>0&&(a.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.add.push(t)})));r&&r.length>0&&(a.update=[],r.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.update.push(t)})));o&&o.length>0&&(a.update=a.update||[],o.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),a.update.push(t)})));i&&i.length>0&&(a.remove=[],i.forEach((function(e){a.remove.push({id:e})})));return a}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var u=a.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.spaces,r={};n&&n.length>0&&(r.add=[],n.forEach((function(e){var t={id:e.id};e.custom&&(t.custom=e.custom),r.add.push(t)})));return r}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var u=a.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNUpdateMembershipsOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.handleResponse=function(e,t){return t},t.isAuthSupported=function(){return!0},t.patchPayload=function(e,t){return function(e,t){var n=t.spaces,r={};n&&n.length>0&&(r.remove=[],n.forEach((function(e){r.remove.push({id:e})})));return r}(0,t)},t.patchURL=function(e,t){var n=e.config;return"/v1/objects/".concat(n.subscribeKey,"/users/").concat(o.default.encodeString(t.userId),"/spaces")},t.prepareParams=function(e,t){var n=t.include,r=t.limit,i=t.page,o={};r&&(o.limit=r);if(n){var a=[];n.totalCount&&(o.count=!0),n.customFields&&a.push("custom"),n.spaceFields&&a.push("space"),n.customSpaceFields&&a.push("space.custom");var u=a.join(",");u.length>0&&(o.include=u)}i&&(i.next&&(o.start=i.next),i.prev&&(o.end=i.prev));return o},t.usePatch=function(){return!0},t.validateParams=function(e,t){var n=t.userId,r=t.spaces;if(!n)return"Missing userId";if(!r)return"Missing spaces"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerAudit},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v2/auth/audit/sub-key/".concat(t.subscribeKey)},t.handleResponse=function(e,t){return t.payload},t.isAuthSupported=function(){return!1},t.prepareParams=function(e,t){var n=t.channel,r=t.channelGroup,i=t.authKeys,o=void 0===i?[]:i,a={};n&&(a.channel=n);r&&(a["channel-group"]=r);o.length>0&&(a.auth=o.join(","));return a},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNAccessManagerGrant},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e){var t=e.config;return"/v2/auth/grant/sub-key/".concat(t.subscribeKey)},t.handleResponse=function(){return{}},t.isAuthSupported=function(){return!1},t.prepareParams=function(e,t){var n=t.channels,r=void 0===n?[]:n,i=t.channelGroups,o=void 0===i?[]:i,a=t.uuids,u=void 0===a?[]:a,s=t.ttl,c=t.read,l=void 0!==c&&c,f=t.write,d=void 0!==f&&f,p=t.manage,h=void 0!==p&&p,y=t.get,g=void 0!==y&&y,v=t.join,b=void 0!==v&&v,m=t.update,_=void 0!==m&&m,P=t.authKeys,O=void 0===P?[]:P,S=t.delete,w={};w.r=l?"1":"0",w.w=d?"1":"0",w.m=h?"1":"0",w.d=S?"1":"0",w.g=g?"1":"0",w.j=b?"1":"0",w.u=_?"1":"0",r.length>0&&(w.channel=r.join(","));o.length>0&&(w["channel-group"]=o.join(","));O.length>0&&(w.auth=O.join(","));u.length>0&&(w["target-uuid"]=u.join(","));(s||0===s)&&(w.ttl=s);return w},t.validateParams=function(e,t){var n=e.config;if(!n.subscribeKey)return"Missing Subscribe Key";if(!n.publishKey)return"Missing Publish Key";if(!n.secretKey)return"Missing Secret Key";if(null!=t.uuids&&!t.authKeys)return"authKeys are required for grant request on uuids";if(null!=t.uuids&&(null!=t.channels||null!=t.channelGroups))return"Both channel/channelgroup and uuid cannot be used in the same request"};n(2);var i=r(n(1))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.extractPermissions=o,t.getOperation=function(){return i.default.PNAccessManagerGrantToken},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.handleResponse=function(e,t){return t.data.token},t.isAuthSupported=function(){return!1},t.postPayload=function(e,t){return function(e,t){var n=t.ttl,r=t.resources,i=t.patterns,a=t.meta,u=t.authorized_uuid,s={ttl:0,permissions:{resources:{channels:{},groups:{},uuids:{},users:{},spaces:{}},patterns:{channels:{},groups:{},uuids:{},users:{},spaces:{}},meta:{}}};if(r){var c=r.uuids,l=r.channels,f=r.groups;c&&Object.keys(c).forEach((function(e){s.permissions.resources.uuids[e]=o(c[e])})),l&&Object.keys(l).forEach((function(e){s.permissions.resources.channels[e]=o(l[e])})),f&&Object.keys(f).forEach((function(e){s.permissions.resources.groups[e]=o(f[e])}))}if(i){var d=i.uuids,p=i.channels,h=i.groups;d&&Object.keys(d).forEach((function(e){s.permissions.patterns.uuids[e]=o(d[e])})),p&&Object.keys(p).forEach((function(e){s.permissions.patterns.channels[e]=o(p[e])})),h&&Object.keys(h).forEach((function(e){s.permissions.patterns.groups[e]=o(h[e])}))}(n||0===n)&&(s.ttl=n);a&&(s.permissions.meta=a);u&&(s.permissions.uuid="".concat(u));return s}(0,t)},t.postURL=function(e){var t=e.config;return"/v3/pam/".concat(t.subscribeKey,"/grant")},t.prepareParams=function(){return{}},t.usePost=function(){return!0},t.validateParams=function(e,t){var n=e.config;if(!n.subscribeKey)return"Missing Subscribe Key";if(!n.publishKey)return"Missing Publish Key";if(!n.secretKey)return"Missing Secret Key";if(!t.resources&&!t.patterns)return"Missing either Resources or Patterns.";if(t.resources&&(!t.resources.uuids||0===Object.keys(t.resources.uuids).length)&&(!t.resources.channels||0===Object.keys(t.resources.channels).length)&&(!t.resources.groups||0===Object.keys(t.resources.groups).length)||t.patterns&&(!t.patterns.uuids||0===Object.keys(t.patterns.uuids).length)&&(!t.patterns.channels||0===Object.keys(t.patterns.channels).length)&&(!t.patterns.groups||0===Object.keys(t.patterns.groups).length))return"Missing values for either Resources or Patterns."};n(2);var i=r(n(1));function o(e){var t=0;return e.join&&(t|=128),e.update&&(t|=64),e.get&&(t|=32),e.delete&&(t|=8),e.manage&&(t|=4),e.write&&(t|=2),e.read&&(t|=1),t}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(1)),o=r(n(3)),a={getOperation:function(){return i.default.PNAccessManagerRevokeToken},validateParams:function(e,t){return e.config.secretKey?t?void 0:"token can't be empty":"Missing Secret Key"},getURL:function(e,t){var n=e.config;return"/v3/pam/".concat(n.subscribeKey,"/grant/").concat(o.default.encodeString(t))},useDelete:function(){return!0},getRequestTimeout:function(e){return e.config.getTransactionTimeout()},isAuthSupported:function(){return!1},prepareParams:function(e){return{uuid:e.config.getUUID()}},handleResponse:function(e,t){return{status:t.status,data:t.data}}};t.default=a,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return o.default.PNPublishOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.message,o=u(e,i);return"/publish/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(a.default.encodeString(r),"/0/").concat(a.default.encodeString(o))},t.handleResponse=function(e,t){return{timetoken:t[2]}},t.isAuthSupported=function(){return!0},t.postPayload=function(e,t){var n=t.message;return u(e,n)},t.postURL=function(e,t){var n=e.config,r=t.channel;return"/publish/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(a.default.encodeString(r),"/0")},t.prepareParams=function(e,t){var n=t.meta,r=t.replicate,o=void 0===r||r,a=t.storeInHistory,u=t.ttl,s={};null!=a&&(s.store=a?"1":"0");u&&(s.ttl=u);!1===o&&(s.norep="true");n&&"object"===(0,i.default)(n)&&(s.meta=JSON.stringify(n));return s},t.usePost=function(e,t){var n=t.sendByPost;return void 0!==n&&n},t.validateParams=function(e,t){var n=e.config,r=t.message;if(!t.channel)return"Missing Channel";if(!r)return"Missing Message";if(!n.subscribeKey)return"Missing Subscribe Key"};var i=r(n(7)),o=(n(2),r(n(1))),a=r(n(3));function u(e,t){var n=e.crypto,r=e.config,i=JSON.stringify(t);return r.cipherKey&&(i=n.encrypt(i),i=JSON.stringify(i)),i}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSignalOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channel,i=t.message,a=(u=i,JSON.stringify(u));var u;return"/signal/".concat(n.publishKey,"/").concat(n.subscribeKey,"/0/").concat(o.default.encodeString(r),"/0/").concat(o.default.encodeString(a))},t.handleResponse=function(e,t){return{timetoken:t[2]}},t.isAuthSupported=function(){return!0},t.prepareParams=function(){return{}},t.validateParams=function(e,t){var n=e.config,r=t.message;if(!t.channel)return"Missing Channel";if(!r)return"Missing Message";if(!n.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNHistoryOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channel,r=e.config;return"/v2/history/sub-key/".concat(r.subscribeKey,"/channel/").concat(o.default.encodeString(n))},t.handleResponse=function(e,t){var n={messages:[],startTimeToken:t[1],endTimeToken:t[2]};Array.isArray(t[0])&&t[0].forEach((function(t){var r={timetoken:t.timetoken,entry:a(e,t.message)};t.meta&&(r.meta=t.meta),n.messages.push(r)}));return n},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.start,r=t.end,i=t.reverse,o=t.count,a=void 0===o?100:o,u=t.stringifiedTimeToken,s=void 0!==u&&u,c=t.includeMeta,l=void 0!==c&&c,f={include_token:"true"};f.count=a,n&&(f.start=n);r&&(f.end=r);s&&(f.string_message_token="true");null!=i&&(f.reverse=i.toString());l&&(f.include_meta="true");return f},t.validateParams=function(e,t){var n=t.channel,r=e.config;if(!n)return"Missing channel";if(!r.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3));function a(e,t){var n=e.config,r=e.crypto;if(!n.cipherKey)return t;try{return r.decrypt(t)}catch(e){return t}}},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNDeleteMessagesOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channel,r=e.config;return"/v3/history/sub-key/".concat(r.subscribeKey,"/channel/").concat(o.default.encodeString(n))},t.handleResponse=function(e,t){return t.payload},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.start,r=t.end,i={};n&&(i.start=n);r&&(i.end=r);return i},t.useDelete=function(){return!0},t.validateParams=function(e,t){var n=t.channel,r=e.config;if(!n)return"Missing channel";if(!r.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return o.default.PNMessageCounts},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channels,r=e.config,i=n.join(",");return"/v3/history/sub-key/".concat(r.subscribeKey,"/message-counts/").concat(a.default.encodeString(i))},t.handleResponse=function(e,t){return{channels:t.channels}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.timetoken,r=t.channelTimetokens,o={};if(r&&1===r.length){var a=(0,i.default)(r,1)[0];o.timetoken=a}else r?o.channelsTimetoken=r.join(","):n&&(o.timetoken=n);return o},t.validateParams=function(e,t){var n=t.channels,r=t.timetoken,i=t.channelTimetokens,o=e.config;if(!n)return"Missing channel";if(r&&i)return"timetoken and channelTimetokens are incompatible together";if(r&&i&&i.length>1&&n.length!==i.length)return"Length of channelTimetokens and channels do not match";if(!o.subscribeKey)return"Missing Subscribe Key"};var i=r(n(9)),o=r(n(1)),a=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNFetchMessagesOperation},t.getRequestTimeout=function(e){return e.config.getTransactionTimeout()},t.getURL=function(e,t){var n=t.channels,r=void 0===n?[]:n,i=t.includeMessageActions,a=void 0!==i&&i,u=e.config,s=a?"history-with-actions":"history",c=r.length>0?r.join(","):",";return"/v3/".concat(s,"/sub-key/").concat(u.subscribeKey,"/channel/").concat(o.default.encodeString(c))},t.handleResponse=function(e,t){var n={channels:{}};Object.keys(t.channels||{}).forEach((function(r){n.channels[r]=[],(t.channels[r]||[]).forEach((function(t){var i={};i.channel=r,i.timetoken=t.timetoken,i.message=function(e,t){var n=e.config,r=e.crypto;if(!n.cipherKey)return t;try{return r.decrypt(t)}catch(e){return t}}(e,t.message),i.messageType=t.message_type,i.uuid=t.uuid,t.actions&&(i.actions=t.actions,i.data=t.actions),t.meta&&(i.meta=t.meta),n.channels[r].push(i)}))})),t.more&&(n.more=t.more);return n},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=t.channels,r=t.start,i=t.end,o=t.includeMessageActions,a=t.count,u=t.stringifiedTimeToken,s=void 0!==u&&u,c=t.includeMeta,l=void 0!==c&&c,f=t.includeUuid,d=t.includeUUID,p=void 0===d||d,h=t.includeMessageType,y=void 0===h||h,g={};g.max=a||(n.length>1||!0===o?25:100);r&&(g.start=r);i&&(g.end=i);s&&(g.string_message_token="true");l&&(g.include_meta="true");p&&!1!==f&&(g.include_uuid="true");y&&(g.include_message_type="true");return g},t.validateParams=function(e,t){var n=t.channels,r=t.includeMessageActions,i=void 0!==r&&r,o=e.config;if(!n||0===n.length)return"Missing channels";if(!o.subscribeKey)return"Missing Subscribe Key";if(i&&n.length>1)throw new TypeError("History can return actions data for a single channel only. Either pass a single channel or disable the includeMessageActions flag.")};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.getOperation=function(){return i.default.PNSubscribeOperation},t.getRequestTimeout=function(e){return e.config.getSubscribeTimeout()},t.getURL=function(e,t){var n=e.config,r=t.channels,i=void 0===r?[]:r,a=i.length>0?i.join(","):",";return"/v2/subscribe/".concat(n.subscribeKey,"/").concat(o.default.encodeString(a),"/0")},t.handleResponse=function(e,t){var n=[];t.m.forEach((function(e){var t={publishTimetoken:e.p.t,region:e.p.r},r={shard:parseInt(e.a,10),subscriptionMatch:e.b,channel:e.c,messageType:e.e,payload:e.d,flags:e.f,issuingClientId:e.i,subscribeKey:e.k,originationTimetoken:e.o,userMetadata:e.u,publishMetaData:t};n.push(r)}));var r={timetoken:t.t.t,region:t.t.r};return{messages:n,metadata:r}},t.isAuthSupported=function(){return!0},t.prepareParams=function(e,t){var n=e.config,r=t.state,i=t.channelGroups,o=void 0===i?[]:i,a=t.timetoken,u=t.filterExpression,s=t.region,c={heartbeat:n.getPresenceTimeout()};o.length>0&&(c["channel-group"]=o.join(","));u&&u.length>0&&(c["filter-expr"]=u);Object.keys(r).length&&(c.state=JSON.stringify(r));a&&(c.tt=a);s&&(c.tr=s);return c},t.validateParams=function(e){if(!e.config.subscribeKey)return"Missing Subscribe Key"};n(2);var i=r(n(1)),o=r(n(3))},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(5)),o=r(n(6)),a=r(n(4)),u=(r(n(8)),r(n(10))),s=(n(2),function(){function e(t){var n=this;(0,i.default)(this,e),(0,a.default)(this,"_modules",void 0),(0,a.default)(this,"_config",void 0),(0,a.default)(this,"_currentSubDomain",void 0),(0,a.default)(this,"_standardOrigin",void 0),(0,a.default)(this,"_subscribeOrigin",void 0),(0,a.default)(this,"_requestTimeout",void 0),(0,a.default)(this,"_coreParams",void 0),this._modules={},Object.keys(t).forEach((function(e){n._modules[e]=t[e].bind(n)}))}return(0,o.default)(e,[{key:"init",value:function(e){this._config=e,Array.isArray(this._config.origin)?this._currentSubDomain=Math.floor(Math.random()*this._config.origin.length):this._currentSubDomain=0,this._coreParams={},this.shiftStandardOrigin()}},{key:"nextOrigin",value:function(){var e=this._config.secure?"https://":"http://";if("string"==typeof this._config.origin)return"".concat(e).concat(this._config.origin);this._currentSubDomain+=1,this._currentSubDomain>=this._config.origin.length&&(this._currentSubDomain=0);var t=this._config.origin[this._currentSubDomain];return"".concat(e).concat(t)}},{key:"hasModule",value:function(e){return e in this._modules}},{key:"shiftStandardOrigin",value:function(){return this._standardOrigin=this.nextOrigin(),this._standardOrigin}},{key:"getStandardOrigin",value:function(){return this._standardOrigin}},{key:"POSTFILE",value:function(e,t,n){return this._modules.postfile(e,t,n)}},{key:"GETFILE",value:function(e,t,n){return this._modules.getfile(e,t,n)}},{key:"POST",value:function(e,t,n,r){return this._modules.post(e,t,n,r)}},{key:"PATCH",value:function(e,t,n,r){return this._modules.patch(e,t,n,r)}},{key:"GET",value:function(e,t,n){return this._modules.get(e,t,n)}},{key:"DELETE",value:function(e,t,n){return this._modules.del(e,t,n)}},{key:"_detectErrorCategory",value:function(e){if("ENOTFOUND"===e.code)return u.default.PNNetworkIssuesCategory;if("ECONNREFUSED"===e.code)return u.default.PNNetworkIssuesCategory;if("ECONNRESET"===e.code)return u.default.PNNetworkIssuesCategory;if("EAI_AGAIN"===e.code)return u.default.PNNetworkIssuesCategory;if(0===e.status||e.hasOwnProperty("status")&&void 0===e.status)return u.default.PNNetworkIssuesCategory;if(e.timeout)return u.default.PNTimeoutCategory;if("ETIMEDOUT"===e.code)return u.default.PNNetworkIssuesCategory;if(e.response){if(e.response.badRequest)return u.default.PNBadRequestCategory;if(e.response.forbidden)return u.default.PNAccessDeniedCategory}return u.default.PNUnknownCategory}}]),e}());t.default=s,e.exports=t.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={get:function(e){try{return localStorage.getItem(e)}catch(e){return null}},set:function(e,t){try{return localStorage.setItem(e,t)}catch(e){return null}}};t.default=r,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=r(n(7)),o=r(n(5)),a=r(n(6)),u=r(n(4)),s=function(){function e(t,n){(0,o.default)(this,e),(0,u.default)(this,"_base64ToBinary",void 0),(0,u.default)(this,"_cborReader",void 0),this._base64ToBinary=n,this._decode=t}return(0,a.default)(e,[{key:"decodeToken",value:function(e){var t="";e.length%4==3?t="=":e.length%4==2&&(t="==");var n=e.replace(/-/gi,"+").replace(/_/gi,"/")+t,r=this._decode(this._base64ToBinary(n));if("object"===(0,i.default)(r))return r}}]),e}();t.default=s,e.exports=t.default},function(e,t,n){"use strict";var r=n(0);Object.defineProperty(t,"__esModule",{value:!0}),t.del=function(e,t,n){var r=a.default.delete(this.getStandardOrigin()+t.url).set(t.headers).query(e);return s.call(this,r,t,n)},t.get=function(e,t,n){var r=a.default.get(this.getStandardOrigin()+t.url).set(t.headers).query(e);return s.call(this,r,t,n)},t.getfile=function(e,t,n){var r=a.default.get(this.getStandardOrigin()+t.url).set(t.headers).query(e);return s.call(this,r,t,n)},t.patch=function(e,t,n,r){var i=a.default.patch(this.getStandardOrigin()+n.url).query(e).set(n.headers).send(t);return s.call(this,i,n,r)},t.post=function(e,t,n,r){var i=a.default.post(this.getStandardOrigin()+n.url).query(e).set(n.headers).send(t);return s.call(this,i,n,r)},t.postfile=function(e,t,n){return c.apply(this,arguments)};var i=r(n(11)),o=r(n(12)),a=r(n(129));n(2);function u(e){var t=(new Date).getTime(),n=(new Date).toISOString(),r=console&&console.log?console:window&&window.console&&window.console.log?window.console:console;r.log("<<<<<"),r.log("[".concat(n,"]"),"\n",e.url,"\n",e.qs),r.log("-----"),e.on("response",(function(n){var i=(new Date).getTime()-t,o=(new Date).toISOString();r.log(">>>>>>"),r.log("[".concat(o," / ").concat(i,"]"),"\n",e.url,"\n",e.qs,"\n",n.text),r.log("-----")}))}function s(e,t,n){var r=this;this._config.logVerbosity&&(e=e.use(u)),this._config.proxy&&this._modules.proxy&&(e=this._modules.proxy.call(this,e)),this._config.keepAlive&&this._modules.keepAlive&&(e=this._modules.keepAlive(e));var i=e;return!0===t.forceBuffered?i="undefined"==typeof Blob?i.buffer().responseType("arraybuffer"):i.responseType("arraybuffer"):!1===t.forceBuffered&&(i=i.buffer(!1)),(i=i.timeout(t.timeout)).end((function(e,i){var o,a={};if(a.error=null!==e,a.operation=t.operation,i&&i.status&&(a.statusCode=i.status),e){if(e.response&&e.response.text&&!r._config.logVerbosity)try{a.errorData=JSON.parse(e.response.text)}catch(t){a.errorData=e}else a.errorData=e;return a.category=r._detectErrorCategory(e),n(a,null)}if(t.ignoreBody)o={headers:i.headers,redirects:i.redirects,response:i};else try{o=JSON.parse(i.text)}catch(e){return a.errorData=i,a.error=!0,n(a,null)}return o.error&&1===o.error&&o.status&&o.message&&o.service?(a.errorData=o,a.statusCode=o.status,a.error=!0,a.category=r._detectErrorCategory(a),n(a,null)):(o.error&&o.error.message&&(a.errorData=o.error),n(a,o))})),i}function c(){return(c=(0,o.default)(i.default.mark((function e(t,n,r){var o,u;return i.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=a.default.post(t),n.forEach((function(e){var t=e.key,n=e.value;o=o.field(t,n)})),o.attach("file",r,{contentType:"application/octet-stream"}),e.next=5,o;case 5:return u=e.sent,e.abrupt("return",u);case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}},function(e,t,n){"use strict";function r(e){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var i;"undefined"!=typeof window?i=window:"undefined"==typeof self?(console.warn("Using browser-only version of superagent in non-browser environment"),i=void 0):i=self;var o=n(130),a=n(131),u=n(132),s=n(144),c=n(30),l=n(145),f=n(147);function d(){}e.exports=function(e,n){return"function"==typeof n?new t.Request("GET",e).end(n):1===arguments.length?new t.Request("GET",e):new t.Request(e,n)};var p=t=e.exports;t.Request=_,p.getXHR=function(){if(i.XMLHttpRequest&&(!i.location||"file:"!==i.location.protocol||!i.ActiveXObject))return new XMLHttpRequest;try{return new ActiveXObject("Microsoft.XMLHTTP")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(e){}throw new Error("Browser-only version of superagent could not find XHR")};var h="".trim?function(e){return e.trim()}:function(e){return e.replace(/(^\s*|\s*$)/g,"")};function y(e){if(!c(e))return e;var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&g(t,n,e[n]);return t.join("&")}function g(e,t,n){if(void 0!==n)if(null!==n)if(Array.isArray(n))n.forEach((function(n){g(e,t,n)}));else if(c(n))for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&g(e,"".concat(t,"[").concat(r,"]"),n[r]);else e.push(encodeURI(t)+"="+encodeURIComponent(n));else e.push(encodeURI(t))}function v(e){for(var t,n,r={},i=e.split("&"),o=0,a=i.length;o0||e instanceof Object)?t(e):null)},m.prototype.toError=function(){var e=this.req,t=e.method,n=e.url,r="cannot ".concat(t," ").concat(n," (").concat(this.status,")"),i=new Error(r);return i.status=this.status,i.method=t,i.url=n,i},p.Response=m,o(_.prototype),s(_.prototype),_.prototype.type=function(e){return this.set("Content-Type",p.types[e]||e),this},_.prototype.accept=function(e){return this.set("Accept",p.types[e]||e),this},_.prototype.auth=function(e,t,n){1===arguments.length&&(t=""),"object"===r(t)&&null!==t&&(n=t,t=""),n||(n={type:"function"==typeof btoa?"basic":"auto"});var i=function(e){if("function"==typeof btoa)return btoa(e);throw new Error("Cannot use basic auth, btoa is not a function")};return this._auth(e,t,n,i)},_.prototype.query=function(e){return"string"!=typeof e&&(e=y(e)),e&&this._query.push(e),this},_.prototype.attach=function(e,t,n){if(t){if(this._data)throw new Error("superagent can't mix .send() and .attach()");this._getFormData().append(e,t,n||t.name)}return this},_.prototype._getFormData=function(){return this._formData||(this._formData=new i.FormData),this._formData},_.prototype.callback=function(e,t){if(this._shouldRetry(e,t))return this._retry();var n=this._callback;this.clearTimeout(),e&&(this._maxRetries&&(e.retries=this._retries-1),this.emit("error",e)),n(e,t)},_.prototype.crossDomainError=function(){var e=new Error("Request has been terminated\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.");e.crossDomain=!0,e.status=this.status,e.method=this.method,e.url=this.url,this.callback(e)},_.prototype.agent=function(){return console.warn("This is not supported in browser version of superagent"),this},_.prototype.ca=_.prototype.agent,_.prototype.buffer=_.prototype.ca,_.prototype.write=function(){throw new Error("Streaming is not supported in browser version of superagent")},_.prototype.pipe=_.prototype.write,_.prototype._isHost=function(e){return e&&"object"===r(e)&&!Array.isArray(e)&&"[object Object]"!==Object.prototype.toString.call(e)},_.prototype.end=function(e){this._endCalled&&console.warn("Warning: .end() was called twice. This is not supported in superagent"),this._endCalled=!0,this._callback=e||d,this._finalizeQueryString(),this._end()},_.prototype._setUploadTimeout=function(){var e=this;this._uploadTimeout&&!this._uploadTimeoutTimer&&(this._uploadTimeoutTimer=setTimeout((function(){e._timeoutError("Upload timeout of ",e._uploadTimeout,"ETIMEDOUT")}),this._uploadTimeout))},_.prototype._end=function(){if(this._aborted)return this.callback(new Error("The request has been aborted even before .end() was called"));var e=this;this.xhr=p.getXHR();var t=this.xhr,n=this._formData||this._data;this._setTimeouts(),t.onreadystatechange=function(){var n=t.readyState;if(n>=2&&e._responseTimeoutTimer&&clearTimeout(e._responseTimeoutTimer),4===n){var r;try{r=t.status}catch(e){r=0}if(!r){if(e.timedout||e._aborted)return;return e.crossDomainError()}e.emit("end")}};var r=function(t,n){n.total>0&&(n.percent=n.loaded/n.total*100,100===n.percent&&clearTimeout(e._uploadTimeoutTimer)),n.direction=t,e.emit("progress",n)};if(this.hasListeners("progress"))try{t.addEventListener("progress",r.bind(null,"download")),t.upload&&t.upload.addEventListener("progress",r.bind(null,"upload"))}catch(e){}t.upload&&this._setUploadTimeout();try{this.username&&this.password?t.open(this.method,this.url,!0,this.username,this.password):t.open(this.method,this.url,!0)}catch(e){return this.callback(e)}if(this._withCredentials&&(t.withCredentials=!0),!this._formData&&"GET"!==this.method&&"HEAD"!==this.method&&"string"!=typeof n&&!this._isHost(n)){var i=this._header["content-type"],o=this._serializer||p.serialize[i?i.split(";")[0]:""];!o&&b(i)&&(o=p.serialize["application/json"]),o&&(n=o(n))}for(var a in this.header)null!==this.header[a]&&Object.prototype.hasOwnProperty.call(this.header,a)&&t.setRequestHeader(a,this.header[a]);this._responseType&&(t.responseType=this._responseType),this.emit("request",this),t.send(void 0===n?null:n)},p.agent=function(){return new f},["GET","POST","OPTIONS","PATCH","PUT","DELETE"].forEach((function(e){f.prototype[e.toLowerCase()]=function(t,n){var r=new p.Request(e,t);return this._setDefaults(r),n&&r.end(n),r}})),f.prototype.del=f.prototype.delete,p.get=function(e,t,n){var r=p("GET",e);return"function"==typeof t&&(n=t,t=null),t&&r.query(t),n&&r.end(n),r},p.head=function(e,t,n){var r=p("HEAD",e);return"function"==typeof t&&(n=t,t=null),t&&r.query(t),n&&r.end(n),r},p.options=function(e,t,n){var r=p("OPTIONS",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},p.del=P,p.delete=P,p.patch=function(e,t,n){var r=p("PATCH",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},p.post=function(e,t,n){var r=p("POST",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},p.put=function(e,t,n){var r=p("PUT",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r}},function(e,t,n){function r(e){if(e)return function(e){for(var t in r.prototype)e[t]=r.prototype[t];return e}(e)}e.exports=r,r.prototype.on=r.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},r.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},r.prototype.off=r.prototype.removeListener=r.prototype.removeAllListeners=r.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var i=0;is.depthLimit)return void a("[...]",t,n,o);if(void 0!==s.edgesLimit&&r+1>s.edgesLimit)return void a("[...]",t,n,o);if(i.push(t),Array.isArray(t))for(c=0;ct?1:0}function s(e,t,o,s){void 0===s&&(s=i());var l,f=function e(t,r,i,o,s,c,l){var f;if(c+=1,"object"==typeof t&&null!==t){for(f=0;fl.depthLimit)return void a("[...]",t,r,s);if(void 0!==l.edgesLimit&&i+1>l.edgesLimit)return void a("[...]",t,r,s);if(o.push(t),Array.isArray(t))for(f=0;f0)for(var i=0;i0?w.join(",")||null:void 0}];else if(s(d))N=d;else{var U=Object.keys(w);N=p?U.sort(p):U}for(var I=0;I0?_+m:""}},function(e,t,n){"use strict";var r=n(19),i=n(139),o=n(141),a=r("%TypeError%"),u=r("%WeakMap%",!0),s=r("%Map%",!0),c=i("WeakMap.prototype.get",!0),l=i("WeakMap.prototype.set",!0),f=i("WeakMap.prototype.has",!0),d=i("Map.prototype.get",!0),p=i("Map.prototype.set",!0),h=i("Map.prototype.has",!0),y=function(e,t){for(var n,r=e;null!==(n=r.next);r=n)if(n.key===t)return r.next=n.next,n.next=e.next,e.next=n,n};e.exports=function(){var e,t,n,r={assert:function(e){if(!r.has(e))throw new a("Side channel does not contain "+o(e))},get:function(r){if(u&&r&&("object"==typeof r||"function"==typeof r)){if(e)return c(e,r)}else if(s){if(t)return d(t,r)}else if(n)return function(e,t){var n=y(e,t);return n&&n.value}(n,r)},has:function(r){if(u&&r&&("object"==typeof r||"function"==typeof r)){if(e)return f(e,r)}else if(s){if(t)return h(t,r)}else if(n)return function(e,t){return!!y(e,t)}(n,r);return!1},set:function(r,i){u&&r&&("object"==typeof r||"function"==typeof r)?(e||(e=new u),l(e,r,i)):s?(t||(t=new s),p(t,r,i)):(n||(n={key:{},next:null}),function(e,t,n){var r=y(e,t);r?r.value=n:e.next={key:t,next:e.next,value:n}}(n,r,i))}};return r}},function(e,t,n){"use strict";var r="undefined"!=typeof Symbol&&Symbol,i=n(136);e.exports=function(){return"function"==typeof r&&("function"==typeof Symbol&&("symbol"==typeof r("foo")&&("symbol"==typeof Symbol("bar")&&i())))}},function(e,t,n){"use strict";e.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),n=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var r=Object.getOwnPropertySymbols(e);if(1!==r.length||r[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(e,t);if(42!==i.value||!0!==i.enumerable)return!1}return!0}},function(e,t,n){"use strict";var r="Function.prototype.bind called on incompatible ",i=Array.prototype.slice,o=Object.prototype.toString;e.exports=function(e){var t=this;if("function"!=typeof t||"[object Function]"!==o.call(t))throw new TypeError(r+t);for(var n,a=i.call(arguments,1),u=function(){if(this instanceof n){var r=t.apply(this,a.concat(i.call(arguments)));return Object(r)===r?r:this}return t.apply(e,a.concat(i.call(arguments)))},s=Math.max(0,t.length-a.length),c=[],l=0;l-1?i(n):n}},function(e,t,n){"use strict";var r=n(20),i=n(19),o=i("%Function.prototype.apply%"),a=i("%Function.prototype.call%"),u=i("%Reflect.apply%",!0)||r.call(a,o),s=i("%Object.getOwnPropertyDescriptor%",!0),c=i("%Object.defineProperty%",!0),l=i("%Math.max%");if(c)try{c({},"a",{value:1})}catch(e){c=null}e.exports=function(e){var t=u(r,a,arguments);if(s&&c){var n=s(t,"length");n.configurable&&c(t,"length",{value:1+l(0,e.length-(arguments.length-1))})}return t};var f=function(){return u(r,o,arguments)};c?c(e.exports,"apply",{value:f}):e.exports.apply=f},function(e,t,n){var r="function"==typeof Map&&Map.prototype,i=Object.getOwnPropertyDescriptor&&r?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,o=r&&i&&"function"==typeof i.get?i.get:null,a=r&&Map.prototype.forEach,u="function"==typeof Set&&Set.prototype,s=Object.getOwnPropertyDescriptor&&u?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,c=u&&s&&"function"==typeof s.get?s.get:null,l=u&&Set.prototype.forEach,f="function"==typeof WeakMap&&WeakMap.prototype?WeakMap.prototype.has:null,d="function"==typeof WeakSet&&WeakSet.prototype?WeakSet.prototype.has:null,p="function"==typeof WeakRef&&WeakRef.prototype?WeakRef.prototype.deref:null,h=Boolean.prototype.valueOf,y=Object.prototype.toString,g=Function.prototype.toString,v=String.prototype.match,b="function"==typeof BigInt?BigInt.prototype.valueOf:null,m=Object.getOwnPropertySymbols,_="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol.prototype.toString:null,P="function"==typeof Symbol&&"object"==typeof Symbol.iterator,O="function"==typeof Symbol&&Symbol.toStringTag&&(typeof Symbol.toStringTag===P||"symbol")?Symbol.toStringTag:null,S=Object.prototype.propertyIsEnumerable,w=("function"==typeof Reflect?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null),k=n(142).custom,T=k&&E(k)?k:null;function x(e,t,n){var r="double"===(n.quoteStyle||t)?'"':"'";return r+e+r}function A(e){return String(e).replace(/"/g,""")}function M(e){return!("[object Array]"!==N(e)||O&&"object"==typeof e&&O in e)}function E(e){if(P)return e&&"object"==typeof e&&e instanceof Symbol;if("symbol"==typeof e)return!0;if(!e||"object"!=typeof e||!_)return!1;try{return _.call(e),!0}catch(e){}return!1}e.exports=function e(t,n,r,i){var u=n||{};if(R(u,"quoteStyle")&&"single"!==u.quoteStyle&&"double"!==u.quoteStyle)throw new TypeError('option "quoteStyle" must be "single" or "double"');if(R(u,"maxStringLength")&&("number"==typeof u.maxStringLength?u.maxStringLength<0&&u.maxStringLength!==1/0:null!==u.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var s=!R(u,"customInspect")||u.customInspect;if("boolean"!=typeof s&&"symbol"!==s)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(R(u,"indent")&&null!==u.indent&&"\t"!==u.indent&&!(parseInt(u.indent,10)===u.indent&&u.indent>0))throw new TypeError('options "indent" must be "\\t", an integer > 0, or `null`');if(void 0===t)return"undefined";if(null===t)return"null";if("boolean"==typeof t)return t?"true":"false";if("string"==typeof t)return function e(t,n){if(t.length>n.maxStringLength){var r=t.length-n.maxStringLength,i="... "+r+" more character"+(r>1?"s":"");return e(t.slice(0,n.maxStringLength),n)+i}return x(t.replace(/(['\\])/g,"\\$1").replace(/[\x00-\x1f]/g,U),"single",n)}(t,u);if("number"==typeof t)return 0===t?1/0/t>0?"0":"-0":String(t);if("bigint"==typeof t)return String(t)+"n";var y=void 0===u.depth?5:u.depth;if(void 0===r&&(r=0),r>=y&&y>0&&"object"==typeof t)return M(t)?"[Array]":"[Object]";var m=function(e,t){var n;if("\t"===e.indent)n="\t";else{if(!("number"==typeof e.indent&&e.indent>0))return null;n=Array(e.indent+1).join(" ")}return{base:n,prev:Array(t+1).join(n)}}(u,r);if(void 0===i)i=[];else if(C(i,t)>=0)return"[Circular]";function S(t,n,o){if(n&&(i=i.slice()).push(n),o){var a={depth:u.depth};return R(u,"quoteStyle")&&(a.quoteStyle=u.quoteStyle),e(t,a,r+1,i)}return e(t,u,r+1,i)}if("function"==typeof t){var k=function(e){if(e.name)return e.name;var t=v.call(g.call(e),/^function\s*([\w$]+)/);if(t)return t[1];return null}(t),j=K(t,S);return"[Function"+(k?": "+k:" (anonymous)")+"]"+(j.length>0?" { "+j.join(", ")+" }":"")}if(E(t)){var B=P?String(t).replace(/^(Symbol\(.*\))_[^)]*$/,"$1"):_.call(t);return"object"!=typeof t||P?B:I(B)}if(function(e){if(!e||"object"!=typeof e)return!1;if("undefined"!=typeof HTMLElement&&e instanceof HTMLElement)return!0;return"string"==typeof e.nodeName&&"function"==typeof e.getAttribute}(t)){for(var G="<"+String(t.nodeName).toLowerCase(),q=t.attributes||[],H=0;H"}if(M(t)){if(0===t.length)return"[]";var z=K(t,S);return m&&!function(e){for(var t=0;t=0)return!1;return!0}(z)?"["+L(z,m)+"]":"[ "+z.join(", ")+" ]"}if(function(e){return!("[object Error]"!==N(e)||O&&"object"==typeof e&&O in e)}(t)){var W=K(t,S);return 0===W.length?"["+String(t)+"]":"{ ["+String(t)+"] "+W.join(", ")+" }"}if("object"==typeof t&&s){if(T&&"function"==typeof t[T])return t[T]();if("symbol"!==s&&"function"==typeof t.inspect)return t.inspect()}if(function(e){if(!o||!e||"object"!=typeof e)return!1;try{o.call(e);try{c.call(e)}catch(e){return!0}return e instanceof Map}catch(e){}return!1}(t)){var V=[];return a.call(t,(function(e,n){V.push(S(n,t,!0)+" => "+S(e,t))})),D("Map",o.call(t),V,m)}if(function(e){if(!c||!e||"object"!=typeof e)return!1;try{c.call(e);try{o.call(e)}catch(e){return!0}return e instanceof Set}catch(e){}return!1}(t)){var Y=[];return l.call(t,(function(e){Y.push(S(e,t))})),D("Set",c.call(t),Y,m)}if(function(e){if(!f||!e||"object"!=typeof e)return!1;try{f.call(e,f);try{d.call(e,d)}catch(e){return!0}return e instanceof WeakMap}catch(e){}return!1}(t))return F("WeakMap");if(function(e){if(!d||!e||"object"!=typeof e)return!1;try{d.call(e,d);try{f.call(e,f)}catch(e){return!0}return e instanceof WeakSet}catch(e){}return!1}(t))return F("WeakSet");if(function(e){if(!p||!e||"object"!=typeof e)return!1;try{return p.call(e),!0}catch(e){}return!1}(t))return F("WeakRef");if(function(e){return!("[object Number]"!==N(e)||O&&"object"==typeof e&&O in e)}(t))return I(S(Number(t)));if(function(e){if(!e||"object"!=typeof e||!b)return!1;try{return b.call(e),!0}catch(e){}return!1}(t))return I(S(b.call(t)));if(function(e){return!("[object Boolean]"!==N(e)||O&&"object"==typeof e&&O in e)}(t))return I(h.call(t));if(function(e){return!("[object String]"!==N(e)||O&&"object"==typeof e&&O in e)}(t))return I(S(String(t)));if(!function(e){return!("[object Date]"!==N(e)||O&&"object"==typeof e&&O in e)}(t)&&!function(e){return!("[object RegExp]"!==N(e)||O&&"object"==typeof e&&O in e)}(t)){var J=K(t,S),$=w?w(t)===Object.prototype:t instanceof Object||t.constructor===Object,X=t instanceof Object?"":"null prototype",Q=!$&&O&&Object(t)===t&&O in t?N(t).slice(8,-1):X?"Object":"",Z=($||"function"!=typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(Q||X?"["+[].concat(Q||[],X||[]).join(": ")+"] ":"");return 0===J.length?Z+"{}":m?Z+"{"+L(J,m)+"}":Z+"{ "+J.join(", ")+" }"}return String(t)};var j=Object.prototype.hasOwnProperty||function(e){return e in this};function R(e,t){return j.call(e,t)}function N(e){return y.call(e)}function C(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;n-1?e.split(","):e},c=function(e,t,n,r){if(e){var o=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/g,u=n.depth>0&&/(\[[^[\]]*])/.exec(o),c=u?o.slice(0,u.index):o,l=[];if(c){if(!n.plainObjects&&i.call(Object.prototype,c)&&!n.allowPrototypes)return;l.push(c)}for(var f=0;n.depth>0&&null!==(u=a.exec(o))&&f=0;--o){var a,u=e[o];if("[]"===u&&n.parseArrays)a=[].concat(i);else{a=n.plainObjects?Object.create(null):{};var c="["===u.charAt(0)&&"]"===u.charAt(u.length-1)?u.slice(1,-1):u,l=parseInt(c,10);n.parseArrays||""!==c?!isNaN(l)&&u!==c&&String(l)===c&&l>=0&&n.parseArrays&&l<=n.arrayLimit?(a=[])[l]=i:a[c]=i:a={0:i}}i=a}return i}(l,t,n,r)}};e.exports=function(e,t){var n=function(e){if(!e)return a;if(null!==e.decoder&&void 0!==e.decoder&&"function"!=typeof e.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var t=void 0===e.charset?a.charset:e.charset;return{allowDots:void 0===e.allowDots?a.allowDots:!!e.allowDots,allowPrototypes:"boolean"==typeof e.allowPrototypes?e.allowPrototypes:a.allowPrototypes,allowSparse:"boolean"==typeof e.allowSparse?e.allowSparse:a.allowSparse,arrayLimit:"number"==typeof e.arrayLimit?e.arrayLimit:a.arrayLimit,charset:t,charsetSentinel:"boolean"==typeof e.charsetSentinel?e.charsetSentinel:a.charsetSentinel,comma:"boolean"==typeof e.comma?e.comma:a.comma,decoder:"function"==typeof e.decoder?e.decoder:a.decoder,delimiter:"string"==typeof e.delimiter||r.isRegExp(e.delimiter)?e.delimiter:a.delimiter,depth:"number"==typeof e.depth||!1===e.depth?+e.depth:a.depth,ignoreQueryPrefix:!0===e.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof e.interpretNumericEntities?e.interpretNumericEntities:a.interpretNumericEntities,parameterLimit:"number"==typeof e.parameterLimit?e.parameterLimit:a.parameterLimit,parseArrays:!1!==e.parseArrays,plainObjects:"boolean"==typeof e.plainObjects?e.plainObjects:a.plainObjects,strictNullHandling:"boolean"==typeof e.strictNullHandling?e.strictNullHandling:a.strictNullHandling}}(t);if(""===e||null==e)return n.plainObjects?Object.create(null):{};for(var l="string"==typeof e?function(e,t){var n,c={},l=t.ignoreQueryPrefix?e.replace(/^\?/,""):e,f=t.parameterLimit===1/0?void 0:t.parameterLimit,d=l.split(t.delimiter,f),p=-1,h=t.charset;if(t.charsetSentinel)for(n=0;n-1&&(g=o(g)?[g]:g),i.call(c,y)?c[y]=r.combine(c[y],g):c[y]=g}return c}(e,n):e,f=n.plainObjects?Object.create(null):{},d=Object.keys(l),p=0;p=this._maxRetries)return!1;if(this._retryCallback)try{var n=this._retryCallback(e,t);if(!0===n)return!0;if(!1===n)return!1}catch(e){console.error(e)}if(t&&t.status&&u.has(t.status))return!0;if(e){if(e.code&&a.has(e.code))return!0;if(e.timeout&&"ECONNABORTED"===e.code)return!0;if(e.crossDomain)return!0}return!1},o.prototype._retry=function(){return this.clearTimeout(),this.req&&(this.req=null,this.req=this.request()),this._aborted=!1,this.timedout=!1,this.timedoutError=null,this._end()},o.prototype.then=function(e,t){var n=this;if(!this._fullfilledPromise){var r=this;this._endCalled&&console.warn("Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises"),this._fullfilledPromise=new Promise((function(e,t){r.on("abort",(function(){if(!(n._maxRetries&&n._maxRetries>n._retries))if(n.timedout&&n.timedoutError)t(n.timedoutError);else{var e=new Error("Aborted");e.code="ABORTED",e.status=n.status,e.method=n.method,e.url=n.url,t(e)}})),r.end((function(n,r){n?t(n):e(r)}))}))}return this._fullfilledPromise.then(e,t)},o.prototype.catch=function(e){return this.then(void 0,e)},o.prototype.use=function(e){return e(this),this},o.prototype.ok=function(e){if("function"!=typeof e)throw new Error("Callback required");return this._okCallback=e,this},o.prototype._isResponseOK=function(e){return!!e&&(this._okCallback?this._okCallback(e):e.status>=200&&e.status<300)},o.prototype.get=function(e){return this._header[e.toLowerCase()]},o.prototype.getHeader=o.prototype.get,o.prototype.set=function(e,t){if(i(e)){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&this.set(n,e[n]);return this}return this._header[e.toLowerCase()]=t,this.header[e]=t,this},o.prototype.unset=function(e){return delete this._header[e.toLowerCase()],delete this.header[e],this},o.prototype.field=function(e,t){if(null==e)throw new Error(".field(name, val) name can not be empty");if(this._data)throw new Error(".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()");if(i(e)){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&this.field(n,e[n]);return this}if(Array.isArray(t)){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&this.field(e,t[r]);return this}if(null==t)throw new Error(".field(name, val) val can not be empty");return"boolean"==typeof t&&(t=String(t)),this._getFormData().append(e,t),this},o.prototype.abort=function(){return this._aborted||(this._aborted=!0,this.xhr&&this.xhr.abort(),this.req&&this.req.abort(),this.clearTimeout(),this.emit("abort")),this},o.prototype._auth=function(e,t,n,r){switch(n.type){case"basic":this.set("Authorization","Basic ".concat(r("".concat(e,":").concat(t))));break;case"auto":this.username=e,this.password=t;break;case"bearer":this.set("Authorization","Bearer ".concat(e))}return this},o.prototype.withCredentials=function(e){return void 0===e&&(e=!0),this._withCredentials=e,this},o.prototype.redirects=function(e){return this._maxRedirects=e,this},o.prototype.maxResponseSize=function(e){if("number"!=typeof e)throw new TypeError("Invalid argument");return this._maxResponseSize=e,this},o.prototype.toJSON=function(){return{method:this.method,url:this.url,data:this._data,headers:this._header}},o.prototype.send=function(e){var t=i(e),n=this._header["content-type"];if(this._formData)throw new Error(".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()");if(t&&!this._data)Array.isArray(e)?this._data=[]:this._isHost(e)||(this._data={});else if(e&&this._data&&this._isHost(this._data))throw new Error("Can't merge these send calls");if(t&&i(this._data))for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(this._data[r]=e[r]);else"string"==typeof e?(n||this.type("form"),(n=this._header["content-type"])&&(n=n.toLowerCase().trim()),this._data="application/x-www-form-urlencoded"===n?this._data?"".concat(this._data,"&").concat(e):e:(this._data||"")+e):this._data=e;return!t||this._isHost(e)||n||this.type("json"),this},o.prototype.sortQuery=function(e){return this._sort=void 0===e||e,this},o.prototype._finalizeQueryString=function(){var e=this._query.join("&");if(e&&(this.url+=(this.url.includes("?")?"&":"?")+e),this._query.length=0,this._sort){var t=this.url.indexOf("?");if(t>=0){var n=this.url.slice(t+1).split("&");"function"==typeof this._sort?n.sort(this._sort):n.sort(),this.url=this.url.slice(0,t)+"?"+n.join("&")}}},o.prototype._appendQueryString=function(){console.warn("Unsupported")},o.prototype._timeoutError=function(e,t,n){if(!this._aborted){var r=new Error("".concat(e+t,"ms exceeded"));r.timeout=t,r.code="ECONNABORTED",r.errno=n,this.timedout=!0,this.timedoutError=r,this.abort(),this.callback(r)}},o.prototype._setTimeouts=function(){var e=this;this._timeout&&!this._timer&&(this._timer=setTimeout((function(){e._timeoutError("Timeout of ",e._timeout,"ETIME")}),this._timeout)),this._responseTimeout&&!this._responseTimeoutTimer&&(this._responseTimeoutTimer=setTimeout((function(){e._timeoutError("Response timeout of ",e._responseTimeout,"ETIMEDOUT")}),this._responseTimeout))}},function(e,t,n){"use strict";var r=n(146);function i(e){if(e)return function(e){for(var t in i.prototype)Object.prototype.hasOwnProperty.call(i.prototype,t)&&(e[t]=i.prototype[t]);return e}(e)}e.exports=i,i.prototype.get=function(e){return this.header[e.toLowerCase()]},i.prototype._setHeaderProperties=function(e){var t=e["content-type"]||"";this.type=r.type(t);var n=r.params(t);for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(this[i]=n[i]);this.links={};try{e.link&&(this.links=r.parseLinks(e.link))}catch(e){}},i.prototype._setStatusProperties=function(e){var t=e/100|0;this.statusCode=e,this.status=this.statusCode,this.statusType=t,this.info=1===t,this.ok=2===t,this.redirect=3===t,this.clientError=4===t,this.serverError=5===t,this.error=(4===t||5===t)&&this.toError(),this.created=201===e,this.accepted=202===e,this.noContent=204===e,this.badRequest=400===e,this.unauthorized=401===e,this.notAcceptable=406===e,this.forbidden=403===e,this.notFound=404===e,this.unprocessableEntity=422===e}},function(e,t,n){"use strict";function r(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return i(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return i(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,u=!0,s=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return u=e.done,e},e:function(e){s=!0,a=e},f:function(){try{u||null==n.return||n.return()}finally{if(s)throw a}}}}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n { return gulp - .src(['lib', 'dist', 'coverage', 'upload'], { read: false, allowEmpty: true }) + .src(['lib', 'dist', 'upload'], { read: false, allowEmpty: true }) .pipe(clean()); }); @@ -116,17 +115,6 @@ gulp.task('flow', (cb) => { gulp.task('validate', gulp.series('lint', 'flow')); -gulp.task('pre-test', () => { - return gulp - .src(['lib/**/*.js']) - .pipe( - gulpIstanbul({ - includeAllSources: true, - }) - ) - .pipe(gulpIstanbul.hookRequire()); -}); - gulp.task('test_web', (done) => { new Karma( { @@ -144,8 +132,7 @@ gulp.task('test_web', (done) => { gulp.task('test_node', () => { return gulp .src(['test/**/*.test.js', '!test/dist/*.js', '!test/feature/*.js'], { read: false }) - .pipe(mocha({ config: '.mocharc.yml' })) - .pipe(gulpIstanbul.writeReports({ reporters: ['json', 'lcov', 'text'] })); + .pipe(mocha({ config: '.mocharc.yml' })); }); gulp.task('test_titanium', gulp.series('unzip_titanium_sdk'), (done) => { @@ -172,8 +159,7 @@ gulp.task('test_react-native', () => { require: ['@babel/register'], noConfig: true, }) - ) - .pipe(gulpIstanbul.writeReports({ reporters: ['json', 'lcov', 'text'] })); + ); }); gulp.task('test_release', () => { @@ -189,7 +175,6 @@ gulp.task('test_release', () => { gulp.task('test', (done) => { runSequence( - 'pre-test', 'test_node', 'test_web', 'test_titanium', diff --git a/karma/titanium.config.js b/karma/titanium.config.js index 9a962a53c..7a03f40aa 100644 --- a/karma/titanium.config.js +++ b/karma/titanium.config.js @@ -25,14 +25,10 @@ export default (config) => { ], - // preprocess matching files before serving them to the browser - // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor - preprocessors: { 'dist/*.js': ['coverage'] }, - // test results reporter to use // possible values: 'dots', 'progress' // available reporters: https://npmjs.org/browse/keyword/karma-reporter - reporters: ['spec', 'coverage'], + reporters: ['spec'], // web server port @@ -63,16 +59,5 @@ export default (config) => { browserDisconnectTimeout: 20000, browserNoActivityTimeout: 20000, - - coverageReporter: { - // specify a common output directory - dir: 'coverage', - reporters: [ - // reporters not supporting the `file` property - { type: 'html' }, - { type: 'text-summary' }, - { type: 'lcov' } - ] - } }); }; diff --git a/karma/web.config.js b/karma/web.config.js index 6e9c59fd2..fcb820df5 100644 --- a/karma/web.config.js +++ b/karma/web.config.js @@ -16,6 +16,7 @@ export default (config) => { // list of files / patterns to load in the browser files: [ '../node_modules/es6-promise/dist/es6-promise.auto.js', + '../node_modules/es6-shim/es6-shim.js', '../dist/web/pubnub.js', '../test/dist/web-titanium.test.js' ], @@ -24,15 +25,10 @@ export default (config) => { exclude: [ ], - - // preprocess matching files before serving them to the browser - // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor - preprocessors: { 'dist/*.js': ['coverage'] }, - // test results reporter to use // possible values: 'dots', 'progress' // available reporters: https://npmjs.org/browse/keyword/karma-reporter - reporters: ['spec', 'coverage'], + reporters: ['spec'], // web server port @@ -63,16 +59,5 @@ export default (config) => { browserDisconnectTimeout: 20000, browserNoActivityTimeout: 20000, - - coverageReporter: { - // specify a common output directory - dir: 'coverage', - reporters: [ - // reporters not supporting the `file` property - { type: 'html' }, - { type: 'text-summary' }, - { type: 'lcov' } - ] - } }); }; diff --git a/lib/cbor/common.js.map b/lib/cbor/common.js.map index 06bb9443c..89891f401 100644 --- a/lib/cbor/common.js.map +++ b/lib/cbor/common.js.map @@ -1 +1 @@ -{"version":3,"sources":["cbor/common.js"],"names":["decode","base64ToBinary","_base64ToBinary","_decode","tokenString","padding","length","cleaned","replace","result","undefined"],"mappings":";;;;;;;;;;;;;;;;;;AAIE,oBAAYA,MAAZ,EAAkCC,cAAlC,EAA2E;AAAA;AAAA;AAAA;AACzE,SAAKC,eAAL,GAAuBD,cAAvB;AACA,SAAKE,OAAL,GAAeH,MAAf;AACD;;;;gCAEWI,W,EAAa;AACvB,UAAIC,OAAO,GAAG,EAAd;;AAEA,UAAID,WAAW,CAACE,MAAZ,GAAqB,CAArB,KAA2B,CAA/B,EAAkC;AAChCD,QAAAA,OAAO,GAAG,GAAV;AACD,OAFD,MAEO,IAAID,WAAW,CAACE,MAAZ,GAAqB,CAArB,KAA2B,CAA/B,EAAkC;AACvCD,QAAAA,OAAO,GAAG,IAAV;AACD;;AAED,UAAME,OAAO,GAAGH,WAAW,CAACI,OAAZ,CAAoB,KAApB,EAA2B,GAA3B,EAAgCA,OAAhC,CAAwC,KAAxC,EAA+C,GAA/C,IAAsDH,OAAtE;;AACA,UAAMI,MAAM,GAAG,KAAKN,OAAL,CAAa,KAAKD,eAAL,CAAqBK,OAArB,CAAb,CAAf;;AAEA,UAAI,yBAAOE,MAAP,MAAkB,QAAtB,EAAgC;AAC9B,eAAOA,MAAP;AACD;;AAED,aAAOC,SAAP;AACD","sourcesContent":["export default class {\n _base64ToBinary: (base64: string) => any;\n _cborReader: { decode: (any) => Object };\n\n constructor(decode: (any) => any, base64ToBinary: (base64: string) => any) {\n this._base64ToBinary = base64ToBinary;\n this._decode = decode;\n }\n\n decodeToken(tokenString) {\n let padding = '';\n\n if (tokenString.length % 4 === 3) {\n padding = '=';\n } else if (tokenString.length % 4 === 2) {\n padding = '==';\n }\n\n const cleaned = tokenString.replace(/-/gi, '+').replace(/_/gi, '/') + padding;\n const result = this._decode(this._base64ToBinary(cleaned));\n\n if (typeof result === 'object') {\n return result;\n }\n\n return undefined;\n }\n}\n"],"file":"common.js"} \ No newline at end of file +{"version":3,"sources":["cbor/common.js"],"names":["decode","base64ToBinary","_base64ToBinary","_decode","tokenString","padding","length","cleaned","replace","result","undefined"],"mappings":";;;;;;;;;;;;;;;;;;AAIE,oBAAYA,MAAZ,EAAkCC,cAAlC,EAA2E;AAAA;AAAA;AAAA;AACzE,SAAKC,eAAL,GAAuBD,cAAvB;AACA,SAAKE,OAAL,GAAeH,MAAf;AACD;;;;WAED,qBAAYI,WAAZ,EAAyB;AACvB,UAAIC,OAAO,GAAG,EAAd;;AAEA,UAAID,WAAW,CAACE,MAAZ,GAAqB,CAArB,KAA2B,CAA/B,EAAkC;AAChCD,QAAAA,OAAO,GAAG,GAAV;AACD,OAFD,MAEO,IAAID,WAAW,CAACE,MAAZ,GAAqB,CAArB,KAA2B,CAA/B,EAAkC;AACvCD,QAAAA,OAAO,GAAG,IAAV;AACD;;AAED,UAAME,OAAO,GAAGH,WAAW,CAACI,OAAZ,CAAoB,KAApB,EAA2B,GAA3B,EAAgCA,OAAhC,CAAwC,KAAxC,EAA+C,GAA/C,IAAsDH,OAAtE;;AACA,UAAMI,MAAM,GAAG,KAAKN,OAAL,CAAa,KAAKD,eAAL,CAAqBK,OAArB,CAAb,CAAf;;AAEA,UAAI,yBAAOE,MAAP,MAAkB,QAAtB,EAAgC;AAC9B,eAAOA,MAAP;AACD;;AAED,aAAOC,SAAP;AACD","sourcesContent":["export default class {\n _base64ToBinary: (base64: string) => any;\n _cborReader: { decode: (any) => Object };\n\n constructor(decode: (any) => any, base64ToBinary: (base64: string) => any) {\n this._base64ToBinary = base64ToBinary;\n this._decode = decode;\n }\n\n decodeToken(tokenString) {\n let padding = '';\n\n if (tokenString.length % 4 === 3) {\n padding = '=';\n } else if (tokenString.length % 4 === 2) {\n padding = '==';\n }\n\n const cleaned = tokenString.replace(/-/gi, '+').replace(/_/gi, '/') + padding;\n const result = this._decode(this._base64ToBinary(cleaned));\n\n if (typeof result === 'object') {\n return result;\n }\n\n return undefined;\n }\n}\n"],"file":"common.js"} \ No newline at end of file diff --git a/lib/core/components/config.js b/lib/core/components/config.js index d498eb797..5d5af031c 100644 --- a/lib/core/components/config.js +++ b/lib/core/components/config.js @@ -20,14 +20,20 @@ var _flow_interfaces = require("../flow_interfaces"); var PRESENCE_TIMEOUT_MINIMUM = 20; var PRESENCE_TIMEOUT_DEFAULT = 300; +var makeDefaultOrigins = function makeDefaultOrigins() { + return Array.from({ + length: 20 + }, function (_, i) { + return "ps".concat(i + 1, ".pndsn.com"); + }); +}; + var _default = function () { function _default(_ref) { var _setup$fileUploadPubl, _setup$useRandomIVs; - var setup = _ref.setup, - db = _ref.db; + var setup = _ref.setup; (0, _classCallCheck2["default"])(this, _default); - (0, _defineProperty2["default"])(this, "_db", void 0); (0, _defineProperty2["default"])(this, "subscribeKey", void 0); (0, _defineProperty2["default"])(this, "publishKey", void 0); (0, _defineProperty2["default"])(this, "secretKey", void 0); @@ -66,7 +72,6 @@ var _default = function () { (0, _defineProperty2["default"])(this, "fileUploadPublishRetryLimit", void 0); (0, _defineProperty2["default"])(this, "useRandomIVs", void 0); this._PNSDKSuffix = {}; - this._db = db; this.instanceId = "pn-".concat(_uuid["default"].createUUID()); this.secretKey = setup.secretKey || setup.secret_key; this.subscribeKey = setup.subscribeKey || setup.subscribe_key; @@ -77,7 +82,12 @@ var _default = function () { this.setAuthKey(setup.authKey); this.setCipherKey(setup.cipherKey); this.setFilterExpression(setup.filterExpression); - this.origin = setup.origin || 'ps.pndsn.com'; + + if (typeof setup.origin !== 'string' && !Array.isArray(setup.origin) && setup.origin !== undefined) { + throw new Error('Origin must be either undefined, a string or a list of strings.'); + } + + this.origin = setup.origin || makeDefaultOrigins(); this.secure = setup.ssl || false; this.restore = setup.restore || false; this.proxy = setup.proxy; @@ -116,7 +126,7 @@ var _default = function () { this.setHeartbeatInterval(setup.heartbeatInterval); } - this.setUUID(this._decideUUID(setup.uuid)); + this.setUUID(setup.uuid); } (0, _createClass2["default"])(_default, [{ @@ -144,7 +154,10 @@ var _default = function () { }, { key: "setUUID", value: function setUUID(val) { - if (this._db && this._db.set) this._db.set("".concat(this.subscribeKey, "uuid"), val); + if (!val || typeof val !== 'string' || val.trim().length === 0) { + throw new Error('Missing uuid parameter. Provide a valid string uuid'); + } + this.UUID = val; return this; } @@ -229,7 +242,7 @@ var _default = function () { }, { key: "getVersion", value: function getVersion() { - return '4.32.1'; + return '5.0.0'; } }, { key: "_addPnsdkSuffix", @@ -245,19 +258,6 @@ var _default = function () { return result + separator + _this._PNSDKSuffix[key]; }, ''); } - }, { - key: "_decideUUID", - value: function _decideUUID(providedUUID) { - if (providedUUID) { - return providedUUID; - } - - if (this._db && this._db.get && this._db.get("".concat(this.subscribeKey, "uuid"))) { - return this._db.get("".concat(this.subscribeKey, "uuid")); - } - - return "pn-".concat(_uuid["default"].createUUID()); - } }]); return _default; }(); diff --git a/lib/core/components/config.js.map b/lib/core/components/config.js.map index 6a9d8ceca..423963944 100644 --- a/lib/core/components/config.js.map +++ b/lib/core/components/config.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/config.js"],"names":["PRESENCE_TIMEOUT_MINIMUM","PRESENCE_TIMEOUT_DEFAULT","setup","db","_PNSDKSuffix","_db","instanceId","uuidGenerator","createUUID","secretKey","secret_key","subscribeKey","subscribe_key","publishKey","publish_key","sdkName","sdkFamily","partnerId","setAuthKey","authKey","setCipherKey","cipherKey","setFilterExpression","filterExpression","origin","secure","ssl","restore","proxy","keepAlive","keepAliveSettings","autoNetworkDetection","dedupeOnSubscribe","maximumCacheSize","customEncrypt","customDecrypt","fileUploadPublishRetryLimit","useRandomIVs","location","protocol","logVerbosity","suppressLeaveEvents","announceFailedHeartbeats","announceSuccessfulHeartbeats","useInstanceId","useRequestId","requestMessageCountThreshold","setTransactionTimeout","transactionalRequestTimeout","setSubscribeTimeout","subscribeRequestTimeout","setSendBeaconConfig","useSendBeacon","presenceTimeout","setPresenceTimeout","_presenceTimeout","heartbeatInterval","setHeartbeatInterval","setUUID","_decideUUID","uuid","val","UUID","set","console","log","_heartbeatInterval","_subscribeRequestTimeout","_transactionalRequestTimeout","_useSendBeacon","name","suffix","separator","Object","keys","reduce","result","key","providedUUID","get"],"mappings":"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","sourcesContent":["/* @flow */\n/* global location */\n\nimport uuidGenerator from './uuid';\nimport { InternalSetupStruct, DatabaseInterface, KeepAliveStruct, ProxyStruct } from '../flow_interfaces';\n\nconst PRESENCE_TIMEOUT_MINIMUM: number = 20;\nconst PRESENCE_TIMEOUT_DEFAULT: number = 300;\n\ntype ConfigConstructArgs = {\n setup: InternalSetupStruct,\n db: DatabaseInterface,\n};\n\nexport default class {\n _db: DatabaseInterface;\n\n subscribeKey: string;\n publishKey: string;\n secretKey: string;\n cipherKey: string;\n authKey: string;\n UUID: string;\n\n proxy: ProxyStruct;\n\n /*\n if _useInstanceId is true, this instanceId will be added to all requests\n */\n instanceId: string;\n\n /*\n If the SDK is running as part of another SDK built atop of it, allow a custom pnsdk with name and version.\n */\n sdkName: string;\n\n /*\n keep track of the SDK family for identifier generator\n */\n sdkFamily: string;\n\n /*\n If the SDK is operated by a partner, allow a custom pnsdk item for them.\n */\n partnerId: string;\n\n /*\n filter expression to pass along when subscribing.\n */\n filterExpression: string;\n /*\n configuration to supress leave events; when a presence leave is performed\n this configuration will disallow the leave event from happening\n */\n suppressLeaveEvents: boolean;\n\n /*\n use SSL for http requests?\n */\n secure: boolean;\n\n // Custom optional origin.\n origin: string;\n\n // log verbosity: true to output lots of info\n logVerbosity: boolean;\n\n // if instanceId config is true, the SDK will pass the unique instance identifier to the server as instanceId=\n useInstanceId: boolean;\n\n // if requestId config is true, the SDK will pass a unique request identifier with each request as request_id=\n useRequestId: boolean;\n\n // use connection keep-alive for http requests\n keepAlive: ?boolean;\n\n keepAliveSettings: ?KeepAliveStruct;\n\n // if autoNetworkDetection config is true, the SDK will emit NetworkUp and NetworkDown when there changes in the networking\n autoNetworkDetection: ?boolean;\n\n // alert when a heartbeat works out.\n announceSuccessfulHeartbeats: boolean;\n announceFailedHeartbeats: boolean;\n\n /*\n how long the server will wait before declaring that the client is gone.\n */\n _presenceTimeout: number;\n\n /*\n how often (in seconds) the client should announce its presence to server\n */\n _heartbeatInterval: number;\n\n /*\n how long to wait for the server when running the subscribe loop\n */\n _subscribeRequestTimeout: number;\n /*\n how long to wait for the server when making transactional requests\n */\n _transactionalRequestTimeout: number;\n /*\n use send beacon API when unsubscribing.\n https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon\n */\n _useSendBeacon: boolean;\n\n /*\n allow frameworks to append to the PNSDK parameter\n the key should be an identifier for the specific framework to prevent duplicates\n */\n _PNSDKSuffix: { [key: string]: string };\n\n /*\n if set, the SDK will alert if more messages arrive in one subscribe than the theshold\n */\n requestMessageCountThreshold: number;\n\n /*\n Restore subscription list on disconnection.\n */\n restore: boolean;\n\n /*\n support for client deduping\n */\n dedupeOnSubscribe: boolean;\n\n maximumCacheSize: number;\n\n /*\n support customp encryption and decryption functions.\n */\n customEncrypt: Function; // function to support custome encryption of messages\n\n customDecrypt: Function; // function used to decrypt old version messages\n\n // File Upload\n\n // How many times the publish-file should be retried before giving up\n fileUploadPublishRetryLimit: number;\n useRandomIVs: boolean;\n\n constructor({ setup, db }: ConfigConstructArgs) {\n this._PNSDKSuffix = {};\n this._db = db;\n\n this.instanceId = `pn-${uuidGenerator.createUUID()}`;\n this.secretKey = setup.secretKey || setup.secret_key;\n this.subscribeKey = setup.subscribeKey || setup.subscribe_key;\n this.publishKey = setup.publishKey || setup.publish_key;\n this.sdkName = setup.sdkName;\n this.sdkFamily = setup.sdkFamily;\n this.partnerId = setup.partnerId;\n this.setAuthKey(setup.authKey);\n this.setCipherKey(setup.cipherKey);\n\n this.setFilterExpression(setup.filterExpression);\n\n this.origin = setup.origin || 'ps.pndsn.com';\n this.secure = setup.ssl || false;\n this.restore = setup.restore || false;\n this.proxy = setup.proxy;\n this.keepAlive = setup.keepAlive;\n this.keepAliveSettings = setup.keepAliveSettings;\n this.autoNetworkDetection = setup.autoNetworkDetection || false;\n\n this.dedupeOnSubscribe = setup.dedupeOnSubscribe || false;\n this.maximumCacheSize = setup.maximumCacheSize || 100;\n\n this.customEncrypt = setup.customEncrypt;\n this.customDecrypt = setup.customDecrypt;\n\n this.fileUploadPublishRetryLimit = setup.fileUploadPublishRetryLimit ?? 5;\n this.useRandomIVs = setup.useRandomIVs ?? true;\n\n // if location config exist and we are in https, force secure to true.\n if (typeof location !== 'undefined' && location.protocol === 'https:') {\n this.secure = true;\n }\n\n this.logVerbosity = setup.logVerbosity || false;\n this.suppressLeaveEvents = setup.suppressLeaveEvents || false;\n\n this.announceFailedHeartbeats = setup.announceFailedHeartbeats || true;\n this.announceSuccessfulHeartbeats = setup.announceSuccessfulHeartbeats || false;\n\n this.useInstanceId = setup.useInstanceId || false;\n this.useRequestId = setup.useRequestId || false;\n\n this.requestMessageCountThreshold = setup.requestMessageCountThreshold;\n\n // set timeout to how long a transaction request will wait for the server (default 15 seconds)\n this.setTransactionTimeout(setup.transactionalRequestTimeout || 15 * 1000);\n // set timeout to how long a subscribe event loop will run (default 310 seconds)\n this.setSubscribeTimeout(setup.subscribeRequestTimeout || 310 * 1000);\n // set config on beacon (https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon) usage\n this.setSendBeaconConfig(setup.useSendBeacon || true);\n // how long the SDK will report the client to be alive before issuing a timeout\n if (setup.presenceTimeout) {\n this.setPresenceTimeout(setup.presenceTimeout);\n } else {\n this._presenceTimeout = PRESENCE_TIMEOUT_DEFAULT;\n }\n\n if (setup.heartbeatInterval != null) {\n this.setHeartbeatInterval(setup.heartbeatInterval);\n }\n\n this.setUUID(this._decideUUID(setup.uuid)); // UUID decision depends on subKey.\n }\n\n // exposed setters\n getAuthKey(): string {\n return this.authKey;\n }\n\n setAuthKey(val: string): this {\n this.authKey = val;\n return this;\n }\n\n setCipherKey(val: string): this {\n this.cipherKey = val;\n return this;\n }\n\n getUUID(): string {\n return this.UUID;\n }\n\n setUUID(val: string): this {\n if (this._db && this._db.set) this._db.set(`${this.subscribeKey}uuid`, val);\n this.UUID = val;\n return this;\n }\n\n getFilterExpression(): string {\n return this.filterExpression;\n }\n\n setFilterExpression(val: string): this {\n this.filterExpression = val;\n return this;\n }\n\n getPresenceTimeout(): number {\n return this._presenceTimeout;\n }\n\n setPresenceTimeout(val: number): this {\n if (val >= PRESENCE_TIMEOUT_MINIMUM) {\n this._presenceTimeout = val;\n } else {\n this._presenceTimeout = PRESENCE_TIMEOUT_MINIMUM;\n\n // eslint-disable-next-line no-console\n console.log('WARNING: Presence timeout is less than the minimum. Using minimum value: ', this._presenceTimeout);\n }\n\n this.setHeartbeatInterval(this._presenceTimeout / 2 - 1);\n\n return this;\n }\n\n setProxy(proxy: ProxyStruct) {\n this.proxy = proxy;\n }\n\n getHeartbeatInterval(): number {\n return this._heartbeatInterval;\n }\n\n setHeartbeatInterval(val: number): this {\n this._heartbeatInterval = val;\n return this;\n }\n\n // deprecated setters.\n getSubscribeTimeout(): number {\n return this._subscribeRequestTimeout;\n }\n\n setSubscribeTimeout(val: number): this {\n this._subscribeRequestTimeout = val;\n return this;\n }\n\n getTransactionTimeout(): number {\n return this._transactionalRequestTimeout;\n }\n\n setTransactionTimeout(val: number): this {\n this._transactionalRequestTimeout = val;\n return this;\n }\n\n isSendBeaconEnabled(): boolean {\n return this._useSendBeacon;\n }\n\n setSendBeaconConfig(val: boolean): this {\n this._useSendBeacon = val;\n return this;\n }\n\n getVersion(): string {\n return '4.32.1';\n }\n\n _addPnsdkSuffix(name: string, suffix: string) {\n this._PNSDKSuffix[name] = suffix;\n }\n\n _getPnsdkSuffix(separator: string): string {\n return Object.keys(this._PNSDKSuffix).reduce((result, key) => result + separator + this._PNSDKSuffix[key], '');\n }\n\n _decideUUID(providedUUID: string): string {\n // if the uuid was provided by setup, use this UUID.\n if (providedUUID) {\n return providedUUID;\n }\n\n // if the database module is enabled and we have something saved, use this.\n if (this._db && this._db.get && this._db.get(`${this.subscribeKey}uuid`)) {\n return this._db.get(`${this.subscribeKey}uuid`);\n }\n\n // randomize the UUID and push to storage\n return `pn-${uuidGenerator.createUUID()}`;\n }\n}\n"],"file":"config.js"} \ No newline at end of file +{"version":3,"sources":["core/components/config.js"],"names":["PRESENCE_TIMEOUT_MINIMUM","PRESENCE_TIMEOUT_DEFAULT","makeDefaultOrigins","Array","from","length","_","i","setup","_PNSDKSuffix","instanceId","uuidGenerator","createUUID","secretKey","secret_key","subscribeKey","subscribe_key","publishKey","publish_key","sdkName","sdkFamily","partnerId","setAuthKey","authKey","setCipherKey","cipherKey","setFilterExpression","filterExpression","origin","isArray","undefined","Error","secure","ssl","restore","proxy","keepAlive","keepAliveSettings","autoNetworkDetection","dedupeOnSubscribe","maximumCacheSize","customEncrypt","customDecrypt","fileUploadPublishRetryLimit","useRandomIVs","location","protocol","logVerbosity","suppressLeaveEvents","announceFailedHeartbeats","announceSuccessfulHeartbeats","useInstanceId","useRequestId","requestMessageCountThreshold","setTransactionTimeout","transactionalRequestTimeout","setSubscribeTimeout","subscribeRequestTimeout","setSendBeaconConfig","useSendBeacon","presenceTimeout","setPresenceTimeout","_presenceTimeout","heartbeatInterval","setHeartbeatInterval","setUUID","uuid","val","UUID","trim","console","log","_heartbeatInterval","_subscribeRequestTimeout","_transactionalRequestTimeout","_useSendBeacon","name","suffix","separator","Object","keys","reduce","result","key"],"mappings":"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","sourcesContent":["/* @flow */\n/* global location */\n\nimport uuidGenerator from './uuid';\nimport { InternalSetupStruct, KeepAliveStruct, ProxyStruct } from '../flow_interfaces';\n\nconst PRESENCE_TIMEOUT_MINIMUM: number = 20;\nconst PRESENCE_TIMEOUT_DEFAULT: number = 300;\n\nconst makeDefaultOrigins = () => Array.from({ length: 20 }, (_, i) => `ps${i + 1}.pndsn.com`);\n\ntype ConfigConstructArgs = {\n setup: InternalSetupStruct\n};\n\nexport default class {\n subscribeKey: string;\n publishKey: string;\n secretKey: string;\n cipherKey: string;\n authKey: string;\n UUID: string;\n\n proxy: ProxyStruct;\n\n /*\n if _useInstanceId is true, this instanceId will be added to all requests\n */\n instanceId: string;\n\n /*\n If the SDK is running as part of another SDK built atop of it, allow a custom pnsdk with name and version.\n */\n sdkName: string;\n\n /*\n keep track of the SDK family for identifier generator\n */\n sdkFamily: string;\n\n /*\n If the SDK is operated by a partner, allow a custom pnsdk item for them.\n */\n partnerId: string;\n\n /*\n filter expression to pass along when subscribing.\n */\n filterExpression: string;\n /*\n configuration to supress leave events; when a presence leave is performed\n this configuration will disallow the leave event from happening\n */\n suppressLeaveEvents: boolean;\n\n /*\n use SSL for http requests?\n */\n secure: boolean;\n\n // Custom optional origin.\n origin: string | string[];\n\n // log verbosity: true to output lots of info\n logVerbosity: boolean;\n\n // if instanceId config is true, the SDK will pass the unique instance identifier to the server as instanceId=\n useInstanceId: boolean;\n\n // if requestId config is true, the SDK will pass a unique request identifier with each request as request_id=\n useRequestId: boolean;\n\n // use connection keep-alive for http requests\n keepAlive: ?boolean;\n\n keepAliveSettings: ?KeepAliveStruct;\n\n // if autoNetworkDetection config is true, the SDK will emit NetworkUp and NetworkDown when there changes in the networking\n autoNetworkDetection: ?boolean;\n\n // alert when a heartbeat works out.\n announceSuccessfulHeartbeats: boolean;\n announceFailedHeartbeats: boolean;\n\n /*\n how long the server will wait before declaring that the client is gone.\n */\n _presenceTimeout: number;\n\n /*\n how often (in seconds) the client should announce its presence to server\n */\n _heartbeatInterval: number;\n\n /*\n how long to wait for the server when running the subscribe loop\n */\n _subscribeRequestTimeout: number;\n /*\n how long to wait for the server when making transactional requests\n */\n _transactionalRequestTimeout: number;\n /*\n use send beacon API when unsubscribing.\n https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon\n */\n _useSendBeacon: boolean;\n\n /*\n allow frameworks to append to the PNSDK parameter\n the key should be an identifier for the specific framework to prevent duplicates\n */\n _PNSDKSuffix: { [key: string]: string };\n\n /*\n if set, the SDK will alert if more messages arrive in one subscribe than the theshold\n */\n requestMessageCountThreshold: number;\n\n /*\n Restore subscription list on disconnection.\n */\n restore: boolean;\n\n /*\n support for client deduping\n */\n dedupeOnSubscribe: boolean;\n\n maximumCacheSize: number;\n\n /*\n support customp encryption and decryption functions.\n */\n customEncrypt: Function; // function to support custome encryption of messages\n\n customDecrypt: Function; // function used to decrypt old version messages\n\n // File Upload\n\n // How many times the publish-file should be retried before giving up\n fileUploadPublishRetryLimit: number;\n useRandomIVs: boolean;\n\n constructor({ setup }: ConfigConstructArgs) {\n this._PNSDKSuffix = {};\n\n this.instanceId = `pn-${uuidGenerator.createUUID()}`;\n this.secretKey = setup.secretKey || setup.secret_key;\n this.subscribeKey = setup.subscribeKey || setup.subscribe_key;\n this.publishKey = setup.publishKey || setup.publish_key;\n this.sdkName = setup.sdkName;\n this.sdkFamily = setup.sdkFamily;\n this.partnerId = setup.partnerId;\n this.setAuthKey(setup.authKey);\n this.setCipherKey(setup.cipherKey);\n\n this.setFilterExpression(setup.filterExpression);\n\n if (typeof setup.origin !== 'string' && !Array.isArray(setup.origin) && setup.origin !== undefined) {\n throw new Error('Origin must be either undefined, a string or a list of strings.');\n }\n\n this.origin = setup.origin || makeDefaultOrigins();\n this.secure = setup.ssl || false;\n this.restore = setup.restore || false;\n this.proxy = setup.proxy;\n this.keepAlive = setup.keepAlive;\n this.keepAliveSettings = setup.keepAliveSettings;\n this.autoNetworkDetection = setup.autoNetworkDetection || false;\n\n this.dedupeOnSubscribe = setup.dedupeOnSubscribe || false;\n this.maximumCacheSize = setup.maximumCacheSize || 100;\n\n this.customEncrypt = setup.customEncrypt;\n this.customDecrypt = setup.customDecrypt;\n\n this.fileUploadPublishRetryLimit = setup.fileUploadPublishRetryLimit ?? 5;\n this.useRandomIVs = setup.useRandomIVs ?? true;\n\n // if location config exist and we are in https, force secure to true.\n if (typeof location !== 'undefined' && location.protocol === 'https:') {\n this.secure = true;\n }\n\n this.logVerbosity = setup.logVerbosity || false;\n this.suppressLeaveEvents = setup.suppressLeaveEvents || false;\n\n this.announceFailedHeartbeats = setup.announceFailedHeartbeats || true;\n this.announceSuccessfulHeartbeats = setup.announceSuccessfulHeartbeats || false;\n\n this.useInstanceId = setup.useInstanceId || false;\n this.useRequestId = setup.useRequestId || false;\n\n this.requestMessageCountThreshold = setup.requestMessageCountThreshold;\n\n // set timeout to how long a transaction request will wait for the server (default 15 seconds)\n this.setTransactionTimeout(setup.transactionalRequestTimeout || 15 * 1000);\n // set timeout to how long a subscribe event loop will run (default 310 seconds)\n this.setSubscribeTimeout(setup.subscribeRequestTimeout || 310 * 1000);\n // set config on beacon (https://developer.mozilla.org/en-US/docs/Web/API/Navigator/sendBeacon) usage\n this.setSendBeaconConfig(setup.useSendBeacon || true);\n // how long the SDK will report the client to be alive before issuing a timeout\n if (setup.presenceTimeout) {\n this.setPresenceTimeout(setup.presenceTimeout);\n } else {\n this._presenceTimeout = PRESENCE_TIMEOUT_DEFAULT;\n }\n\n if (setup.heartbeatInterval != null) {\n this.setHeartbeatInterval(setup.heartbeatInterval);\n }\n\n this.setUUID(setup.uuid);\n }\n\n // exposed setters\n getAuthKey(): string {\n return this.authKey;\n }\n\n setAuthKey(val: string): this {\n this.authKey = val;\n return this;\n }\n\n setCipherKey(val: string): this {\n this.cipherKey = val;\n return this;\n }\n\n getUUID(): string {\n return this.UUID;\n }\n\n setUUID(val: string): this {\n if (!val || typeof val !== 'string' || val.trim().length === 0) {\n throw new Error('Missing uuid parameter. Provide a valid string uuid');\n }\n this.UUID = val;\n return this;\n }\n\n getFilterExpression(): string {\n return this.filterExpression;\n }\n\n setFilterExpression(val: string): this {\n this.filterExpression = val;\n return this;\n }\n\n getPresenceTimeout(): number {\n return this._presenceTimeout;\n }\n\n setPresenceTimeout(val: number): this {\n if (val >= PRESENCE_TIMEOUT_MINIMUM) {\n this._presenceTimeout = val;\n } else {\n this._presenceTimeout = PRESENCE_TIMEOUT_MINIMUM;\n\n // eslint-disable-next-line no-console\n console.log('WARNING: Presence timeout is less than the minimum. Using minimum value: ', this._presenceTimeout);\n }\n\n this.setHeartbeatInterval(this._presenceTimeout / 2 - 1);\n\n return this;\n }\n\n setProxy(proxy: ProxyStruct) {\n this.proxy = proxy;\n }\n\n getHeartbeatInterval(): number {\n return this._heartbeatInterval;\n }\n\n setHeartbeatInterval(val: number): this {\n this._heartbeatInterval = val;\n return this;\n }\n\n // deprecated setters.\n getSubscribeTimeout(): number {\n return this._subscribeRequestTimeout;\n }\n\n setSubscribeTimeout(val: number): this {\n this._subscribeRequestTimeout = val;\n return this;\n }\n\n getTransactionTimeout(): number {\n return this._transactionalRequestTimeout;\n }\n\n setTransactionTimeout(val: number): this {\n this._transactionalRequestTimeout = val;\n return this;\n }\n\n isSendBeaconEnabled(): boolean {\n return this._useSendBeacon;\n }\n\n setSendBeaconConfig(val: boolean): this {\n this._useSendBeacon = val;\n return this;\n }\n\n getVersion(): string {\n return '5.0.0';\n }\n\n _addPnsdkSuffix(name: string, suffix: string) {\n this._PNSDKSuffix[name] = suffix;\n }\n\n _getPnsdkSuffix(separator: string): string {\n return Object.keys(this._PNSDKSuffix).reduce((result, key) => result + separator + this._PNSDKSuffix[key], '');\n }\n}\n"],"file":"config.js"} \ No newline at end of file diff --git a/lib/core/components/cryptography/index.js.map b/lib/core/components/cryptography/index.js.map index 847c68de3..33cb74754 100644 --- a/lib/core/components/cryptography/index.js.map +++ b/lib/core/components/cryptography/index.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/cryptography/index.js"],"names":["bufferToWordArray","b","wa","i","length","CryptoJS","lib","WordArray","create","config","_config","_iv","_allowedKeyEncodings","_allowedKeyLengths","_allowedModes","_defaultOptions","encryptKey","keyEncoding","keyLength","mode","data","hash","HmacSHA256","secretKey","toString","enc","Base64","s","SHA256","Hex","incomingOptions","options","hasOwnProperty","indexOf","toLowerCase","parseInt","key","parse","_decodeKey","Utf8","slice","ECB","CBC","random","customCipherKey","customEncrypt","pnEncrypt","customDecrypt","pnDecrypt","cipherKey","_parseOptions","_getMode","_getPaddedKey","useRandomIVs","waIv","_getRandomIV","waPayload","AES","encrypt","iv","ciphertext","clone","concat","_getIV","encryptedHexArray","base64Encrypted","Buffer","from","payload","plainJSON","decrypt","plaintext","JSON","e"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport Config from '../config';\nimport CryptoJS from './hmac-sha256';\n\nfunction bufferToWordArray(b: Buffer) {\n let wa = [];\n let i: number;\n for (i = 0; i < b.length; i += 1) {\n // eslint-disable-next-line no-bitwise\n wa[(i / 4) | 0] |= b[i] << (24 - 8 * i);\n }\n\n return CryptoJS.lib.WordArray.create(wa, b.length);\n}\n\ntype CryptoConstruct = {\n config: Config,\n};\n\nexport default class {\n _config: Config;\n _iv: string;\n _allowedKeyEncodings: Array;\n _allowedKeyLengths: Array;\n _allowedModes: Array;\n _defaultOptions: Object;\n\n constructor({ config }: CryptoConstruct) {\n this._config = config;\n\n this._iv = '0123456789012345';\n\n this._allowedKeyEncodings = ['hex', 'utf8', 'base64', 'binary'];\n this._allowedKeyLengths = [128, 256];\n this._allowedModes = ['ecb', 'cbc'];\n\n this._defaultOptions = {\n encryptKey: true,\n keyEncoding: 'utf8',\n keyLength: 256,\n mode: 'cbc',\n };\n }\n\n HMACSHA256(data: string): string {\n let hash = CryptoJS.HmacSHA256(data, this._config.secretKey);\n return hash.toString(CryptoJS.enc.Base64);\n }\n\n SHA256(s: string): string {\n return CryptoJS.SHA256(s).toString(CryptoJS.enc.Hex);\n }\n\n _parseOptions(incomingOptions: ?Object): Object {\n // Defaults\n let options = incomingOptions || {};\n if (!options.hasOwnProperty('encryptKey')) options.encryptKey = this._defaultOptions.encryptKey;\n if (!options.hasOwnProperty('keyEncoding')) options.keyEncoding = this._defaultOptions.keyEncoding;\n if (!options.hasOwnProperty('keyLength')) options.keyLength = this._defaultOptions.keyLength;\n if (!options.hasOwnProperty('mode')) options.mode = this._defaultOptions.mode;\n\n // Validation\n if (this._allowedKeyEncodings.indexOf(options.keyEncoding.toLowerCase()) === -1) {\n options.keyEncoding = this._defaultOptions.keyEncoding;\n }\n\n if (this._allowedKeyLengths.indexOf(parseInt(options.keyLength, 10)) === -1) {\n options.keyLength = this._defaultOptions.keyLength;\n }\n\n if (this._allowedModes.indexOf(options.mode.toLowerCase()) === -1) {\n options.mode = this._defaultOptions.mode;\n }\n\n return options;\n }\n\n _decodeKey(key: string, options: Object): string {\n if (options.keyEncoding === 'base64') {\n return CryptoJS.enc.Base64.parse(key);\n } else if (options.keyEncoding === 'hex') {\n return CryptoJS.enc.Hex.parse(key);\n } else {\n return key;\n }\n }\n\n _getPaddedKey(key: string, options: Object): string {\n key = this._decodeKey(key, options);\n if (options.encryptKey) {\n return CryptoJS.enc.Utf8.parse(this.SHA256(key).slice(0, 32));\n } else {\n return key;\n }\n }\n\n _getMode(options: Object): string {\n if (options.mode === 'ecb') {\n return CryptoJS.mode.ECB;\n } else {\n return CryptoJS.mode.CBC;\n }\n }\n\n _getIV(options: Object): string | null {\n return options.mode === 'cbc' ? CryptoJS.enc.Utf8.parse(this._iv) : null;\n }\n\n _getRandomIV(): any {\n return CryptoJS.lib.WordArray.random(16);\n }\n\n encrypt(data: string, customCipherKey: ?string, options: ?Object): Object | string | null {\n if (this._config.customEncrypt) {\n return this._config.customEncrypt(data);\n } else {\n return this.pnEncrypt(data, customCipherKey, options);\n }\n }\n\n decrypt(data: Object, customCipherKey: ?string, options: ?Object): Object | string | null {\n if (this._config.customDecrypt) {\n return this._config.customDecrypt(data);\n } else {\n return this.pnDecrypt(data, customCipherKey, options);\n }\n }\n\n pnEncrypt(data: string, customCipherKey: ?string, options: ?Object): Object | string | null {\n if (!customCipherKey && !this._config.cipherKey) return data;\n options = this._parseOptions(options);\n let mode = this._getMode(options);\n let cipherKey = this._getPaddedKey(customCipherKey || this._config.cipherKey, options);\n\n if (this._config.useRandomIVs) {\n let waIv = this._getRandomIV();\n let waPayload = CryptoJS.AES.encrypt(data, cipherKey, { iv: waIv, mode }).ciphertext;\n\n return waIv.clone().concat(waPayload.clone()).toString(CryptoJS.enc.Base64);\n } else {\n let iv = this._getIV(options);\n let encryptedHexArray = CryptoJS.AES.encrypt(data, cipherKey, { iv, mode }).ciphertext;\n let base64Encrypted = encryptedHexArray.toString(CryptoJS.enc.Base64);\n return base64Encrypted || data;\n }\n }\n\n pnDecrypt(data: string, customCipherKey: ?string, options: ?Object): Object | null {\n if (!customCipherKey && !this._config.cipherKey) return data;\n options = this._parseOptions(options);\n let mode = this._getMode(options);\n let cipherKey = this._getPaddedKey(customCipherKey || this._config.cipherKey, options);\n if (this._config.useRandomIVs) {\n let ciphertext = Buffer.from(data, 'base64');\n\n let iv = bufferToWordArray(ciphertext.slice(0, 16));\n let payload = bufferToWordArray(ciphertext.slice(16));\n\n try {\n let plainJSON = CryptoJS.AES.decrypt({ ciphertext: payload }, cipherKey, { iv, mode }).toString(\n CryptoJS.enc.Utf8\n );\n let plaintext = JSON.parse(plainJSON);\n return plaintext;\n } catch (e) {\n return null;\n }\n } else {\n let iv = this._getIV(options);\n try {\n let ciphertext = CryptoJS.enc.Base64.parse(data);\n let plainJSON = CryptoJS.AES.decrypt({ ciphertext }, cipherKey, { iv, mode }).toString(CryptoJS.enc.Utf8);\n let plaintext = JSON.parse(plainJSON);\n return plaintext;\n } catch (e) {\n return null;\n }\n }\n }\n}\n"],"file":"index.js"} \ No newline at end of file +{"version":3,"sources":["core/components/cryptography/index.js"],"names":["bufferToWordArray","b","wa","i","length","CryptoJS","lib","WordArray","create","config","_config","_iv","_allowedKeyEncodings","_allowedKeyLengths","_allowedModes","_defaultOptions","encryptKey","keyEncoding","keyLength","mode","data","hash","HmacSHA256","secretKey","toString","enc","Base64","s","SHA256","Hex","incomingOptions","options","hasOwnProperty","indexOf","toLowerCase","parseInt","key","parse","_decodeKey","Utf8","slice","ECB","CBC","random","customCipherKey","customEncrypt","pnEncrypt","customDecrypt","pnDecrypt","cipherKey","_parseOptions","_getMode","_getPaddedKey","useRandomIVs","waIv","_getRandomIV","waPayload","AES","encrypt","iv","ciphertext","clone","concat","_getIV","encryptedHexArray","base64Encrypted","Buffer","from","payload","plainJSON","decrypt","plaintext","JSON","e"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport Config from '../config';\nimport CryptoJS from './hmac-sha256';\n\nfunction bufferToWordArray(b: Buffer) {\n let wa = [];\n let i: number;\n for (i = 0; i < b.length; i += 1) {\n // eslint-disable-next-line no-bitwise\n wa[(i / 4) | 0] |= b[i] << (24 - 8 * i);\n }\n\n return CryptoJS.lib.WordArray.create(wa, b.length);\n}\n\ntype CryptoConstruct = {\n config: Config,\n};\n\nexport default class {\n _config: Config;\n _iv: string;\n _allowedKeyEncodings: Array;\n _allowedKeyLengths: Array;\n _allowedModes: Array;\n _defaultOptions: Object;\n\n constructor({ config }: CryptoConstruct) {\n this._config = config;\n\n this._iv = '0123456789012345';\n\n this._allowedKeyEncodings = ['hex', 'utf8', 'base64', 'binary'];\n this._allowedKeyLengths = [128, 256];\n this._allowedModes = ['ecb', 'cbc'];\n\n this._defaultOptions = {\n encryptKey: true,\n keyEncoding: 'utf8',\n keyLength: 256,\n mode: 'cbc',\n };\n }\n\n HMACSHA256(data: string): string {\n let hash = CryptoJS.HmacSHA256(data, this._config.secretKey);\n return hash.toString(CryptoJS.enc.Base64);\n }\n\n SHA256(s: string): string {\n return CryptoJS.SHA256(s).toString(CryptoJS.enc.Hex);\n }\n\n _parseOptions(incomingOptions: ?Object): Object {\n // Defaults\n let options = incomingOptions || {};\n if (!options.hasOwnProperty('encryptKey')) options.encryptKey = this._defaultOptions.encryptKey;\n if (!options.hasOwnProperty('keyEncoding')) options.keyEncoding = this._defaultOptions.keyEncoding;\n if (!options.hasOwnProperty('keyLength')) options.keyLength = this._defaultOptions.keyLength;\n if (!options.hasOwnProperty('mode')) options.mode = this._defaultOptions.mode;\n\n // Validation\n if (this._allowedKeyEncodings.indexOf(options.keyEncoding.toLowerCase()) === -1) {\n options.keyEncoding = this._defaultOptions.keyEncoding;\n }\n\n if (this._allowedKeyLengths.indexOf(parseInt(options.keyLength, 10)) === -1) {\n options.keyLength = this._defaultOptions.keyLength;\n }\n\n if (this._allowedModes.indexOf(options.mode.toLowerCase()) === -1) {\n options.mode = this._defaultOptions.mode;\n }\n\n return options;\n }\n\n _decodeKey(key: string, options: Object): string {\n if (options.keyEncoding === 'base64') {\n return CryptoJS.enc.Base64.parse(key);\n } else if (options.keyEncoding === 'hex') {\n return CryptoJS.enc.Hex.parse(key);\n } else {\n return key;\n }\n }\n\n _getPaddedKey(key: string, options: Object): string {\n key = this._decodeKey(key, options);\n if (options.encryptKey) {\n return CryptoJS.enc.Utf8.parse(this.SHA256(key).slice(0, 32));\n } else {\n return key;\n }\n }\n\n _getMode(options: Object): string {\n if (options.mode === 'ecb') {\n return CryptoJS.mode.ECB;\n } else {\n return CryptoJS.mode.CBC;\n }\n }\n\n _getIV(options: Object): string | null {\n return options.mode === 'cbc' ? CryptoJS.enc.Utf8.parse(this._iv) : null;\n }\n\n _getRandomIV(): any {\n return CryptoJS.lib.WordArray.random(16);\n }\n\n encrypt(data: string, customCipherKey: ?string, options: ?Object): Object | string | null {\n if (this._config.customEncrypt) {\n return this._config.customEncrypt(data);\n } else {\n return this.pnEncrypt(data, customCipherKey, options);\n }\n }\n\n decrypt(data: Object, customCipherKey: ?string, options: ?Object): Object | string | null {\n if (this._config.customDecrypt) {\n return this._config.customDecrypt(data);\n } else {\n return this.pnDecrypt(data, customCipherKey, options);\n }\n }\n\n pnEncrypt(data: string, customCipherKey: ?string, options: ?Object): Object | string | null {\n if (!customCipherKey && !this._config.cipherKey) return data;\n options = this._parseOptions(options);\n let mode = this._getMode(options);\n let cipherKey = this._getPaddedKey(customCipherKey || this._config.cipherKey, options);\n\n if (this._config.useRandomIVs) {\n let waIv = this._getRandomIV();\n let waPayload = CryptoJS.AES.encrypt(data, cipherKey, { iv: waIv, mode }).ciphertext;\n\n return waIv.clone().concat(waPayload.clone()).toString(CryptoJS.enc.Base64);\n } else {\n let iv = this._getIV(options);\n let encryptedHexArray = CryptoJS.AES.encrypt(data, cipherKey, { iv, mode }).ciphertext;\n let base64Encrypted = encryptedHexArray.toString(CryptoJS.enc.Base64);\n return base64Encrypted || data;\n }\n }\n\n pnDecrypt(data: string, customCipherKey: ?string, options: ?Object): Object | null {\n if (!customCipherKey && !this._config.cipherKey) return data;\n options = this._parseOptions(options);\n let mode = this._getMode(options);\n let cipherKey = this._getPaddedKey(customCipherKey || this._config.cipherKey, options);\n if (this._config.useRandomIVs) {\n let ciphertext = Buffer.from(data, 'base64');\n\n let iv = bufferToWordArray(ciphertext.slice(0, 16));\n let payload = bufferToWordArray(ciphertext.slice(16));\n\n try {\n let plainJSON = CryptoJS.AES.decrypt({ ciphertext: payload }, cipherKey, { iv, mode }).toString(\n CryptoJS.enc.Utf8\n );\n let plaintext = JSON.parse(plainJSON);\n return plaintext;\n } catch (e) {\n return null;\n }\n } else {\n let iv = this._getIV(options);\n try {\n let ciphertext = CryptoJS.enc.Base64.parse(data);\n let plainJSON = CryptoJS.AES.decrypt({ ciphertext }, cipherKey, { iv, mode }).toString(CryptoJS.enc.Utf8);\n let plaintext = JSON.parse(plainJSON);\n return plaintext;\n } catch (e) {\n return null;\n }\n }\n }\n}\n"],"file":"index.js"} \ No newline at end of file diff --git a/lib/core/components/deduping_manager.js.map b/lib/core/components/deduping_manager.js.map index 0f306259c..1318a87a1 100644 --- a/lib/core/components/deduping_manager.js.map +++ b/lib/core/components/deduping_manager.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/deduping_manager.js"],"names":["hashCode","payload","hash","length","i","character","charCodeAt","config","hashHistory","_config","message","hashedPayload","JSON","stringify","toString","timetoken","publishMetaData","publishTimetoken","includes","getKey","maximumCacheSize","shift","push"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAMA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAACC,OAAD,EAAa;AAC5B,MAAIC,IAAI,GAAG,CAAX;AACA,MAAID,OAAO,CAACE,MAAR,KAAmB,CAAvB,EAA0B,OAAOD,IAAP;;AAC1B,OAAK,IAAIE,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,OAAO,CAACE,MAA5B,EAAoCC,CAAC,IAAI,CAAzC,EAA4C;AAC1C,QAAIC,SAAS,GAAGJ,OAAO,CAACK,UAAR,CAAmBF,CAAnB,CAAhB;AACAF,IAAAA,IAAI,GAAG,CAACA,IAAI,IAAI,CAAT,IAAcA,IAAd,GAAqBG,SAA5B;AACAH,IAAAA,IAAI,GAAGA,IAAI,GAAGA,IAAd;AACD;;AACD,SAAOA,IAAP;AACD,CATD;;;AAeE,0BAAkD;AAAA,QAApCK,MAAoC,QAApCA,MAAoC;AAAA;AAAA;AAAA;AAChD,SAAKC,WAAL,GAAmB,EAAnB;AACA,SAAKC,OAAL,GAAeF,MAAf;AACD;;;;2BAEMG,O,EAA2B;AAChC,UAAMC,aAAa,GAAGX,QAAQ,CAACY,IAAI,CAACC,SAAL,CAAeH,OAAO,CAACT,OAAvB,CAAD,CAAR,CAA0Ca,QAA1C,EAAtB;AACA,UAAMC,SAAS,GAAGL,OAAO,CAACM,eAAR,CAAwBC,gBAA1C;AACA,uBAAUF,SAAV,cAAuBJ,aAAvB;AACD;;;gCAEWD,O,EAA2B;AACrC,aAAO,KAAKF,WAAL,CAAiBU,QAAjB,CAA0B,KAAKC,MAAL,CAAYT,OAAZ,CAA1B,CAAP;AACD;;;6BAEQA,O,EAA2B;AAClC,UAAI,KAAKF,WAAL,CAAiBL,MAAjB,IAA2B,KAAKM,OAAL,CAAaW,gBAA5C,EAA8D;AAC5D,aAAKZ,WAAL,CAAiBa,KAAjB;AACD;;AAED,WAAKb,WAAL,CAAiBc,IAAjB,CAAsB,KAAKH,MAAL,CAAYT,OAAZ,CAAtB;AACD;;;mCAEc;AACb,WAAKF,WAAL,GAAmB,EAAnB;AACD","sourcesContent":["/* @flow */\n\nimport Config from '../components/config';\nimport { SubscribeMessage } from '../flow_interfaces';\n\ntype DedupingManagerConsturct = {\n config: Config,\n};\n\nconst hashCode = (payload) => {\n let hash = 0;\n if (payload.length === 0) return hash;\n for (let i = 0; i < payload.length; i += 1) {\n let character = payload.charCodeAt(i);\n hash = (hash << 5) - hash + character; // eslint-disable-line\n hash = hash & hash; // eslint-disable-line\n }\n return hash;\n};\n\nexport default class {\n _config: Config;\n hashHistory: Array;\n\n constructor({ config }: DedupingManagerConsturct) {\n this.hashHistory = [];\n this._config = config;\n }\n\n getKey(message: SubscribeMessage) {\n const hashedPayload = hashCode(JSON.stringify(message.payload)).toString();\n const timetoken = message.publishMetaData.publishTimetoken;\n return `${timetoken}-${hashedPayload}`;\n }\n\n isDuplicate(message: SubscribeMessage) {\n return this.hashHistory.includes(this.getKey(message));\n }\n\n addEntry(message: SubscribeMessage) {\n if (this.hashHistory.length >= this._config.maximumCacheSize) {\n this.hashHistory.shift();\n }\n\n this.hashHistory.push(this.getKey(message));\n }\n\n clearHistory() {\n this.hashHistory = [];\n }\n}\n"],"file":"deduping_manager.js"} \ No newline at end of file +{"version":3,"sources":["core/components/deduping_manager.js"],"names":["hashCode","payload","hash","length","i","character","charCodeAt","config","hashHistory","_config","message","hashedPayload","JSON","stringify","toString","timetoken","publishMetaData","publishTimetoken","includes","getKey","maximumCacheSize","shift","push"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAMA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,CAACC,OAAD,EAAa;AAC5B,MAAIC,IAAI,GAAG,CAAX;AACA,MAAID,OAAO,CAACE,MAAR,KAAmB,CAAvB,EAA0B,OAAOD,IAAP;;AAC1B,OAAK,IAAIE,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,OAAO,CAACE,MAA5B,EAAoCC,CAAC,IAAI,CAAzC,EAA4C;AAC1C,QAAIC,SAAS,GAAGJ,OAAO,CAACK,UAAR,CAAmBF,CAAnB,CAAhB;AACAF,IAAAA,IAAI,GAAG,CAACA,IAAI,IAAI,CAAT,IAAcA,IAAd,GAAqBG,SAA5B;AACAH,IAAAA,IAAI,GAAGA,IAAI,GAAGA,IAAd;AACD;;AACD,SAAOA,IAAP;AACD,CATD;;;AAeE,0BAAkD;AAAA,QAApCK,MAAoC,QAApCA,MAAoC;AAAA;AAAA;AAAA;AAChD,SAAKC,WAAL,GAAmB,EAAnB;AACA,SAAKC,OAAL,GAAeF,MAAf;AACD;;;;WAED,gBAAOG,OAAP,EAAkC;AAChC,UAAMC,aAAa,GAAGX,QAAQ,CAACY,IAAI,CAACC,SAAL,CAAeH,OAAO,CAACT,OAAvB,CAAD,CAAR,CAA0Ca,QAA1C,EAAtB;AACA,UAAMC,SAAS,GAAGL,OAAO,CAACM,eAAR,CAAwBC,gBAA1C;AACA,uBAAUF,SAAV,cAAuBJ,aAAvB;AACD;;;WAED,qBAAYD,OAAZ,EAAuC;AACrC,aAAO,KAAKF,WAAL,CAAiBU,QAAjB,CAA0B,KAAKC,MAAL,CAAYT,OAAZ,CAA1B,CAAP;AACD;;;WAED,kBAASA,OAAT,EAAoC;AAClC,UAAI,KAAKF,WAAL,CAAiBL,MAAjB,IAA2B,KAAKM,OAAL,CAAaW,gBAA5C,EAA8D;AAC5D,aAAKZ,WAAL,CAAiBa,KAAjB;AACD;;AAED,WAAKb,WAAL,CAAiBc,IAAjB,CAAsB,KAAKH,MAAL,CAAYT,OAAZ,CAAtB;AACD;;;WAED,wBAAe;AACb,WAAKF,WAAL,GAAmB,EAAnB;AACD","sourcesContent":["/* @flow */\n\nimport Config from '../components/config';\nimport { SubscribeMessage } from '../flow_interfaces';\n\ntype DedupingManagerConsturct = {\n config: Config,\n};\n\nconst hashCode = (payload) => {\n let hash = 0;\n if (payload.length === 0) return hash;\n for (let i = 0; i < payload.length; i += 1) {\n let character = payload.charCodeAt(i);\n hash = (hash << 5) - hash + character; // eslint-disable-line\n hash = hash & hash; // eslint-disable-line\n }\n return hash;\n};\n\nexport default class {\n _config: Config;\n hashHistory: Array;\n\n constructor({ config }: DedupingManagerConsturct) {\n this.hashHistory = [];\n this._config = config;\n }\n\n getKey(message: SubscribeMessage) {\n const hashedPayload = hashCode(JSON.stringify(message.payload)).toString();\n const timetoken = message.publishMetaData.publishTimetoken;\n return `${timetoken}-${hashedPayload}`;\n }\n\n isDuplicate(message: SubscribeMessage) {\n return this.hashHistory.includes(this.getKey(message));\n }\n\n addEntry(message: SubscribeMessage) {\n if (this.hashHistory.length >= this._config.maximumCacheSize) {\n this.hashHistory.shift();\n }\n\n this.hashHistory.push(this.getKey(message));\n }\n\n clearHistory() {\n this.hashHistory = [];\n }\n}\n"],"file":"deduping_manager.js"} \ No newline at end of file diff --git a/lib/core/components/endpoint.js b/lib/core/components/endpoint.js index 7ce6eecaf..1b8ec3f86 100644 --- a/lib/core/components/endpoint.js +++ b/lib/core/components/endpoint.js @@ -5,11 +5,11 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau Object.defineProperty(exports, "__esModule", { value: true }); +exports.PubNubError = void 0; exports.createValidationError = createValidationError; +exports["default"] = _default; exports.generatePNSDK = generatePNSDK; exports.signRequest = signRequest; -exports["default"] = _default; -exports.PubNubError = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); @@ -35,13 +35,13 @@ var _operations = _interopRequireDefault(require("../constants/operations")); var _categories = _interopRequireDefault(require("../constants/categories")); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var PubNubError = function (_Error) { (0, _inherits2["default"])(PubNubError, _Error); @@ -88,16 +88,6 @@ function decideURL(endpoint, modules, incomingParams) { } } -function getAuthToken(endpoint, modules, incomingParams) { - var token; - - if (endpoint.getAuthToken) { - token = endpoint.getAuthToken(modules, incomingParams); - } - - return token; -} - function generatePNSDK(config) { if (config.sdkName) { return config.sdkName; @@ -178,7 +168,8 @@ function signRequest(modules, url, outgoingParams, incomingParams, endpoint) { function _default(modules, endpoint) { var networking = modules.networking, config = modules.config, - telemetryManager = modules.telemetryManager; + telemetryManager = modules.telemetryManager, + tokenManager = modules.tokenManager; var requestId = _uuid["default"].createUUID(); @@ -238,8 +229,7 @@ function _default(modules, endpoint) { } if (endpoint.isAuthSupported()) { - var token = getAuthToken(endpoint, modules, incomingParams); - var tokenOrKey = token || config.getAuthKey(); + var tokenOrKey = tokenManager.getToken() || config.getAuthKey(); if (tokenOrKey) { outgoingParams.auth = tokenOrKey; diff --git a/lib/core/components/endpoint.js.map b/lib/core/components/endpoint.js.map index 06b037596..437f56f16 100644 --- a/lib/core/components/endpoint.js.map +++ b/lib/core/components/endpoint.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/endpoint.js"],"names":["PubNubError","message","status","name","constructor","Error","createError","errorPayload","type","error","createValidationError","decideURL","endpoint","modules","incomingParams","usePost","postURL","usePatch","patchURL","useGetFile","getFileURL","getURL","getAuthToken","token","generatePNSDK","config","sdkName","base","sdkFamily","partnerId","getVersion","pnsdkSuffix","_getPnsdkSuffix","length","getHttpMethod","useDelete","signRequest","url","outgoingParams","crypto","httpMethod","timestamp","Math","floor","Date","getTime","getOperation","signInput","publishKey","utils","signPamFromParams","payload","postPayload","JSON","stringify","patchPayload","signature","HMACSHA256","replace","networking","telemetryManager","requestId","uuidGenerator","createUUID","callback","promiseComponent","operationConstants","PNTimeOperation","PNChannelGroupsOperation","Promise","createPromise","validationResult","validateParams","reject","promise","prepareParams","callInstance","networkingParams","operation","timeout","getRequestTimeout","headers","getRequestHeaders","ignoreBody","forceBuffered","uuid","UUID","pnsdk","telemetryLatencies","operationsLatencyForRequest","Object","keys","useInstanceId","instanceid","instanceId","useRequestId","requestid","isAuthSupported","tokenOrKey","getAuthKey","auth","secretKey","onResponse","handleError","stopLatencyMeasure","responseP","handleResponse","then","resolve","result","fulfill","e","errorData","PNSubscribeOperation","statusCode","category","categoryConstants","PNUnknownCategory","startLatencyMeasure","POST","PATCH","DELETE","GETFILE","GET"],"mappings":"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","sourcesContent":["import uuidGenerator from './uuid';\nimport { StatusAnnouncement } from '../flow_interfaces';\nimport utils from '../utils';\nimport Config from './config';\nimport operationConstants from '../constants/operations';\nimport categoryConstants from '../constants/categories';\n\nexport class PubNubError extends Error {\n constructor(message, status) {\n super(message);\n this.name = this.constructor.name;\n this.status = status;\n this.message = message;\n }\n}\n\nfunction createError(errorPayload: Object, type: string): Object {\n errorPayload.type = type;\n errorPayload.error = true;\n return errorPayload;\n}\n\nexport function createValidationError(message: string): Object {\n return createError({ message }, 'validationError');\n}\n\nfunction decideURL(endpoint, modules, incomingParams) {\n if (endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n return endpoint.postURL(modules, incomingParams);\n } else if (endpoint.usePatch && endpoint.usePatch(modules, incomingParams)) {\n return endpoint.patchURL(modules, incomingParams);\n } else if (endpoint.useGetFile && endpoint.useGetFile(modules, incomingParams)) {\n return endpoint.getFileURL(modules, incomingParams);\n } else {\n return endpoint.getURL(modules, incomingParams);\n }\n}\n\nfunction getAuthToken(endpoint, modules, incomingParams) {\n let token;\n\n if (endpoint.getAuthToken) {\n token = endpoint.getAuthToken(modules, incomingParams);\n }\n\n return token;\n}\n\nexport function generatePNSDK(config: Config): string {\n if (config.sdkName) {\n return config.sdkName;\n }\n\n let base = `PubNub-JS-${config.sdkFamily}`;\n\n if (config.partnerId) {\n base += `-${config.partnerId}`;\n }\n\n base += `/${config.getVersion()}`;\n\n let pnsdkSuffix = config._getPnsdkSuffix(' ');\n\n if (pnsdkSuffix.length > 0) {\n base += pnsdkSuffix;\n }\n\n return base;\n}\n\nfunction getHttpMethod(modules, endpoint, incomingParams) {\n if (endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n return 'POST';\n } else if (endpoint.usePatch && endpoint.usePatch(modules, incomingParams)) {\n return 'PATCH';\n } else if (endpoint.useDelete && endpoint.useDelete(modules, incomingParams)) {\n return 'DELETE';\n } else if (endpoint.useGetFile && endpoint.useGetFile(modules, incomingParams)) {\n return 'GETFILE';\n } else {\n return 'GET';\n }\n}\n\nexport function signRequest(modules, url, outgoingParams, incomingParams, endpoint) {\n let { config, crypto } = modules;\n\n let httpMethod = getHttpMethod(modules, endpoint, incomingParams);\n\n outgoingParams.timestamp = Math.floor(new Date().getTime() / 1000);\n\n // This is because of a server-side bug, old publish using post should be deprecated\n if (endpoint.getOperation() === 'PNPublishOperation' && endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n httpMethod = 'GET';\n }\n\n if (httpMethod === 'GETFILE') {\n httpMethod = 'GET';\n }\n\n let signInput = `${httpMethod}\\n${config.publishKey}\\n${url}\\n${utils.signPamFromParams(outgoingParams)}\\n`;\n\n if (httpMethod === 'POST') {\n let payload = endpoint.postPayload(modules, incomingParams);\n if (typeof payload === 'string') {\n signInput += payload;\n } else {\n signInput += JSON.stringify(payload);\n }\n } else if (httpMethod === 'PATCH') {\n let payload = endpoint.patchPayload(modules, incomingParams);\n if (typeof payload === 'string') {\n signInput += payload;\n } else {\n signInput += JSON.stringify(payload);\n }\n }\n\n let signature = `v2.${crypto.HMACSHA256(signInput)}`;\n signature = signature.replace(/\\+/g, '-');\n signature = signature.replace(/\\//g, '_');\n signature = signature.replace(/=+$/, '');\n\n outgoingParams.signature = signature;\n}\n\nexport default function (modules, endpoint, ...args) {\n let { networking, config, telemetryManager } = modules;\n const requestId = uuidGenerator.createUUID();\n let callback = null;\n let promiseComponent = null;\n let incomingParams = {};\n\n if (\n endpoint.getOperation() === operationConstants.PNTimeOperation ||\n endpoint.getOperation() === operationConstants.PNChannelGroupsOperation\n ) {\n callback = args[0];\n } else {\n incomingParams = args[0];\n callback = args[1];\n }\n\n // bridge in Promise support.\n if (typeof Promise !== 'undefined' && !callback) {\n promiseComponent = utils.createPromise();\n }\n\n let validationResult = endpoint.validateParams(modules, incomingParams);\n\n if (validationResult) {\n if (callback) {\n return callback(createValidationError(validationResult));\n } else if (promiseComponent) {\n promiseComponent.reject(\n new PubNubError('Validation failed, check status for details', createValidationError(validationResult))\n );\n return promiseComponent.promise;\n }\n return;\n }\n\n let outgoingParams = endpoint.prepareParams(modules, incomingParams);\n let url = decideURL(endpoint, modules, incomingParams);\n let callInstance;\n let networkingParams = {\n url,\n operation: endpoint.getOperation(),\n timeout: endpoint.getRequestTimeout(modules),\n headers: endpoint.getRequestHeaders ? endpoint.getRequestHeaders() : {},\n ignoreBody: typeof endpoint.ignoreBody === 'function' ? endpoint.ignoreBody(modules) : false,\n forceBuffered:\n typeof endpoint.forceBuffered === 'function' ? endpoint.forceBuffered(modules, incomingParams) : null,\n };\n\n outgoingParams.uuid = config.UUID;\n outgoingParams.pnsdk = generatePNSDK(config);\n\n // Add telemetry information (if there is any available).\n const telemetryLatencies = telemetryManager.operationsLatencyForRequest();\n if (Object.keys(telemetryLatencies).length) {\n outgoingParams = { ...outgoingParams, ...telemetryLatencies };\n }\n\n if (config.useInstanceId) {\n outgoingParams.instanceid = config.instanceId;\n }\n\n if (config.useRequestId) {\n outgoingParams.requestid = requestId;\n }\n\n if (endpoint.isAuthSupported()) {\n let token = getAuthToken(endpoint, modules, incomingParams);\n let tokenOrKey = token || config.getAuthKey();\n\n if (tokenOrKey) {\n outgoingParams.auth = tokenOrKey;\n }\n }\n\n if (config.secretKey) {\n signRequest(modules, url, outgoingParams, incomingParams, endpoint);\n }\n\n let onResponse = (status: StatusAnnouncement, payload: Object) => {\n if (status.error) {\n if (endpoint.handleError) {\n endpoint.handleError(modules, incomingParams, status);\n }\n if (callback) {\n callback(status);\n } else if (promiseComponent) {\n promiseComponent.reject(new PubNubError('PubNub call failed, check status for details', status));\n }\n return;\n }\n\n // Stop endpoint latency tracking.\n telemetryManager.stopLatencyMeasure(endpoint.getOperation(), requestId);\n\n let responseP = endpoint.handleResponse(modules, payload, incomingParams);\n\n if (typeof responseP?.then !== 'function') {\n responseP = Promise.resolve(responseP);\n }\n\n responseP\n .then((result) => {\n if (callback) {\n callback(status, result);\n } else if (promiseComponent) {\n promiseComponent.fulfill(result);\n }\n })\n .catch((e) => {\n if (callback) {\n let errorData = e;\n\n if (endpoint.getOperation() === operationConstants.PNSubscribeOperation) {\n errorData = {\n statusCode: 400,\n error: true,\n operation: endpoint.getOperation(),\n errorData: e,\n category: categoryConstants.PNUnknownCategory\n };\n }\n\n callback(errorData, null);\n } else if (promiseComponent) {\n promiseComponent.reject(new PubNubError('PubNub call failed, check status for details', e));\n }\n });\n };\n\n // Start endpoint latency tracking.\n telemetryManager.startLatencyMeasure(endpoint.getOperation(), requestId);\n\n if (getHttpMethod(modules, endpoint, incomingParams) === 'POST') {\n let payload = endpoint.postPayload(modules, incomingParams);\n callInstance = networking.POST(outgoingParams, payload, networkingParams, onResponse);\n } else if (getHttpMethod(modules, endpoint, incomingParams) === 'PATCH') {\n let payload = endpoint.patchPayload(modules, incomingParams);\n callInstance = networking.PATCH(outgoingParams, payload, networkingParams, onResponse);\n } else if (getHttpMethod(modules, endpoint, incomingParams) === 'DELETE') {\n callInstance = networking.DELETE(outgoingParams, networkingParams, onResponse);\n } else if (getHttpMethod(modules, endpoint, incomingParams) === 'GETFILE') {\n callInstance = networking.GETFILE(outgoingParams, networkingParams, onResponse);\n } else {\n callInstance = networking.GET(outgoingParams, networkingParams, onResponse);\n }\n\n if (endpoint.getOperation() === operationConstants.PNSubscribeOperation) {\n return callInstance;\n }\n\n if (promiseComponent) {\n return promiseComponent.promise;\n }\n}\n"],"file":"endpoint.js"} \ No newline at end of file +{"version":3,"sources":["core/components/endpoint.js"],"names":["PubNubError","message","status","name","constructor","Error","createError","errorPayload","type","error","createValidationError","decideURL","endpoint","modules","incomingParams","usePost","postURL","usePatch","patchURL","useGetFile","getFileURL","getURL","generatePNSDK","config","sdkName","base","sdkFamily","partnerId","getVersion","pnsdkSuffix","_getPnsdkSuffix","length","getHttpMethod","useDelete","signRequest","url","outgoingParams","crypto","httpMethod","timestamp","Math","floor","Date","getTime","getOperation","signInput","publishKey","utils","signPamFromParams","payload","postPayload","JSON","stringify","patchPayload","signature","HMACSHA256","replace","networking","telemetryManager","tokenManager","requestId","uuidGenerator","createUUID","callback","promiseComponent","operationConstants","PNTimeOperation","PNChannelGroupsOperation","Promise","createPromise","validationResult","validateParams","reject","promise","prepareParams","callInstance","networkingParams","operation","timeout","getRequestTimeout","headers","getRequestHeaders","ignoreBody","forceBuffered","uuid","UUID","pnsdk","telemetryLatencies","operationsLatencyForRequest","Object","keys","useInstanceId","instanceid","instanceId","useRequestId","requestid","isAuthSupported","tokenOrKey","getToken","getAuthKey","auth","secretKey","onResponse","handleError","stopLatencyMeasure","responseP","handleResponse","then","resolve","result","fulfill","e","errorData","PNSubscribeOperation","statusCode","category","categoryConstants","PNUnknownCategory","startLatencyMeasure","POST","PATCH","DELETE","GETFILE","GET"],"mappings":"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","sourcesContent":["import uuidGenerator from './uuid';\nimport { StatusAnnouncement } from '../flow_interfaces';\nimport utils from '../utils';\nimport Config from './config';\nimport operationConstants from '../constants/operations';\nimport categoryConstants from '../constants/categories';\n\nexport class PubNubError extends Error {\n constructor(message, status) {\n super(message);\n this.name = this.constructor.name;\n this.status = status;\n this.message = message;\n }\n}\n\nfunction createError(errorPayload: Object, type: string): Object {\n errorPayload.type = type;\n errorPayload.error = true;\n return errorPayload;\n}\n\nexport function createValidationError(message: string): Object {\n return createError({ message }, 'validationError');\n}\n\nfunction decideURL(endpoint, modules, incomingParams) {\n if (endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n return endpoint.postURL(modules, incomingParams);\n } else if (endpoint.usePatch && endpoint.usePatch(modules, incomingParams)) {\n return endpoint.patchURL(modules, incomingParams);\n } else if (endpoint.useGetFile && endpoint.useGetFile(modules, incomingParams)) {\n return endpoint.getFileURL(modules, incomingParams);\n } else {\n return endpoint.getURL(modules, incomingParams);\n }\n}\n\nexport function generatePNSDK(config: Config): string {\n if (config.sdkName) {\n return config.sdkName;\n }\n\n let base = `PubNub-JS-${config.sdkFamily}`;\n\n if (config.partnerId) {\n base += `-${config.partnerId}`;\n }\n\n base += `/${config.getVersion()}`;\n\n let pnsdkSuffix = config._getPnsdkSuffix(' ');\n\n if (pnsdkSuffix.length > 0) {\n base += pnsdkSuffix;\n }\n\n return base;\n}\n\nfunction getHttpMethod(modules, endpoint, incomingParams) {\n if (endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n return 'POST';\n } else if (endpoint.usePatch && endpoint.usePatch(modules, incomingParams)) {\n return 'PATCH';\n } else if (endpoint.useDelete && endpoint.useDelete(modules, incomingParams)) {\n return 'DELETE';\n } else if (endpoint.useGetFile && endpoint.useGetFile(modules, incomingParams)) {\n return 'GETFILE';\n } else {\n return 'GET';\n }\n}\n\nexport function signRequest(modules, url, outgoingParams, incomingParams, endpoint) {\n let { config, crypto } = modules;\n\n let httpMethod = getHttpMethod(modules, endpoint, incomingParams);\n\n outgoingParams.timestamp = Math.floor(new Date().getTime() / 1000);\n\n // This is because of a server-side bug, old publish using post should be deprecated\n if (endpoint.getOperation() === 'PNPublishOperation' && endpoint.usePost && endpoint.usePost(modules, incomingParams)) {\n httpMethod = 'GET';\n }\n\n if (httpMethod === 'GETFILE') {\n httpMethod = 'GET';\n }\n\n let signInput = `${httpMethod}\\n${config.publishKey}\\n${url}\\n${utils.signPamFromParams(outgoingParams)}\\n`;\n\n if (httpMethod === 'POST') {\n let payload = endpoint.postPayload(modules, incomingParams);\n if (typeof payload === 'string') {\n signInput += payload;\n } else {\n signInput += JSON.stringify(payload);\n }\n } else if (httpMethod === 'PATCH') {\n let payload = endpoint.patchPayload(modules, incomingParams);\n if (typeof payload === 'string') {\n signInput += payload;\n } else {\n signInput += JSON.stringify(payload);\n }\n }\n\n let signature = `v2.${crypto.HMACSHA256(signInput)}`;\n signature = signature.replace(/\\+/g, '-');\n signature = signature.replace(/\\//g, '_');\n signature = signature.replace(/=+$/, '');\n\n outgoingParams.signature = signature;\n}\n\nexport default function (modules, endpoint, ...args) {\n let { networking, config, telemetryManager, tokenManager } = modules;\n const requestId = uuidGenerator.createUUID();\n let callback = null;\n let promiseComponent = null;\n let incomingParams = {};\n\n if (\n endpoint.getOperation() === operationConstants.PNTimeOperation ||\n endpoint.getOperation() === operationConstants.PNChannelGroupsOperation\n ) {\n callback = args[0];\n } else {\n incomingParams = args[0];\n callback = args[1];\n }\n\n // bridge in Promise support.\n if (typeof Promise !== 'undefined' && !callback) {\n promiseComponent = utils.createPromise();\n }\n\n let validationResult = endpoint.validateParams(modules, incomingParams);\n\n if (validationResult) {\n if (callback) {\n return callback(createValidationError(validationResult));\n } else if (promiseComponent) {\n promiseComponent.reject(\n new PubNubError('Validation failed, check status for details', createValidationError(validationResult))\n );\n return promiseComponent.promise;\n }\n return;\n }\n\n let outgoingParams = endpoint.prepareParams(modules, incomingParams);\n let url = decideURL(endpoint, modules, incomingParams);\n let callInstance;\n let networkingParams = {\n url,\n operation: endpoint.getOperation(),\n timeout: endpoint.getRequestTimeout(modules),\n headers: endpoint.getRequestHeaders ? endpoint.getRequestHeaders() : {},\n ignoreBody: typeof endpoint.ignoreBody === 'function' ? endpoint.ignoreBody(modules) : false,\n forceBuffered:\n typeof endpoint.forceBuffered === 'function' ? endpoint.forceBuffered(modules, incomingParams) : null,\n };\n\n outgoingParams.uuid = config.UUID;\n outgoingParams.pnsdk = generatePNSDK(config);\n\n // Add telemetry information (if there is any available).\n const telemetryLatencies = telemetryManager.operationsLatencyForRequest();\n if (Object.keys(telemetryLatencies).length) {\n outgoingParams = { ...outgoingParams, ...telemetryLatencies };\n }\n\n if (config.useInstanceId) {\n outgoingParams.instanceid = config.instanceId;\n }\n\n if (config.useRequestId) {\n outgoingParams.requestid = requestId;\n }\n\n if (endpoint.isAuthSupported()) {\n let tokenOrKey = tokenManager.getToken() || config.getAuthKey();\n\n if (tokenOrKey) {\n outgoingParams.auth = tokenOrKey;\n }\n }\n\n if (config.secretKey) {\n signRequest(modules, url, outgoingParams, incomingParams, endpoint);\n }\n\n let onResponse = (status: StatusAnnouncement, payload: Object) => {\n if (status.error) {\n if (endpoint.handleError) {\n endpoint.handleError(modules, incomingParams, status);\n }\n if (callback) {\n callback(status);\n } else if (promiseComponent) {\n promiseComponent.reject(new PubNubError('PubNub call failed, check status for details', status));\n }\n return;\n }\n\n // Stop endpoint latency tracking.\n telemetryManager.stopLatencyMeasure(endpoint.getOperation(), requestId);\n\n let responseP = endpoint.handleResponse(modules, payload, incomingParams);\n\n if (typeof responseP?.then !== 'function') {\n responseP = Promise.resolve(responseP);\n }\n\n responseP\n .then((result) => {\n if (callback) {\n callback(status, result);\n } else if (promiseComponent) {\n promiseComponent.fulfill(result);\n }\n })\n .catch((e) => {\n if (callback) {\n let errorData = e;\n\n if (endpoint.getOperation() === operationConstants.PNSubscribeOperation) {\n errorData = {\n statusCode: 400,\n error: true,\n operation: endpoint.getOperation(),\n errorData: e,\n category: categoryConstants.PNUnknownCategory\n };\n }\n\n callback(errorData, null);\n } else if (promiseComponent) {\n promiseComponent.reject(new PubNubError('PubNub call failed, check status for details', e));\n }\n });\n };\n\n // Start endpoint latency tracking.\n telemetryManager.startLatencyMeasure(endpoint.getOperation(), requestId);\n\n if (getHttpMethod(modules, endpoint, incomingParams) === 'POST') {\n let payload = endpoint.postPayload(modules, incomingParams);\n callInstance = networking.POST(outgoingParams, payload, networkingParams, onResponse);\n } else if (getHttpMethod(modules, endpoint, incomingParams) === 'PATCH') {\n let payload = endpoint.patchPayload(modules, incomingParams);\n callInstance = networking.PATCH(outgoingParams, payload, networkingParams, onResponse);\n } else if (getHttpMethod(modules, endpoint, incomingParams) === 'DELETE') {\n callInstance = networking.DELETE(outgoingParams, networkingParams, onResponse);\n } else if (getHttpMethod(modules, endpoint, incomingParams) === 'GETFILE') {\n callInstance = networking.GETFILE(outgoingParams, networkingParams, onResponse);\n } else {\n callInstance = networking.GET(outgoingParams, networkingParams, onResponse);\n }\n\n if (endpoint.getOperation() === operationConstants.PNSubscribeOperation) {\n return callInstance;\n }\n\n if (promiseComponent) {\n return promiseComponent.promise;\n }\n}\n"],"file":"endpoint.js"} \ No newline at end of file diff --git a/lib/core/components/listener_manager.js.map b/lib/core/components/listener_manager.js.map index 4c19c5c8c..df2060796 100644 --- a/lib/core/components/listener_manager.js.map +++ b/lib/core/components/listener_manager.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/listener_manager.js"],"names":["_listeners","newListeners","push","deprecatedListener","forEach","listener","announce","presence","status","message","signal","messageAction","file","objects","user","space","membership","networkStatus","category","categoryConstants","PNNetworkUpCategory","announceStatus","PNNetworkDownCategory"],"mappings":"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","sourcesContent":["/* @flow */\nimport {\n MessageAnnouncement,\n StatusAnnouncement,\n SignalAnnouncement,\n MessageActionAnnouncement,\n ObjectAnnouncement,\n CallbackStruct,\n PresenceAnnouncement,\n FileAnnouncement\n} from '../flow_interfaces';\nimport categoryConstants from '../constants/categories';\n\nexport default class {\n _listeners: Array;\n\n constructor() {\n this._listeners = [];\n }\n\n addListener(newListeners: CallbackStruct) {\n this._listeners.push(newListeners);\n }\n\n removeListener(deprecatedListener: CallbackStruct) {\n let newListeners = [];\n\n this._listeners.forEach((listener) => {\n if (listener !== deprecatedListener) newListeners.push(listener);\n });\n\n this._listeners = newListeners;\n }\n\n removeAllListeners() {\n this._listeners = [];\n }\n\n announcePresence(announce: PresenceAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.presence) listener.presence(announce);\n });\n }\n\n announceStatus(announce: StatusAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.status) listener.status(announce);\n });\n }\n\n announceMessage(announce: MessageAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.message) listener.message(announce);\n });\n }\n\n announceSignal(announce: SignalAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.signal) listener.signal(announce);\n });\n }\n\n announceMessageAction(announce: MessageActionAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.messageAction) listener.messageAction(announce);\n });\n }\n\n announceFile(announce: FileAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.file) listener.file(announce);\n });\n }\n\n announceObjects(announce: ObjectAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.objects) listener.objects(announce);\n });\n }\n\n announceUser(announce: ObjectAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.user) listener.user(announce);\n });\n }\n\n announceSpace(announce: ObjectAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.space) listener.space(announce);\n });\n }\n\n announceMembership(announce: ObjectAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.membership) listener.membership(announce);\n });\n }\n\n announceNetworkUp() {\n let networkStatus: StatusAnnouncement = {};\n networkStatus.category = categoryConstants.PNNetworkUpCategory;\n this.announceStatus(networkStatus);\n }\n\n announceNetworkDown() {\n let networkStatus: StatusAnnouncement = {};\n networkStatus.category = categoryConstants.PNNetworkDownCategory;\n this.announceStatus(networkStatus);\n }\n}\n"],"file":"listener_manager.js"} \ No newline at end of file +{"version":3,"sources":["core/components/listener_manager.js"],"names":["_listeners","newListeners","push","deprecatedListener","forEach","listener","announce","presence","status","message","signal","messageAction","file","objects","user","space","membership","networkStatus","category","categoryConstants","PNNetworkUpCategory","announceStatus","PNNetworkDownCategory"],"mappings":"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","sourcesContent":["/* @flow */\nimport {\n MessageAnnouncement,\n StatusAnnouncement,\n SignalAnnouncement,\n MessageActionAnnouncement,\n ObjectAnnouncement,\n CallbackStruct,\n PresenceAnnouncement,\n FileAnnouncement\n} from '../flow_interfaces';\nimport categoryConstants from '../constants/categories';\n\nexport default class {\n _listeners: Array;\n\n constructor() {\n this._listeners = [];\n }\n\n addListener(newListeners: CallbackStruct) {\n this._listeners.push(newListeners);\n }\n\n removeListener(deprecatedListener: CallbackStruct) {\n let newListeners = [];\n\n this._listeners.forEach((listener) => {\n if (listener !== deprecatedListener) newListeners.push(listener);\n });\n\n this._listeners = newListeners;\n }\n\n removeAllListeners() {\n this._listeners = [];\n }\n\n announcePresence(announce: PresenceAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.presence) listener.presence(announce);\n });\n }\n\n announceStatus(announce: StatusAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.status) listener.status(announce);\n });\n }\n\n announceMessage(announce: MessageAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.message) listener.message(announce);\n });\n }\n\n announceSignal(announce: SignalAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.signal) listener.signal(announce);\n });\n }\n\n announceMessageAction(announce: MessageActionAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.messageAction) listener.messageAction(announce);\n });\n }\n\n announceFile(announce: FileAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.file) listener.file(announce);\n });\n }\n\n announceObjects(announce: ObjectAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.objects) listener.objects(announce);\n });\n }\n\n announceUser(announce: ObjectAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.user) listener.user(announce);\n });\n }\n\n announceSpace(announce: ObjectAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.space) listener.space(announce);\n });\n }\n\n announceMembership(announce: ObjectAnnouncement) {\n this._listeners.forEach((listener) => {\n if (listener.membership) listener.membership(announce);\n });\n }\n\n announceNetworkUp() {\n let networkStatus: StatusAnnouncement = {};\n networkStatus.category = categoryConstants.PNNetworkUpCategory;\n this.announceStatus(networkStatus);\n }\n\n announceNetworkDown() {\n let networkStatus: StatusAnnouncement = {};\n networkStatus.category = categoryConstants.PNNetworkDownCategory;\n this.announceStatus(networkStatus);\n }\n}\n"],"file":"listener_manager.js"} \ No newline at end of file diff --git a/lib/core/components/push_payload.js b/lib/core/components/push_payload.js index cb12c9f58..125353af9 100644 --- a/lib/core/components/push_payload.js +++ b/lib/core/components/push_payload.js @@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau Object.defineProperty(exports, "__esModule", { value: true }); -exports["default"] = exports.FCMNotificationPayload = exports.MPNSNotificationPayload = exports.APNSNotificationPayload = void 0; +exports["default"] = exports.MPNSNotificationPayload = exports.FCMNotificationPayload = exports.APNSNotificationPayload = void 0; var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); @@ -25,15 +25,33 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de var _flow_interfaces = require("../flow_interfaces"); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +var _excluded = ["notification", "data"]; + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var BaseNotificationPayload = function () { + function BaseNotificationPayload(payload, title, body) { + (0, _classCallCheck2["default"])(this, BaseNotificationPayload); + (0, _defineProperty2["default"])(this, "_subtitle", void 0); + (0, _defineProperty2["default"])(this, "_payload", void 0); + (0, _defineProperty2["default"])(this, "_badge", void 0); + (0, _defineProperty2["default"])(this, "_sound", void 0); + (0, _defineProperty2["default"])(this, "_title", void 0); + (0, _defineProperty2["default"])(this, "_body", void 0); + this._payload = payload; + + this._setDefaultPayloadStructure(); + + this.title = title; + this.body = body; + } + (0, _createClass2["default"])(BaseNotificationPayload, [{ key: "payload", get: function get() { @@ -64,25 +82,7 @@ var BaseNotificationPayload = function () { set: function set(value) { this._sound = value; } - }]); - - function BaseNotificationPayload(payload, title, body) { - (0, _classCallCheck2["default"])(this, BaseNotificationPayload); - (0, _defineProperty2["default"])(this, "_subtitle", void 0); - (0, _defineProperty2["default"])(this, "_payload", void 0); - (0, _defineProperty2["default"])(this, "_badge", void 0); - (0, _defineProperty2["default"])(this, "_sound", void 0); - (0, _defineProperty2["default"])(this, "_title", void 0); - (0, _defineProperty2["default"])(this, "_body", void 0); - this._payload = payload; - - this._setDefaultPayloadStructure(); - - this.title = title; - this.body = body; - } - - (0, _createClass2["default"])(BaseNotificationPayload, [{ + }, { key: "_setDefaultPayloadStructure", value: function _setDefaultPayloadStructure() {} }, { @@ -116,6 +116,72 @@ var APNSNotificationPayload = function (_BaseNotificationPayl) { } (0, _createClass2["default"])(APNSNotificationPayload, [{ + key: "configurations", + set: function set(value) { + if (!value || !value.length) return; + this._configurations = value; + } + }, { + key: "notification", + get: function get() { + return this._payload.aps; + } + }, { + key: "title", + get: function get() { + return this._title; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.title = value; + this._title = value; + } + }, { + key: "subtitle", + get: function get() { + return this._subtitle; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.subtitle = value; + this._subtitle = value; + } + }, { + key: "body", + get: function get() { + return this._body; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.alert.body = value; + this._body = value; + } + }, { + key: "badge", + get: function get() { + return this._badge; + }, + set: function set(value) { + if (value === undefined || value === null) return; + this._payload.aps.badge = value; + this._badge = value; + } + }, { + key: "sound", + get: function get() { + return this._sound; + }, + set: function set(value) { + if (!value || !value.length) return; + this._payload.aps.sound = value; + this._sound = value; + } + }, { + key: "silent", + set: function set(value) { + this._isSilent = value; + } + }, { key: "_setDefaultPayloadStructure", value: function _setDefaultPayloadStructure() { this._payload.aps = { @@ -219,72 +285,6 @@ var APNSNotificationPayload = function (_BaseNotificationPayl) { return objectifiedTarget; } - }, { - key: "configurations", - set: function set(value) { - if (!value || !value.length) return; - this._configurations = value; - } - }, { - key: "notification", - get: function get() { - return this._payload.aps; - } - }, { - key: "title", - get: function get() { - return this._title; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.title = value; - this._title = value; - } - }, { - key: "subtitle", - get: function get() { - return this._subtitle; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.subtitle = value; - this._subtitle = value; - } - }, { - key: "body", - get: function get() { - return this._body; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.alert.body = value; - this._body = value; - } - }, { - key: "badge", - get: function get() { - return this._badge; - }, - set: function set(value) { - if (value === undefined || value === null) return; - this._payload.aps.badge = value; - this._badge = value; - } - }, { - key: "sound", - get: function get() { - return this._sound; - }, - set: function set(value) { - if (!value || !value.length) return; - this._payload.aps.sound = value; - this._sound = value; - } - }, { - key: "silent", - set: function set(value) { - this._isSilent = value; - } }]); return APNSNotificationPayload; }(BaseNotificationPayload); @@ -314,11 +314,6 @@ var MPNSNotificationPayload = function (_BaseNotificationPayl2) { } (0, _createClass2["default"])(MPNSNotificationPayload, [{ - key: "toObject", - value: function toObject() { - return Object.keys(this._payload).length ? _objectSpread({}, this._payload) : null; - } - }, { key: "backContent", get: function get() { return this._backContent; @@ -392,6 +387,11 @@ var MPNSNotificationPayload = function (_BaseNotificationPayl2) { set: function set(value) { this.count = value; } + }, { + key: "toObject", + value: function toObject() { + return Object.keys(this._payload).length ? _objectSpread({}, this._payload) : null; + } }]); return MPNSNotificationPayload; }(BaseNotificationPayload); @@ -420,44 +420,6 @@ var FCMNotificationPayload = function (_BaseNotificationPayl3) { } (0, _createClass2["default"])(FCMNotificationPayload, [{ - key: "_setDefaultPayloadStructure", - value: function _setDefaultPayloadStructure() { - this._payload.notification = {}; - this._payload.data = {}; - } - }, { - key: "toObject", - value: function toObject() { - var data = _objectSpread({}, this._payload.data); - - var notification = null; - var payload = {}; - - if (Object.keys(this._payload).length > 2) { - var _this$_payload = this._payload, - initialNotification = _this$_payload.notification, - initialData = _this$_payload.data, - additionalData = (0, _objectWithoutProperties2["default"])(_this$_payload, ["notification", "data"]); - data = _objectSpread(_objectSpread({}, data), additionalData); - } - - if (this._isSilent) { - data.notification = this._payload.notification; - } else { - notification = this._payload.notification; - } - - if (Object.keys(data).length) { - payload.data = data; - } - - if (notification && Object.keys(notification).length) { - payload.notification = notification; - } - - return Object.keys(payload).length ? payload : null; - } - }, { key: "notification", get: function get() { return this._payload.notification; @@ -522,6 +484,44 @@ var FCMNotificationPayload = function (_BaseNotificationPayl3) { set: function set(value) { this._isSilent = value; } + }, { + key: "_setDefaultPayloadStructure", + value: function _setDefaultPayloadStructure() { + this._payload.notification = {}; + this._payload.data = {}; + } + }, { + key: "toObject", + value: function toObject() { + var data = _objectSpread({}, this._payload.data); + + var notification = null; + var payload = {}; + + if (Object.keys(this._payload).length > 2) { + var _this$_payload = this._payload, + initialNotification = _this$_payload.notification, + initialData = _this$_payload.data, + additionalData = (0, _objectWithoutProperties2["default"])(_this$_payload, _excluded); + data = _objectSpread(_objectSpread({}, data), additionalData); + } + + if (this._isSilent) { + data.notification = this._payload.notification; + } else { + notification = this._payload.notification; + } + + if (Object.keys(data).length) { + payload.data = data; + } + + if (notification && Object.keys(notification).length) { + payload.notification = notification; + } + + return Object.keys(payload).length ? payload : null; + } }]); return FCMNotificationPayload; }(BaseNotificationPayload); @@ -529,6 +529,30 @@ var FCMNotificationPayload = function (_BaseNotificationPayl3) { exports.FCMNotificationPayload = FCMNotificationPayload; var NotificationsPayload = function () { + function NotificationsPayload(title, body) { + (0, _classCallCheck2["default"])(this, NotificationsPayload); + (0, _defineProperty2["default"])(this, "_payload", void 0); + (0, _defineProperty2["default"])(this, "_debugging", void 0); + (0, _defineProperty2["default"])(this, "_subtitle", void 0); + (0, _defineProperty2["default"])(this, "_badge", void 0); + (0, _defineProperty2["default"])(this, "_sound", void 0); + (0, _defineProperty2["default"])(this, "_title", void 0); + (0, _defineProperty2["default"])(this, "_body", void 0); + (0, _defineProperty2["default"])(this, "apns", void 0); + (0, _defineProperty2["default"])(this, "mpns", void 0); + (0, _defineProperty2["default"])(this, "fcm", void 0); + this._payload = { + apns: {}, + mpns: {}, + fcm: {} + }; + this._title = title; + this._body = body; + this.apns = new APNSNotificationPayload(this._payload.apns, title, body); + this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body); + this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body); + } + (0, _createClass2["default"])(NotificationsPayload, [{ key: "debugging", set: function set(value) { @@ -577,33 +601,7 @@ var NotificationsPayload = function () { this.mpns.sound = value; this.fcm.sound = value; } - }]); - - function NotificationsPayload(title, body) { - (0, _classCallCheck2["default"])(this, NotificationsPayload); - (0, _defineProperty2["default"])(this, "_payload", void 0); - (0, _defineProperty2["default"])(this, "_debugging", void 0); - (0, _defineProperty2["default"])(this, "_subtitle", void 0); - (0, _defineProperty2["default"])(this, "_badge", void 0); - (0, _defineProperty2["default"])(this, "_sound", void 0); - (0, _defineProperty2["default"])(this, "_title", void 0); - (0, _defineProperty2["default"])(this, "_body", void 0); - (0, _defineProperty2["default"])(this, "apns", void 0); - (0, _defineProperty2["default"])(this, "mpns", void 0); - (0, _defineProperty2["default"])(this, "fcm", void 0); - this._payload = { - apns: {}, - mpns: {}, - fcm: {} - }; - this._title = title; - this._body = body; - this.apns = new APNSNotificationPayload(this._payload.apns, title, body); - this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body); - this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body); - } - - (0, _createClass2["default"])(NotificationsPayload, [{ + }, { key: "buildPayload", value: function buildPayload(platforms) { var payload = {}; diff --git a/lib/core/components/push_payload.js.map b/lib/core/components/push_payload.js.map index a86515b09..59dd1f53e 100644 --- a/lib/core/components/push_payload.js.map +++ b/lib/core/components/push_payload.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/push_payload.js"],"names":["BaseNotificationPayload","_payload","value","_title","_subtitle","_body","_badge","_sound","payload","title","body","_setDefaultPayloadStructure","APNSNotificationPayload","aps","alert","_isSilent","_apnsPushType","_configurations","length","ReferenceError","configurations","forEach","configuration","push","_objectFromAPNS2Configuration","pn_push","Object","keys","badge","sound","targets","target","_objectFromAPNSTarget","collapseId","expirationDate","objectifiedConfiguration","auth_method","version","collapse_id","expiration","toISOString","topic","TypeError","environment","excludedDevices","objectifiedTarget","excluded_devices","subtitle","undefined","MPNSNotificationPayload","_backContent","back_content","_backTitle","back_title","_count","count","_type","type","backTitle","backContent","FCMNotificationPayload","notification","data","initialNotification","initialData","additionalData","_icon","icon","_tag","tag","NotificationsPayload","_debugging","apns","mpns","fcm","platforms","includes","apnsPayload","toObject","pn_apns","mpnsPayload","pn_mpns","fcmPayload","pn_gcm","pn_debug"],"mappings":"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","sourcesContent":["/* @flow */\n/* eslint max-classes-per-file: [\"error\", 5] */\nimport { APNS2Configuration, APNS2Target } from '../flow_interfaces';\n\nclass BaseNotificationPayload {\n _subtitle: ?string;\n _payload: Object;\n _badge: ?number;\n _sound: ?string;\n _title: ?string;\n _body: ?string;\n\n get payload() {\n return this._payload;\n }\n\n set title(value: ?string) {\n this._title = value;\n }\n\n set subtitle(value: ?string) {\n this._subtitle = value;\n }\n\n set body(value: ?string) {\n this._body = value;\n }\n\n set badge(value: ?number) {\n this._badge = value;\n }\n\n set sound(value: ?string) {\n this._sound = value;\n }\n\n constructor(payload: Object, title: ?string, body: ?string) {\n this._payload = payload;\n\n this._setDefaultPayloadStructure();\n this.title = title;\n this.body = body;\n }\n\n _setDefaultPayloadStructure() {\n }\n\n toObject() {\n return {};\n }\n}\n\nexport class APNSNotificationPayload extends BaseNotificationPayload {\n _configurations: Array;\n _apnsPushType: ?string;\n _isSilent: boolean;\n\n set configurations(value: Array) {\n if (!value || !value.length) return;\n\n this._configurations = value;\n }\n\n get notification() {\n return this._payload.aps;\n }\n\n get title() {\n return this._title;\n }\n\n set title(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.aps.alert.title = value;\n this._title = value;\n }\n\n get subtitle() {\n return this._subtitle;\n }\n\n set subtitle(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.aps.alert.subtitle = value;\n this._subtitle = value;\n }\n\n get body() {\n return this._body;\n }\n\n set body(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.aps.alert.body = value;\n this._body = value;\n }\n\n get badge() {\n return this._badge;\n }\n\n set badge(value: ?number) {\n if (value === undefined || value === null) return;\n\n this._payload.aps.badge = value;\n this._badge = value;\n }\n\n get sound() {\n return this._sound;\n }\n\n set sound(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.aps.sound = value;\n this._sound = value;\n }\n\n set silent(value: boolean) {\n this._isSilent = value;\n }\n\n _setDefaultPayloadStructure() {\n this._payload.aps = { alert: {} };\n }\n\n toObject(): ?Object {\n let payload = { ...this._payload };\n /** @type {{alert: Object, badge: number, sound: string}} */\n let aps = payload.aps;\n let alert = aps.alert;\n\n if (this._isSilent) {\n aps['content-available'] = 1;\n }\n\n if (this._apnsPushType === 'apns2') {\n if (!this._configurations || !this._configurations.length) {\n throw new ReferenceError('APNS2 configuration is missing');\n }\n\n let configurations = [];\n this._configurations.forEach((configuration: APNS2Configuration) => {\n configurations.push(this._objectFromAPNS2Configuration(configuration));\n });\n\n if (configurations.length) {\n payload.pn_push = configurations;\n }\n }\n\n if (!alert || !Object.keys(alert).length) {\n delete aps.alert;\n }\n\n if (this._isSilent) {\n delete aps.alert;\n delete aps.badge;\n delete aps.sound;\n alert = {};\n }\n\n return this._isSilent || Object.keys(alert).length ? payload : null;\n }\n\n _objectFromAPNS2Configuration(configuration: APNS2Configuration) {\n if (!configuration.targets || !configuration.targets.length) {\n throw new ReferenceError('At least one APNS2 target should be provided');\n }\n\n let targets = [];\n configuration.targets.forEach((target: APNS2Target) => {\n targets.push(this._objectFromAPNSTarget(target));\n });\n\n const { collapseId, expirationDate } = configuration;\n let objectifiedConfiguration: {\n auth_method: string,\n targets: Array,\n version: string,\n collapse_id?: string,\n expiration?: string\n } = { auth_method: 'token', targets, version: 'v2' };\n\n if (collapseId && collapseId.length) {\n objectifiedConfiguration.collapse_id = collapseId;\n }\n\n if (expirationDate) {\n objectifiedConfiguration.expiration = expirationDate.toISOString();\n }\n\n return objectifiedConfiguration;\n }\n\n _objectFromAPNSTarget(target: APNS2Target) {\n if (!target.topic || !target.topic.length) {\n throw new TypeError('Target \\'topic\\' undefined.');\n }\n\n const {\n topic,\n environment = 'development',\n excludedDevices = []\n } = target;\n\n let objectifiedTarget: {\n topic: string,\n environment: string,\n excluded_devices?: Array\n } = { topic, environment };\n\n if (excludedDevices.length) {\n objectifiedTarget.excluded_devices = excludedDevices;\n }\n\n return objectifiedTarget;\n }\n}\n\nexport class MPNSNotificationPayload extends BaseNotificationPayload {\n _backContent: ?string;\n _backTitle: ?string;\n _count: ?number;\n _type: ?string;\n\n get backContent() {\n return this._backContent;\n }\n\n set backContent(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.back_content = value;\n this._backContent = value;\n }\n\n get backTitle() {\n return this._backTitle;\n }\n\n set backTitle(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.back_title = value;\n this._backTitle = value;\n }\n\n get count() {\n return this._count;\n }\n\n set count(value: ?number) {\n if (value === undefined || value === null) return;\n\n this._payload.count = value;\n this._count = value;\n }\n\n get title() {\n return this._title;\n }\n\n set title(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.title = value;\n this._title = value;\n }\n\n get type() {\n return this._type;\n }\n\n set type(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.type = value;\n this._type = value;\n }\n\n get subtitle() {\n return this.backTitle;\n }\n\n set subtitle(value: ?string) {\n this.backTitle = value;\n }\n\n get body() {\n return this.backContent;\n }\n\n set body(value: ?string) {\n this.backContent = value;\n }\n\n get badge() {\n return this.count;\n }\n\n set badge(value: ?number) {\n this.count = value;\n }\n\n toObject(): ?Object {\n return Object.keys(this._payload).length ? { ...this._payload } : null;\n }\n}\n\nexport class FCMNotificationPayload extends BaseNotificationPayload {\n _isSilent: boolean;\n _icon: ?string;\n _tag: ?string;\n\n get notification() {\n return this._payload.notification;\n }\n\n get data() {\n return this._payload.data;\n }\n\n get title() {\n return this._title;\n }\n\n set title(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.title = value;\n this._title = value;\n }\n\n get body() {\n return this._body;\n }\n\n set body(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.body = value;\n this._body = value;\n }\n\n get sound() {\n return this._sound;\n }\n\n set sound(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.sound = value;\n this._sound = value;\n }\n\n get icon() {\n return this._icon;\n }\n\n set icon(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.icon = value;\n this._icon = value;\n }\n\n get tag() {\n return this._tag;\n }\n\n set tag(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.tag = value;\n this._tag = value;\n }\n\n set silent(value: boolean) {\n this._isSilent = value;\n }\n\n _setDefaultPayloadStructure() {\n this._payload.notification = {};\n this._payload.data = {};\n }\n\n toObject(): ?Object {\n let data = { ...this._payload.data };\n let notification = null;\n let payload = {};\n\n /**\n * Check whether additional data has been passed outside of 'data' object\n * and put it into it if required.\n */\n if (Object.keys(this._payload).length > 2) {\n let { notification: initialNotification, data: initialData, ...additionalData } = this._payload;\n\n data = { ...data, ...additionalData };\n }\n\n if (this._isSilent) {\n data.notification = this._payload.notification;\n } else {\n notification = this._payload.notification;\n }\n\n if (Object.keys(data).length) {\n payload.data = data;\n }\n\n if (notification && Object.keys(notification).length) {\n payload.notification = notification;\n }\n\n return Object.keys(payload).length ? payload : null;\n }\n}\n\nclass NotificationsPayload {\n _payload: {apns: Object, mpns: Object, fcm: Object};\n _debugging: boolean;\n _subtitle: ?string;\n _badge: ?number;\n _sound: ?string;\n _title: ?string;\n _body: ?string;\n apns: APNSNotificationPayload;\n mpns: MPNSNotificationPayload;\n fcm: FCMNotificationPayload;\n\n set debugging(value: boolean) {\n this._debugging = value;\n }\n\n get title() {\n return this._title;\n }\n\n get body() {\n return this._body;\n }\n\n get subtitle() {\n return this._subtitle;\n }\n\n set subtitle(value: ?string) {\n this._subtitle = value;\n this.apns.subtitle = value;\n this.mpns.subtitle = value;\n this.fcm.subtitle = value;\n }\n\n get badge() {\n return this._badge;\n }\n\n set badge(value: ?number) {\n this._badge = value;\n this.apns.badge = value;\n this.mpns.badge = value;\n this.fcm.badge = value;\n }\n\n get sound() {\n return this._sound;\n }\n\n set sound(value: ?string) {\n this._sound = value;\n this.apns.sound = value;\n this.mpns.sound = value;\n this.fcm.sound = value;\n }\n\n constructor(title: ?string, body: ?string) {\n this._payload = { apns: {}, mpns: {}, fcm: {} };\n this._title = title;\n this._body = body;\n\n this.apns = new APNSNotificationPayload(this._payload.apns, title, body);\n this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body);\n this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body);\n }\n\n /**\n * Build notifications platform for requested platforms.\n *\n * @param {Array} platforms - List of platforms for which payload\n * should be added to final dictionary. Supported values: gcm, apns, apns2,\n * mpns.\n *\n * @returns {Object} Object with data, which can be sent with publish method\n * call and trigger remote notifications for specified platforms.\n */\n buildPayload(platforms: Array) {\n let payload = {};\n\n if (platforms.includes('apns') || platforms.includes('apns2')) {\n this.apns._apnsPushType = platforms.includes('apns') ? 'apns' : 'apns2';\n let apnsPayload = this.apns.toObject();\n\n if (apnsPayload && Object.keys(apnsPayload).length) {\n payload.pn_apns = apnsPayload;\n }\n }\n\n if (platforms.includes('mpns')) {\n let mpnsPayload = this.mpns.toObject();\n\n if (mpnsPayload && Object.keys(mpnsPayload).length) {\n payload.pn_mpns = mpnsPayload;\n }\n }\n\n if (platforms.includes('fcm')) {\n let fcmPayload = this.fcm.toObject();\n\n if (fcmPayload && Object.keys(fcmPayload).length) {\n payload.pn_gcm = fcmPayload;\n }\n }\n\n if (Object.keys(payload).length && this._debugging) {\n payload.pn_debug = true;\n }\n\n return payload;\n }\n}\n\nexport default NotificationsPayload;\n"],"file":"push_payload.js"} \ No newline at end of file +{"version":3,"sources":["core/components/push_payload.js"],"names":["BaseNotificationPayload","payload","title","body","_payload","_setDefaultPayloadStructure","value","_title","_subtitle","_body","_badge","_sound","APNSNotificationPayload","length","_configurations","aps","alert","subtitle","undefined","badge","sound","_isSilent","_apnsPushType","ReferenceError","configurations","forEach","configuration","push","_objectFromAPNS2Configuration","pn_push","Object","keys","targets","target","_objectFromAPNSTarget","collapseId","expirationDate","objectifiedConfiguration","auth_method","version","collapse_id","expiration","toISOString","topic","TypeError","environment","excludedDevices","objectifiedTarget","excluded_devices","MPNSNotificationPayload","_backContent","back_content","_backTitle","back_title","_count","count","_type","type","backTitle","backContent","FCMNotificationPayload","notification","data","_icon","icon","_tag","tag","initialNotification","initialData","additionalData","NotificationsPayload","apns","mpns","fcm","_debugging","platforms","includes","apnsPayload","toObject","pn_apns","mpnsPayload","pn_mpns","fcmPayload","pn_gcm","pn_debug"],"mappings":"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","sourcesContent":["/* @flow */\n/* eslint max-classes-per-file: [\"error\", 5] */\nimport { APNS2Configuration, APNS2Target } from '../flow_interfaces';\n\nclass BaseNotificationPayload {\n _subtitle: ?string;\n _payload: Object;\n _badge: ?number;\n _sound: ?string;\n _title: ?string;\n _body: ?string;\n\n get payload() {\n return this._payload;\n }\n\n set title(value: ?string) {\n this._title = value;\n }\n\n set subtitle(value: ?string) {\n this._subtitle = value;\n }\n\n set body(value: ?string) {\n this._body = value;\n }\n\n set badge(value: ?number) {\n this._badge = value;\n }\n\n set sound(value: ?string) {\n this._sound = value;\n }\n\n constructor(payload: Object, title: ?string, body: ?string) {\n this._payload = payload;\n\n this._setDefaultPayloadStructure();\n this.title = title;\n this.body = body;\n }\n\n _setDefaultPayloadStructure() {\n }\n\n toObject() {\n return {};\n }\n}\n\nexport class APNSNotificationPayload extends BaseNotificationPayload {\n _configurations: Array;\n _apnsPushType: ?string;\n _isSilent: boolean;\n\n set configurations(value: Array) {\n if (!value || !value.length) return;\n\n this._configurations = value;\n }\n\n get notification() {\n return this._payload.aps;\n }\n\n get title() {\n return this._title;\n }\n\n set title(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.aps.alert.title = value;\n this._title = value;\n }\n\n get subtitle() {\n return this._subtitle;\n }\n\n set subtitle(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.aps.alert.subtitle = value;\n this._subtitle = value;\n }\n\n get body() {\n return this._body;\n }\n\n set body(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.aps.alert.body = value;\n this._body = value;\n }\n\n get badge() {\n return this._badge;\n }\n\n set badge(value: ?number) {\n if (value === undefined || value === null) return;\n\n this._payload.aps.badge = value;\n this._badge = value;\n }\n\n get sound() {\n return this._sound;\n }\n\n set sound(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.aps.sound = value;\n this._sound = value;\n }\n\n set silent(value: boolean) {\n this._isSilent = value;\n }\n\n _setDefaultPayloadStructure() {\n this._payload.aps = { alert: {} };\n }\n\n toObject(): ?Object {\n let payload = { ...this._payload };\n /** @type {{alert: Object, badge: number, sound: string}} */\n let aps = payload.aps;\n let alert = aps.alert;\n\n if (this._isSilent) {\n aps['content-available'] = 1;\n }\n\n if (this._apnsPushType === 'apns2') {\n if (!this._configurations || !this._configurations.length) {\n throw new ReferenceError('APNS2 configuration is missing');\n }\n\n let configurations = [];\n this._configurations.forEach((configuration: APNS2Configuration) => {\n configurations.push(this._objectFromAPNS2Configuration(configuration));\n });\n\n if (configurations.length) {\n payload.pn_push = configurations;\n }\n }\n\n if (!alert || !Object.keys(alert).length) {\n delete aps.alert;\n }\n\n if (this._isSilent) {\n delete aps.alert;\n delete aps.badge;\n delete aps.sound;\n alert = {};\n }\n\n return this._isSilent || Object.keys(alert).length ? payload : null;\n }\n\n _objectFromAPNS2Configuration(configuration: APNS2Configuration) {\n if (!configuration.targets || !configuration.targets.length) {\n throw new ReferenceError('At least one APNS2 target should be provided');\n }\n\n let targets = [];\n configuration.targets.forEach((target: APNS2Target) => {\n targets.push(this._objectFromAPNSTarget(target));\n });\n\n const { collapseId, expirationDate } = configuration;\n let objectifiedConfiguration: {\n auth_method: string,\n targets: Array,\n version: string,\n collapse_id?: string,\n expiration?: string\n } = { auth_method: 'token', targets, version: 'v2' };\n\n if (collapseId && collapseId.length) {\n objectifiedConfiguration.collapse_id = collapseId;\n }\n\n if (expirationDate) {\n objectifiedConfiguration.expiration = expirationDate.toISOString();\n }\n\n return objectifiedConfiguration;\n }\n\n _objectFromAPNSTarget(target: APNS2Target) {\n if (!target.topic || !target.topic.length) {\n throw new TypeError('Target \\'topic\\' undefined.');\n }\n\n const {\n topic,\n environment = 'development',\n excludedDevices = []\n } = target;\n\n let objectifiedTarget: {\n topic: string,\n environment: string,\n excluded_devices?: Array\n } = { topic, environment };\n\n if (excludedDevices.length) {\n objectifiedTarget.excluded_devices = excludedDevices;\n }\n\n return objectifiedTarget;\n }\n}\n\nexport class MPNSNotificationPayload extends BaseNotificationPayload {\n _backContent: ?string;\n _backTitle: ?string;\n _count: ?number;\n _type: ?string;\n\n get backContent() {\n return this._backContent;\n }\n\n set backContent(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.back_content = value;\n this._backContent = value;\n }\n\n get backTitle() {\n return this._backTitle;\n }\n\n set backTitle(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.back_title = value;\n this._backTitle = value;\n }\n\n get count() {\n return this._count;\n }\n\n set count(value: ?number) {\n if (value === undefined || value === null) return;\n\n this._payload.count = value;\n this._count = value;\n }\n\n get title() {\n return this._title;\n }\n\n set title(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.title = value;\n this._title = value;\n }\n\n get type() {\n return this._type;\n }\n\n set type(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.type = value;\n this._type = value;\n }\n\n get subtitle() {\n return this.backTitle;\n }\n\n set subtitle(value: ?string) {\n this.backTitle = value;\n }\n\n get body() {\n return this.backContent;\n }\n\n set body(value: ?string) {\n this.backContent = value;\n }\n\n get badge() {\n return this.count;\n }\n\n set badge(value: ?number) {\n this.count = value;\n }\n\n toObject(): ?Object {\n return Object.keys(this._payload).length ? { ...this._payload } : null;\n }\n}\n\nexport class FCMNotificationPayload extends BaseNotificationPayload {\n _isSilent: boolean;\n _icon: ?string;\n _tag: ?string;\n\n get notification() {\n return this._payload.notification;\n }\n\n get data() {\n return this._payload.data;\n }\n\n get title() {\n return this._title;\n }\n\n set title(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.title = value;\n this._title = value;\n }\n\n get body() {\n return this._body;\n }\n\n set body(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.body = value;\n this._body = value;\n }\n\n get sound() {\n return this._sound;\n }\n\n set sound(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.sound = value;\n this._sound = value;\n }\n\n get icon() {\n return this._icon;\n }\n\n set icon(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.icon = value;\n this._icon = value;\n }\n\n get tag() {\n return this._tag;\n }\n\n set tag(value: ?string) {\n if (!value || !value.length) return;\n\n this._payload.notification.tag = value;\n this._tag = value;\n }\n\n set silent(value: boolean) {\n this._isSilent = value;\n }\n\n _setDefaultPayloadStructure() {\n this._payload.notification = {};\n this._payload.data = {};\n }\n\n toObject(): ?Object {\n let data = { ...this._payload.data };\n let notification = null;\n let payload = {};\n\n /**\n * Check whether additional data has been passed outside of 'data' object\n * and put it into it if required.\n */\n if (Object.keys(this._payload).length > 2) {\n let { notification: initialNotification, data: initialData, ...additionalData } = this._payload;\n\n data = { ...data, ...additionalData };\n }\n\n if (this._isSilent) {\n data.notification = this._payload.notification;\n } else {\n notification = this._payload.notification;\n }\n\n if (Object.keys(data).length) {\n payload.data = data;\n }\n\n if (notification && Object.keys(notification).length) {\n payload.notification = notification;\n }\n\n return Object.keys(payload).length ? payload : null;\n }\n}\n\nclass NotificationsPayload {\n _payload: {apns: Object, mpns: Object, fcm: Object};\n _debugging: boolean;\n _subtitle: ?string;\n _badge: ?number;\n _sound: ?string;\n _title: ?string;\n _body: ?string;\n apns: APNSNotificationPayload;\n mpns: MPNSNotificationPayload;\n fcm: FCMNotificationPayload;\n\n set debugging(value: boolean) {\n this._debugging = value;\n }\n\n get title() {\n return this._title;\n }\n\n get body() {\n return this._body;\n }\n\n get subtitle() {\n return this._subtitle;\n }\n\n set subtitle(value: ?string) {\n this._subtitle = value;\n this.apns.subtitle = value;\n this.mpns.subtitle = value;\n this.fcm.subtitle = value;\n }\n\n get badge() {\n return this._badge;\n }\n\n set badge(value: ?number) {\n this._badge = value;\n this.apns.badge = value;\n this.mpns.badge = value;\n this.fcm.badge = value;\n }\n\n get sound() {\n return this._sound;\n }\n\n set sound(value: ?string) {\n this._sound = value;\n this.apns.sound = value;\n this.mpns.sound = value;\n this.fcm.sound = value;\n }\n\n constructor(title: ?string, body: ?string) {\n this._payload = { apns: {}, mpns: {}, fcm: {} };\n this._title = title;\n this._body = body;\n\n this.apns = new APNSNotificationPayload(this._payload.apns, title, body);\n this.mpns = new MPNSNotificationPayload(this._payload.mpns, title, body);\n this.fcm = new FCMNotificationPayload(this._payload.fcm, title, body);\n }\n\n /**\n * Build notifications platform for requested platforms.\n *\n * @param {Array} platforms - List of platforms for which payload\n * should be added to final dictionary. Supported values: gcm, apns, apns2,\n * mpns.\n *\n * @returns {Object} Object with data, which can be sent with publish method\n * call and trigger remote notifications for specified platforms.\n */\n buildPayload(platforms: Array) {\n let payload = {};\n\n if (platforms.includes('apns') || platforms.includes('apns2')) {\n this.apns._apnsPushType = platforms.includes('apns') ? 'apns' : 'apns2';\n let apnsPayload = this.apns.toObject();\n\n if (apnsPayload && Object.keys(apnsPayload).length) {\n payload.pn_apns = apnsPayload;\n }\n }\n\n if (platforms.includes('mpns')) {\n let mpnsPayload = this.mpns.toObject();\n\n if (mpnsPayload && Object.keys(mpnsPayload).length) {\n payload.pn_mpns = mpnsPayload;\n }\n }\n\n if (platforms.includes('fcm')) {\n let fcmPayload = this.fcm.toObject();\n\n if (fcmPayload && Object.keys(fcmPayload).length) {\n payload.pn_gcm = fcmPayload;\n }\n }\n\n if (Object.keys(payload).length && this._debugging) {\n payload.pn_debug = true;\n }\n\n return payload;\n }\n}\n\nexport default NotificationsPayload;\n"],"file":"push_payload.js"} \ No newline at end of file diff --git a/lib/core/components/reconnection_manager.js.map b/lib/core/components/reconnection_manager.js.map index 7f6d36197..01177aa80 100644 --- a/lib/core/components/reconnection_manager.js.map +++ b/lib/core/components/reconnection_manager.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/reconnection_manager.js"],"names":["timeEndpoint","_timeEndpoint","reconnectionCallback","_reconnectionCallback","_timeTimer","setInterval","_performTimeLoop","bind","clearInterval","status","error"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;;AAWE,0BAAuD;AAAA,QAAzCA,YAAyC,QAAzCA,YAAyC;AAAA;AAAA;AAAA;AAAA;AACrD,SAAKC,aAAL,GAAqBD,YAArB;AACD;;;;mCAEcE,oB,EAAgC;AAC7C,WAAKC,qBAAL,GAA6BD,oBAA7B;AACD;;;mCAEc;AACb,WAAKE,UAAL,GAAkBC,WAAW,CAAC,KAAKC,gBAAL,CAAsBC,IAAtB,CAA2B,IAA3B,CAAD,EAAmC,IAAnC,CAA7B;AACD;;;kCAEa;AACZC,MAAAA,aAAa,CAAC,KAAKJ,UAAN,CAAb;AACD;;;uCAEkB;AAAA;;AACjB,WAAKH,aAAL,CAAmB,UAACQ,MAAD,EAAgC;AACjD,YAAI,CAACA,MAAM,CAACC,KAAZ,EAAmB;AACjBF,UAAAA,aAAa,CAAC,KAAI,CAACJ,UAAN,CAAb;;AACA,UAAA,KAAI,CAACD,qBAAL;AACD;AACF,OALD;AAMD","sourcesContent":["import TimeEndpoint from '../endpoints/time';\nimport { StatusAnnouncement } from '../flow_interfaces';\n\ntype ReconnectionManagerArgs = {\n timeEndpoint: TimeEndpoint\n}\n\nexport default class {\n _reconnectionCallback: Function;\n _timeEndpoint: TimeEndpoint;\n _timeTimer: number;\n\n constructor({ timeEndpoint }: ReconnectionManagerArgs) {\n this._timeEndpoint = timeEndpoint;\n }\n\n onReconnection(reconnectionCallback: Function) {\n this._reconnectionCallback = reconnectionCallback;\n }\n\n startPolling() {\n this._timeTimer = setInterval(this._performTimeLoop.bind(this), 3000);\n }\n\n stopPolling() {\n clearInterval(this._timeTimer);\n }\n\n _performTimeLoop() {\n this._timeEndpoint((status: StatusAnnouncement) => {\n if (!status.error) {\n clearInterval(this._timeTimer);\n this._reconnectionCallback();\n }\n });\n }\n}\n"],"file":"reconnection_manager.js"} \ No newline at end of file +{"version":3,"sources":["core/components/reconnection_manager.js"],"names":["timeEndpoint","_timeEndpoint","reconnectionCallback","_reconnectionCallback","_timeTimer","setInterval","_performTimeLoop","bind","clearInterval","status","error"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;;AAWE,0BAAuD;AAAA,QAAzCA,YAAyC,QAAzCA,YAAyC;AAAA;AAAA;AAAA;AAAA;AACrD,SAAKC,aAAL,GAAqBD,YAArB;AACD;;;;WAED,wBAAeE,oBAAf,EAA+C;AAC7C,WAAKC,qBAAL,GAA6BD,oBAA7B;AACD;;;WAED,wBAAe;AACb,WAAKE,UAAL,GAAkBC,WAAW,CAAC,KAAKC,gBAAL,CAAsBC,IAAtB,CAA2B,IAA3B,CAAD,EAAmC,IAAnC,CAA7B;AACD;;;WAED,uBAAc;AACZC,MAAAA,aAAa,CAAC,KAAKJ,UAAN,CAAb;AACD;;;WAED,4BAAmB;AAAA;;AACjB,WAAKH,aAAL,CAAmB,UAACQ,MAAD,EAAgC;AACjD,YAAI,CAACA,MAAM,CAACC,KAAZ,EAAmB;AACjBF,UAAAA,aAAa,CAAC,KAAI,CAACJ,UAAN,CAAb;;AACA,UAAA,KAAI,CAACD,qBAAL;AACD;AACF,OALD;AAMD","sourcesContent":["import TimeEndpoint from '../endpoints/time';\nimport { StatusAnnouncement } from '../flow_interfaces';\n\ntype ReconnectionManagerArgs = {\n timeEndpoint: TimeEndpoint\n}\n\nexport default class {\n _reconnectionCallback: Function;\n _timeEndpoint: TimeEndpoint;\n _timeTimer: number;\n\n constructor({ timeEndpoint }: ReconnectionManagerArgs) {\n this._timeEndpoint = timeEndpoint;\n }\n\n onReconnection(reconnectionCallback: Function) {\n this._reconnectionCallback = reconnectionCallback;\n }\n\n startPolling() {\n this._timeTimer = setInterval(this._performTimeLoop.bind(this), 3000);\n }\n\n stopPolling() {\n clearInterval(this._timeTimer);\n }\n\n _performTimeLoop() {\n this._timeEndpoint((status: StatusAnnouncement) => {\n if (!status.error) {\n clearInterval(this._timeTimer);\n this._reconnectionCallback();\n }\n });\n }\n}\n"],"file":"reconnection_manager.js"} \ No newline at end of file diff --git a/lib/core/components/subscription_manager.js.map b/lib/core/components/subscription_manager.js.map index 3d86513a4..b9efed15b 100644 --- a/lib/core/components/subscription_manager.js.map +++ b/lib/core/components/subscription_manager.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/subscription_manager.js"],"names":["subscribeEndpoint","leaveEndpoint","heartbeatEndpoint","setStateEndpoint","timeEndpoint","getFileUrl","config","crypto","listenerManager","_listenerManager","_config","_leaveEndpoint","_heartbeatEndpoint","_setStateEndpoint","_subscribeEndpoint","_getFileUrl","_crypto","_channels","_presenceChannels","_heartbeatChannels","_heartbeatChannelGroups","_channelGroups","_presenceChannelGroups","_pendingChannelSubscriptions","_pendingChannelGroupSubscriptions","_currentTimetoken","_lastTimetoken","_storedTimetoken","_subscriptionStatusAnnounced","_isOnline","_reconnectionManager","ReconnectionManager","_dedupingManager","DedupingManager","args","callback","state","channels","channelGroups","forEach","channel","channelGroup","connected","suppressLeaveEvents","status","announceStatus","reconnect","timetoken","withPresence","withHeartbeats","subscribeKey","console","log","getHeartbeatInterval","push","isOffline","actualChannels","actualChannelGroups","length","affectedChannels","affectedChannelGroups","currentTimetoken","lastTimetoken","Object","keys","_region","stopPolling","adaptUnsubscribeChange","getSubscribedChannels","getSubscribedChannelGroups","_startSubscribeLoop","_registerHeartbeatTimer","_stopSubscribeLoop","_stopHeartbeatTimer","undefined","_performHeartbeatLoop","_heartbeatTimer","setInterval","bind","clearInterval","heartbeatChannels","getHeartbeatChannels","heartbeatChannelGroups","getHeartbeatChannelGroups","presenceState","channelState","channelGroupState","onHeartbeat","error","announceFailedHeartbeats","autoNetworkDetection","disconnect","announceNetworkDown","announceSuccessfulHeartbeats","subscribeArgs","filterExpression","region","_subscribeCall","_processSubscribeResponse","payload","category","categoryConstants","PNTimeoutCategory","PNNetworkIssuesCategory","onReconnection","announceNetworkUp","reconnectedAnnounce","PNReconnectedCategory","operation","startPolling","PNBadRequestCategory","metadata","connectedAnnounce","PNConnectedCategory","subscribedChannels","messages","requestMessageCountThreshold","dedupeOnSubscribe","countAnnouncement","PNRequestMessageCountExceededCategory","message","subscriptionMatch","publishMetaData","isDuplicate","addEntry","utils","endsWith","announce","subscription","actualChannel","subscribedChannel","substring","lastIndexOf","action","data","publishTimetoken","occupancy","uuid","timestamp","join","leave","timeout","announcePresence","messageType","publisher","issuingClientId","userMetadata","announceSignal","event","type","announceObjects","announceUser","announceSpace","announceMembership","messageTimetoken","actionTimetoken","value","announceMessageAction","msgPayload","cipherKey","decryptedPayload","decrypt","file","id","name","url","announceFile","announceMessage","abort"],"mappings":"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","sourcesContent":["/* @flow */\nimport Crypto from '../components/cryptography';\nimport Config from '../components/config';\nimport ListenerManager from '../components/listener_manager';\nimport ReconnectionManager from '../components/reconnection_manager';\nimport DedupingManager from '../components/deduping_manager';\nimport utils from '../utils';\nimport {\n MessageActionAnnouncement,\n MessageAnnouncement,\n SignalAnnouncement,\n ObjectAnnouncement,\n SubscribeEnvelope,\n StatusAnnouncement,\n PresenceAnnouncement,\n FileAnnouncement,\n} from '../flow_interfaces';\nimport categoryConstants from '../constants/categories';\n\ntype SubscribeArgs = {\n channels: Array,\n channelGroups: Array,\n withPresence: ?boolean,\n timetoken: ?number,\n withHeartbeats: ?boolean,\n};\n\ntype PresenceArgs = {\n channels: Array,\n channelGroups: Array,\n connected: boolean,\n};\n\ntype UnsubscribeArgs = {\n channels: Array,\n channelGroups: Array,\n};\n\ntype StateArgs = {\n channels: Array,\n channelGroups: Array,\n state: Object,\n};\n\ntype SubscriptionManagerConstruct = {\n leaveEndpoint: Function,\n subscribeEndpoint: Function,\n timeEndpoint: Function,\n heartbeatEndpoint: Function,\n setStateEndpoint: Function,\n getFileUrl: ({| id: string, name: string, channel: string |}) => string,\n config: Config,\n crypto: Crypto,\n listenerManager: ListenerManager,\n};\n\nexport default class {\n _crypto: Crypto;\n _config: Config;\n _listenerManager: ListenerManager;\n _reconnectionManager: ReconnectionManager;\n\n _leaveEndpoint: Function;\n _heartbeatEndpoint: Function;\n _setStateEndpoint: Function;\n _subscribeEndpoint: Function;\n _getFileUrl: ({| id: string, name: string, channel: string |}) => string;\n\n _channels: Object;\n _presenceChannels: Object;\n\n _heartbeatChannels: Object;\n _heartbeatChannelGroups: Object;\n\n _channelGroups: Object;\n _presenceChannelGroups: Object;\n\n _currentTimetoken: number;\n _lastTimetoken: number;\n _storedTimetoken: ?number;\n\n _region: ?number;\n\n _subscribeCall: ?Object;\n _heartbeatTimer: ?number;\n\n _subscriptionStatusAnnounced: boolean;\n\n _autoNetworkDetection: boolean;\n _isOnline: boolean;\n\n // store pending connection elements\n _pendingChannelSubscriptions: Array;\n _pendingChannelGroupSubscriptions: Array;\n //\n\n _dedupingManager: DedupingManager;\n\n constructor({\n subscribeEndpoint,\n leaveEndpoint,\n heartbeatEndpoint,\n setStateEndpoint,\n timeEndpoint,\n getFileUrl,\n config,\n crypto,\n listenerManager,\n }: SubscriptionManagerConstruct) {\n this._listenerManager = listenerManager;\n this._config = config;\n\n this._leaveEndpoint = leaveEndpoint;\n this._heartbeatEndpoint = heartbeatEndpoint;\n this._setStateEndpoint = setStateEndpoint;\n this._subscribeEndpoint = subscribeEndpoint;\n this._getFileUrl = getFileUrl;\n\n this._crypto = crypto;\n\n this._channels = {};\n this._presenceChannels = {};\n\n this._heartbeatChannels = {};\n this._heartbeatChannelGroups = {};\n\n this._channelGroups = {};\n this._presenceChannelGroups = {};\n\n this._pendingChannelSubscriptions = [];\n this._pendingChannelGroupSubscriptions = [];\n\n this._currentTimetoken = 0;\n this._lastTimetoken = 0;\n this._storedTimetoken = null;\n\n this._subscriptionStatusAnnounced = false;\n\n this._isOnline = true;\n\n this._reconnectionManager = new ReconnectionManager({ timeEndpoint });\n this._dedupingManager = new DedupingManager({ config });\n }\n\n adaptStateChange(args: StateArgs, callback: Function) {\n const { state, channels = [], channelGroups = [] } = args;\n\n channels.forEach((channel) => {\n if (channel in this._channels) this._channels[channel].state = state;\n });\n\n channelGroups.forEach((channelGroup) => {\n if (channelGroup in this._channelGroups) {\n this._channelGroups[channelGroup].state = state;\n }\n });\n\n return this._setStateEndpoint({ state, channels, channelGroups }, callback);\n }\n\n adaptPresenceChange(args: PresenceArgs) {\n const { connected, channels = [], channelGroups = [] } = args;\n\n if (connected) {\n channels.forEach((channel: string) => {\n this._heartbeatChannels[channel] = { state: {} };\n });\n\n channelGroups.forEach((channelGroup: string) => {\n this._heartbeatChannelGroups[channelGroup] = { state: {} };\n });\n } else {\n channels.forEach((channel) => {\n if (channel in this._heartbeatChannels) {\n delete this._heartbeatChannels[channel];\n }\n });\n\n channelGroups.forEach((channelGroup) => {\n if (channelGroup in this._heartbeatChannelGroups) {\n delete this._heartbeatChannelGroups[channelGroup];\n }\n });\n\n if (this._config.suppressLeaveEvents === false) {\n this._leaveEndpoint({ channels, channelGroups }, (status) => {\n this._listenerManager.announceStatus(status);\n });\n }\n }\n\n this.reconnect();\n }\n\n adaptSubscribeChange(args: SubscribeArgs) {\n const { timetoken, channels = [], channelGroups = [], withPresence = false, withHeartbeats = false } = args;\n\n if (!this._config.subscribeKey || this._config.subscribeKey === '') {\n // eslint-disable-next-line\n if (console && console.log) {\n console.log('subscribe key missing; aborting subscribe'); //eslint-disable-line\n }\n return;\n }\n\n if (timetoken) {\n this._lastTimetoken = this._currentTimetoken;\n this._currentTimetoken = timetoken;\n }\n\n // reset the current timetoken to get a connect event.\n // $FlowFixMe\n if (this._currentTimetoken !== '0' && this._currentTimetoken !== 0) {\n this._storedTimetoken = this._currentTimetoken;\n this._currentTimetoken = 0;\n }\n\n channels.forEach((channel: string) => {\n this._channels[channel] = { state: {} };\n if (withPresence) this._presenceChannels[channel] = {};\n if (withHeartbeats || this._config.getHeartbeatInterval()) this._heartbeatChannels[channel] = {};\n\n this._pendingChannelSubscriptions.push(channel);\n });\n\n channelGroups.forEach((channelGroup: string) => {\n this._channelGroups[channelGroup] = { state: {} };\n if (withPresence) this._presenceChannelGroups[channelGroup] = {};\n if (withHeartbeats || this._config.getHeartbeatInterval()) this._heartbeatChannelGroups[channelGroup] = {};\n\n this._pendingChannelGroupSubscriptions.push(channelGroup);\n });\n\n this._subscriptionStatusAnnounced = false;\n this.reconnect();\n }\n\n adaptUnsubscribeChange(args: UnsubscribeArgs, isOffline: boolean) {\n const { channels = [], channelGroups = [] } = args;\n\n // keep track of which channels and channel groups\n // we are going to unsubscribe from.\n const actualChannels = [];\n const actualChannelGroups = [];\n //\n\n channels.forEach((channel) => {\n if (channel in this._channels) {\n delete this._channels[channel];\n actualChannels.push(channel);\n\n if (channel in this._heartbeatChannels) {\n delete this._heartbeatChannels[channel];\n }\n }\n if (channel in this._presenceChannels) {\n delete this._presenceChannels[channel];\n actualChannels.push(channel);\n }\n });\n\n channelGroups.forEach((channelGroup) => {\n if (channelGroup in this._channelGroups) {\n delete this._channelGroups[channelGroup];\n actualChannelGroups.push(channelGroup);\n\n if (channelGroup in this._heartbeatChannelGroups) {\n delete this._heartbeatChannelGroups[channelGroup];\n }\n }\n if (channelGroup in this._presenceChannelGroups) {\n delete this._channelGroups[channelGroup];\n actualChannelGroups.push(channelGroup);\n }\n });\n\n // no-op if there are no channels and cg's to unsubscribe from.\n if (actualChannels.length === 0 && actualChannelGroups.length === 0) {\n return;\n }\n\n if (this._config.suppressLeaveEvents === false && !isOffline) {\n this._leaveEndpoint({ channels: actualChannels, channelGroups: actualChannelGroups }, (status) => {\n status.affectedChannels = actualChannels;\n status.affectedChannelGroups = actualChannelGroups;\n status.currentTimetoken = this._currentTimetoken;\n status.lastTimetoken = this._lastTimetoken;\n this._listenerManager.announceStatus(status);\n });\n }\n\n // if we have nothing to subscribe to, reset the timetoken.\n if (\n Object.keys(this._channels).length === 0 &&\n Object.keys(this._presenceChannels).length === 0 &&\n Object.keys(this._channelGroups).length === 0 &&\n Object.keys(this._presenceChannelGroups).length === 0\n ) {\n this._lastTimetoken = 0;\n this._currentTimetoken = 0;\n this._storedTimetoken = null;\n this._region = null;\n this._reconnectionManager.stopPolling();\n }\n\n this.reconnect();\n }\n\n unsubscribeAll(isOffline: boolean) {\n this.adaptUnsubscribeChange(\n {\n channels: this.getSubscribedChannels(),\n channelGroups: this.getSubscribedChannelGroups(),\n },\n isOffline\n );\n }\n\n getHeartbeatChannels(): Array {\n return Object.keys(this._heartbeatChannels);\n }\n\n getHeartbeatChannelGroups(): Array {\n return Object.keys(this._heartbeatChannelGroups);\n }\n\n getSubscribedChannels(): Array {\n return Object.keys(this._channels);\n }\n\n getSubscribedChannelGroups(): Array {\n return Object.keys(this._channelGroups);\n }\n\n reconnect() {\n this._startSubscribeLoop();\n this._registerHeartbeatTimer();\n }\n\n disconnect() {\n this._stopSubscribeLoop();\n this._stopHeartbeatTimer();\n this._reconnectionManager.stopPolling();\n }\n\n _registerHeartbeatTimer() {\n this._stopHeartbeatTimer();\n\n // if the interval is 0 or undefined, do not queue up heartbeating\n if (this._config.getHeartbeatInterval() === 0 || this._config.getHeartbeatInterval() === undefined) {\n return;\n }\n\n this._performHeartbeatLoop();\n // $FlowFixMe\n this._heartbeatTimer = setInterval(\n this._performHeartbeatLoop.bind(this),\n this._config.getHeartbeatInterval() * 1000\n );\n }\n\n _stopHeartbeatTimer() {\n if (this._heartbeatTimer) {\n // $FlowFixMe\n clearInterval(this._heartbeatTimer);\n this._heartbeatTimer = null;\n }\n }\n\n _performHeartbeatLoop() {\n const heartbeatChannels = this.getHeartbeatChannels();\n\n const heartbeatChannelGroups = this.getHeartbeatChannelGroups();\n\n let presenceState = {};\n\n if (heartbeatChannels.length === 0 && heartbeatChannelGroups.length === 0) {\n return;\n }\n\n this.getSubscribedChannels().forEach((channel) => {\n let channelState = this._channels[channel].state;\n if (Object.keys(channelState).length) {\n presenceState[channel] = channelState;\n }\n });\n\n this.getSubscribedChannelGroups().forEach((channelGroup) => {\n let channelGroupState = this._channelGroups[channelGroup].state;\n if (Object.keys(channelGroupState).length) {\n presenceState[channelGroup] = channelGroupState;\n }\n });\n\n let onHeartbeat = (status: StatusAnnouncement) => {\n if (status.error && this._config.announceFailedHeartbeats) {\n this._listenerManager.announceStatus(status);\n }\n\n if (status.error && this._config.autoNetworkDetection && this._isOnline) {\n this._isOnline = false;\n this.disconnect();\n this._listenerManager.announceNetworkDown();\n this.reconnect();\n }\n\n if (!status.error && this._config.announceSuccessfulHeartbeats) {\n this._listenerManager.announceStatus(status);\n }\n };\n\n this._heartbeatEndpoint(\n {\n channels: heartbeatChannels,\n channelGroups: heartbeatChannelGroups,\n state: presenceState,\n },\n onHeartbeat.bind(this)\n );\n }\n\n _startSubscribeLoop() {\n this._stopSubscribeLoop();\n let presenceState = {};\n let channels = [];\n let channelGroups = [];\n\n Object.keys(this._channels).forEach((channel) => {\n let channelState = this._channels[channel].state;\n\n if (Object.keys(channelState).length) {\n presenceState[channel] = channelState;\n }\n\n channels.push(channel);\n });\n Object.keys(this._presenceChannels).forEach((channel) => {\n channels.push(`${channel}-pnpres`);\n });\n\n Object.keys(this._channelGroups).forEach((channelGroup) => {\n let channelGroupState = this._channelGroups[channelGroup].state;\n\n if (Object.keys(channelGroupState).length) {\n presenceState[channelGroup] = channelGroupState;\n }\n\n channelGroups.push(channelGroup);\n });\n Object.keys(this._presenceChannelGroups).forEach((channelGroup) => {\n channelGroups.push(`${channelGroup}-pnpres`);\n });\n\n if (channels.length === 0 && channelGroups.length === 0) {\n return;\n }\n\n const subscribeArgs = {\n channels,\n channelGroups,\n state: presenceState,\n timetoken: this._currentTimetoken,\n filterExpression: this._config.filterExpression,\n region: this._region,\n };\n\n this._subscribeCall = this._subscribeEndpoint(subscribeArgs, this._processSubscribeResponse.bind(this));\n }\n\n _processSubscribeResponse(status: StatusAnnouncement, payload: SubscribeEnvelope) {\n if (status.error) {\n // if we timeout from server, restart the loop.\n if (status.category === categoryConstants.PNTimeoutCategory) {\n this._startSubscribeLoop();\n } else if (status.category === categoryConstants.PNNetworkIssuesCategory) {\n // we lost internet connection, alert the reconnection manager and terminate all loops\n this.disconnect();\n\n if (status.error && this._config.autoNetworkDetection && this._isOnline) {\n this._isOnline = false;\n this._listenerManager.announceNetworkDown();\n }\n\n this._reconnectionManager.onReconnection(() => {\n if (this._config.autoNetworkDetection && !this._isOnline) {\n this._isOnline = true;\n this._listenerManager.announceNetworkUp();\n }\n this.reconnect();\n this._subscriptionStatusAnnounced = true;\n let reconnectedAnnounce: StatusAnnouncement = {\n category: categoryConstants.PNReconnectedCategory,\n operation: status.operation,\n lastTimetoken: this._lastTimetoken,\n currentTimetoken: this._currentTimetoken,\n };\n this._listenerManager.announceStatus(reconnectedAnnounce);\n });\n\n this._reconnectionManager.startPolling();\n this._listenerManager.announceStatus(status);\n } else if (status.category === categoryConstants.PNBadRequestCategory) {\n this._stopHeartbeatTimer();\n this._listenerManager.announceStatus(status);\n } else {\n this._listenerManager.announceStatus(status);\n }\n\n return;\n }\n\n if (this._storedTimetoken) {\n this._currentTimetoken = this._storedTimetoken;\n this._storedTimetoken = null;\n } else {\n this._lastTimetoken = this._currentTimetoken;\n this._currentTimetoken = payload.metadata.timetoken;\n }\n\n if (!this._subscriptionStatusAnnounced) {\n let connectedAnnounce: StatusAnnouncement = {};\n connectedAnnounce.category = categoryConstants.PNConnectedCategory;\n connectedAnnounce.operation = status.operation;\n connectedAnnounce.affectedChannels = this._pendingChannelSubscriptions;\n connectedAnnounce.subscribedChannels = this.getSubscribedChannels();\n connectedAnnounce.affectedChannelGroups = this._pendingChannelGroupSubscriptions;\n connectedAnnounce.lastTimetoken = this._lastTimetoken;\n connectedAnnounce.currentTimetoken = this._currentTimetoken;\n this._subscriptionStatusAnnounced = true;\n this._listenerManager.announceStatus(connectedAnnounce);\n\n // clear the pending connections list\n this._pendingChannelSubscriptions = [];\n this._pendingChannelGroupSubscriptions = [];\n }\n\n let messages = payload.messages || [];\n let { requestMessageCountThreshold, dedupeOnSubscribe } = this._config;\n\n if (requestMessageCountThreshold && messages.length >= requestMessageCountThreshold) {\n let countAnnouncement: StatusAnnouncement = {};\n countAnnouncement.category = categoryConstants.PNRequestMessageCountExceededCategory;\n countAnnouncement.operation = status.operation;\n this._listenerManager.announceStatus(countAnnouncement);\n }\n\n messages.forEach((message) => {\n let channel = message.channel;\n let subscriptionMatch = message.subscriptionMatch;\n let publishMetaData = message.publishMetaData;\n\n if (channel === subscriptionMatch) {\n subscriptionMatch = null;\n }\n\n if (dedupeOnSubscribe) {\n if (this._dedupingManager.isDuplicate(message)) {\n return;\n } else {\n this._dedupingManager.addEntry(message);\n }\n }\n\n if (utils.endsWith(message.channel, '-pnpres')) {\n let announce: PresenceAnnouncement = {};\n announce.channel = null;\n announce.subscription = null;\n\n // deprecated -->\n announce.actualChannel = subscriptionMatch != null ? channel : null;\n announce.subscribedChannel = subscriptionMatch != null ? subscriptionMatch : channel;\n // <-- deprecated\n\n if (channel) {\n announce.channel = channel.substring(0, channel.lastIndexOf('-pnpres'));\n }\n\n if (subscriptionMatch) {\n announce.subscription = subscriptionMatch.substring(0, subscriptionMatch.lastIndexOf('-pnpres'));\n }\n\n announce.action = message.payload.action;\n announce.state = message.payload.data;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.occupancy = message.payload.occupancy;\n announce.uuid = message.payload.uuid;\n announce.timestamp = message.payload.timestamp;\n\n if (message.payload.join) {\n announce.join = message.payload.join;\n }\n\n if (message.payload.leave) {\n announce.leave = message.payload.leave;\n }\n\n if (message.payload.timeout) {\n announce.timeout = message.payload.timeout;\n }\n\n this._listenerManager.announcePresence(announce);\n } else if (message.messageType === 1) {\n // this is a signal message\n let announce: SignalAnnouncement = {};\n announce.channel = null;\n announce.subscription = null;\n\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n if (message.userMetadata) {\n announce.userMetadata = message.userMetadata;\n }\n\n announce.message = message.payload;\n\n this._listenerManager.announceSignal(announce);\n } else if (message.messageType === 2) {\n // this is an object message\n\n let announce: ObjectAnnouncement = {};\n\n announce.channel = null;\n announce.subscription = null;\n\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n if (message.userMetadata) {\n announce.userMetadata = message.userMetadata;\n }\n\n announce.message = {\n event: message.payload.event,\n type: message.payload.type,\n data: message.payload.data,\n };\n\n this._listenerManager.announceObjects(announce);\n\n if (message.payload.type === 'user') {\n this._listenerManager.announceUser(announce);\n } else if (message.payload.type === 'space') {\n this._listenerManager.announceSpace(announce);\n } else if (message.payload.type === 'membership') {\n this._listenerManager.announceMembership(announce);\n }\n } else if (message.messageType === 3) {\n // this is a message action\n let announce: MessageActionAnnouncement = {};\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n announce.data = {\n messageTimetoken: message.payload.data.messageTimetoken,\n actionTimetoken: message.payload.data.actionTimetoken,\n type: message.payload.data.type,\n uuid: message.issuingClientId,\n value: message.payload.data.value,\n };\n\n announce.event = message.payload.event;\n\n this._listenerManager.announceMessageAction(announce);\n } else if (message.messageType === 4) {\n // this is a file message\n let announce: FileAnnouncement = {};\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n let msgPayload = message.payload;\n\n if (this._config.cipherKey) {\n const decryptedPayload = this._crypto.decrypt(message.payload);\n\n if (typeof decryptedPayload === 'object' && decryptedPayload !== null) {\n msgPayload = decryptedPayload;\n }\n }\n\n if (message.userMetadata) {\n announce.userMetadata = message.userMetadata;\n }\n\n announce.message = msgPayload.message;\n\n announce.file = {\n id: msgPayload.file.id,\n name: msgPayload.file.name,\n url: this._getFileUrl({\n id: msgPayload.file.id,\n name: msgPayload.file.name,\n channel,\n }),\n };\n\n this._listenerManager.announceFile(announce);\n } else {\n let announce: MessageAnnouncement = {};\n announce.channel = null;\n announce.subscription = null;\n\n // deprecated -->\n announce.actualChannel = subscriptionMatch != null ? channel : null;\n announce.subscribedChannel = subscriptionMatch != null ? subscriptionMatch : channel;\n // <-- deprecated\n\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n if (message.userMetadata) {\n announce.userMetadata = message.userMetadata;\n }\n\n if (this._config.cipherKey) {\n announce.message = this._crypto.decrypt(message.payload);\n } else {\n announce.message = message.payload;\n }\n\n this._listenerManager.announceMessage(announce);\n }\n });\n\n this._region = payload.metadata.region;\n this._startSubscribeLoop();\n }\n\n _stopSubscribeLoop() {\n if (this._subscribeCall) {\n if (typeof this._subscribeCall.abort === 'function') {\n this._subscribeCall.abort();\n }\n this._subscribeCall = null;\n }\n }\n}\n"],"file":"subscription_manager.js"} \ No newline at end of file +{"version":3,"sources":["core/components/subscription_manager.js"],"names":["subscribeEndpoint","leaveEndpoint","heartbeatEndpoint","setStateEndpoint","timeEndpoint","getFileUrl","config","crypto","listenerManager","_listenerManager","_config","_leaveEndpoint","_heartbeatEndpoint","_setStateEndpoint","_subscribeEndpoint","_getFileUrl","_crypto","_channels","_presenceChannels","_heartbeatChannels","_heartbeatChannelGroups","_channelGroups","_presenceChannelGroups","_pendingChannelSubscriptions","_pendingChannelGroupSubscriptions","_currentTimetoken","_lastTimetoken","_storedTimetoken","_subscriptionStatusAnnounced","_isOnline","_reconnectionManager","ReconnectionManager","_dedupingManager","DedupingManager","args","callback","state","channels","channelGroups","forEach","channel","channelGroup","connected","suppressLeaveEvents","status","announceStatus","reconnect","timetoken","withPresence","withHeartbeats","subscribeKey","console","log","getHeartbeatInterval","push","isOffline","actualChannels","actualChannelGroups","length","affectedChannels","affectedChannelGroups","currentTimetoken","lastTimetoken","Object","keys","_region","stopPolling","adaptUnsubscribeChange","getSubscribedChannels","getSubscribedChannelGroups","_startSubscribeLoop","_registerHeartbeatTimer","_stopSubscribeLoop","_stopHeartbeatTimer","undefined","_performHeartbeatLoop","_heartbeatTimer","setInterval","bind","clearInterval","heartbeatChannels","getHeartbeatChannels","heartbeatChannelGroups","getHeartbeatChannelGroups","presenceState","channelState","channelGroupState","onHeartbeat","error","announceFailedHeartbeats","autoNetworkDetection","disconnect","announceNetworkDown","announceSuccessfulHeartbeats","subscribeArgs","filterExpression","region","_subscribeCall","_processSubscribeResponse","payload","category","categoryConstants","PNTimeoutCategory","PNNetworkIssuesCategory","onReconnection","announceNetworkUp","reconnectedAnnounce","PNReconnectedCategory","operation","startPolling","PNBadRequestCategory","metadata","connectedAnnounce","PNConnectedCategory","subscribedChannels","messages","requestMessageCountThreshold","dedupeOnSubscribe","countAnnouncement","PNRequestMessageCountExceededCategory","message","subscriptionMatch","publishMetaData","isDuplicate","addEntry","utils","endsWith","announce","subscription","actualChannel","subscribedChannel","substring","lastIndexOf","action","data","publishTimetoken","occupancy","uuid","timestamp","join","leave","timeout","announcePresence","messageType","publisher","issuingClientId","userMetadata","announceSignal","event","type","announceObjects","announceUser","announceSpace","announceMembership","messageTimetoken","actionTimetoken","value","announceMessageAction","msgPayload","cipherKey","decryptedPayload","decrypt","file","id","name","url","announceFile","announceMessage","abort"],"mappings":";;;;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAUA;;;AAiFE,0BAUiC;AAAA,QAT/BA,iBAS+B,QAT/BA,iBAS+B;AAAA,QAR/BC,aAQ+B,QAR/BA,aAQ+B;AAAA,QAP/BC,iBAO+B,QAP/BA,iBAO+B;AAAA,QAN/BC,gBAM+B,QAN/BA,gBAM+B;AAAA,QAL/BC,YAK+B,QAL/BA,YAK+B;AAAA,QAJ/BC,UAI+B,QAJ/BA,UAI+B;AAAA,QAH/BC,MAG+B,QAH/BA,MAG+B;AAAA,QAF/BC,MAE+B,QAF/BA,MAE+B;AAAA,QAD/BC,eAC+B,QAD/BA,eAC+B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAC/B,SAAKC,gBAAL,GAAwBD,eAAxB;AACA,SAAKE,OAAL,GAAeJ,MAAf;AAEA,SAAKK,cAAL,GAAsBV,aAAtB;AACA,SAAKW,kBAAL,GAA0BV,iBAA1B;AACA,SAAKW,iBAAL,GAAyBV,gBAAzB;AACA,SAAKW,kBAAL,GAA0Bd,iBAA1B;AACA,SAAKe,WAAL,GAAmBV,UAAnB;AAEA,SAAKW,OAAL,GAAeT,MAAf;AAEA,SAAKU,SAAL,GAAiB,EAAjB;AACA,SAAKC,iBAAL,GAAyB,EAAzB;AAEA,SAAKC,kBAAL,GAA0B,EAA1B;AACA,SAAKC,uBAAL,GAA+B,EAA/B;AAEA,SAAKC,cAAL,GAAsB,EAAtB;AACA,SAAKC,sBAAL,GAA8B,EAA9B;AAEA,SAAKC,4BAAL,GAAoC,EAApC;AACA,SAAKC,iCAAL,GAAyC,EAAzC;AAEA,SAAKC,iBAAL,GAAyB,CAAzB;AACA,SAAKC,cAAL,GAAsB,CAAtB;AACA,SAAKC,gBAAL,GAAwB,IAAxB;AAEA,SAAKC,4BAAL,GAAoC,KAApC;AAEA,SAAKC,SAAL,GAAiB,IAAjB;AAEA,SAAKC,oBAAL,GAA4B,IAAIC,gCAAJ,CAAwB;AAAE3B,MAAAA,YAAY,EAAZA;AAAF,KAAxB,CAA5B;AACA,SAAK4B,gBAAL,GAAwB,IAAIC,4BAAJ,CAAoB;AAAE3B,MAAAA,MAAM,EAANA;AAAF,KAApB,CAAxB;AACD;;;;WAED,0BAAiB4B,IAAjB,EAAkCC,QAAlC,EAAsD;AAAA;;AACpD,UAAQC,KAAR,GAAqDF,IAArD,CAAQE,KAAR;AAAA,2BAAqDF,IAArD,CAAeG,QAAf;AAAA,UAAeA,QAAf,+BAA0B,EAA1B;AAAA,gCAAqDH,IAArD,CAA8BI,aAA9B;AAAA,UAA8BA,aAA9B,oCAA8C,EAA9C;AAEAD,MAAAA,QAAQ,CAACE,OAAT,CAAiB,UAACC,OAAD,EAAa;AAC5B,YAAIA,OAAO,IAAI,KAAI,CAACvB,SAApB,EAA+B,KAAI,CAACA,SAAL,CAAeuB,OAAf,EAAwBJ,KAAxB,GAAgCA,KAAhC;AAChC,OAFD;AAIAE,MAAAA,aAAa,CAACC,OAAd,CAAsB,UAACE,YAAD,EAAkB;AACtC,YAAIA,YAAY,IAAI,KAAI,CAACpB,cAAzB,EAAyC;AACvC,UAAA,KAAI,CAACA,cAAL,CAAoBoB,YAApB,EAAkCL,KAAlC,GAA0CA,KAA1C;AACD;AACF,OAJD;AAMA,aAAO,KAAKvB,iBAAL,CAAuB;AAAEuB,QAAAA,KAAK,EAALA,KAAF;AAASC,QAAAA,QAAQ,EAARA,QAAT;AAAmBC,QAAAA,aAAa,EAAbA;AAAnB,OAAvB,EAA2DH,QAA3D,CAAP;AACD;;;WAED,6BAAoBD,IAApB,EAAwC;AAAA;;AACtC,UAAQQ,SAAR,GAAyDR,IAAzD,CAAQQ,SAAR;AAAA,4BAAyDR,IAAzD,CAAmBG,QAAnB;AAAA,UAAmBA,QAAnB,gCAA8B,EAA9B;AAAA,iCAAyDH,IAAzD,CAAkCI,aAAlC;AAAA,UAAkCA,aAAlC,qCAAkD,EAAlD;;AAEA,UAAII,SAAJ,EAAe;AACbL,QAAAA,QAAQ,CAACE,OAAT,CAAiB,UAACC,OAAD,EAAqB;AACpC,UAAA,MAAI,CAACrB,kBAAL,CAAwBqB,OAAxB,IAAmC;AAAEJ,YAAAA,KAAK,EAAE;AAAT,WAAnC;AACD,SAFD;AAIAE,QAAAA,aAAa,CAACC,OAAd,CAAsB,UAACE,YAAD,EAA0B;AAC9C,UAAA,MAAI,CAACrB,uBAAL,CAA6BqB,YAA7B,IAA6C;AAAEL,YAAAA,KAAK,EAAE;AAAT,WAA7C;AACD,SAFD;AAGD,OARD,MAQO;AACLC,QAAAA,QAAQ,CAACE,OAAT,CAAiB,UAACC,OAAD,EAAa;AAC5B,cAAIA,OAAO,IAAI,MAAI,CAACrB,kBAApB,EAAwC;AACtC,mBAAO,MAAI,CAACA,kBAAL,CAAwBqB,OAAxB,CAAP;AACD;AACF,SAJD;AAMAF,QAAAA,aAAa,CAACC,OAAd,CAAsB,UAACE,YAAD,EAAkB;AACtC,cAAIA,YAAY,IAAI,MAAI,CAACrB,uBAAzB,EAAkD;AAChD,mBAAO,MAAI,CAACA,uBAAL,CAA6BqB,YAA7B,CAAP;AACD;AACF,SAJD;;AAMA,YAAI,KAAK/B,OAAL,CAAaiC,mBAAb,KAAqC,KAAzC,EAAgD;AAC9C,eAAKhC,cAAL,CAAoB;AAAE0B,YAAAA,QAAQ,EAARA,QAAF;AAAYC,YAAAA,aAAa,EAAbA;AAAZ,WAApB,EAAiD,UAACM,MAAD,EAAY;AAC3D,YAAA,MAAI,CAACnC,gBAAL,CAAsBoC,cAAtB,CAAqCD,MAArC;AACD,WAFD;AAGD;AACF;;AAED,WAAKE,SAAL;AACD;;;WAED,8BAAqBZ,IAArB,EAA0C;AAAA;;AACxC,UAAQa,SAAR,GAAuGb,IAAvG,CAAQa,SAAR;AAAA,4BAAuGb,IAAvG,CAAmBG,QAAnB;AAAA,UAAmBA,QAAnB,gCAA8B,EAA9B;AAAA,iCAAuGH,IAAvG,CAAkCI,aAAlC;AAAA,UAAkCA,aAAlC,qCAAkD,EAAlD;AAAA,+BAAuGJ,IAAvG,CAAsDc,YAAtD;AAAA,UAAsDA,YAAtD,mCAAqE,KAArE;AAAA,iCAAuGd,IAAvG,CAA4Ee,cAA5E;AAAA,UAA4EA,cAA5E,qCAA6F,KAA7F;;AAEA,UAAI,CAAC,KAAKvC,OAAL,CAAawC,YAAd,IAA8B,KAAKxC,OAAL,CAAawC,YAAb,KAA8B,EAAhE,EAAoE;AAElE,YAAIC,OAAO,IAAIA,OAAO,CAACC,GAAvB,EAA4B;AAC1BD,UAAAA,OAAO,CAACC,GAAR,CAAY,2CAAZ;AACD;;AACD;AACD;;AAED,UAAIL,SAAJ,EAAe;AACb,aAAKrB,cAAL,GAAsB,KAAKD,iBAA3B;AACA,aAAKA,iBAAL,GAAyBsB,SAAzB;AACD;;AAID,UAAI,KAAKtB,iBAAL,KAA2B,GAA3B,IAAkC,KAAKA,iBAAL,KAA2B,CAAjE,EAAoE;AAClE,aAAKE,gBAAL,GAAwB,KAAKF,iBAA7B;AACA,aAAKA,iBAAL,GAAyB,CAAzB;AACD;;AAEDY,MAAAA,QAAQ,CAACE,OAAT,CAAiB,UAACC,OAAD,EAAqB;AACpC,QAAA,MAAI,CAACvB,SAAL,CAAeuB,OAAf,IAA0B;AAAEJ,UAAAA,KAAK,EAAE;AAAT,SAA1B;AACA,YAAIY,YAAJ,EAAkB,MAAI,CAAC9B,iBAAL,CAAuBsB,OAAvB,IAAkC,EAAlC;AAClB,YAAIS,cAAc,IAAI,MAAI,CAACvC,OAAL,CAAa2C,oBAAb,EAAtB,EAA2D,MAAI,CAAClC,kBAAL,CAAwBqB,OAAxB,IAAmC,EAAnC;;AAE3D,QAAA,MAAI,CAACjB,4BAAL,CAAkC+B,IAAlC,CAAuCd,OAAvC;AACD,OAND;AAQAF,MAAAA,aAAa,CAACC,OAAd,CAAsB,UAACE,YAAD,EAA0B;AAC9C,QAAA,MAAI,CAACpB,cAAL,CAAoBoB,YAApB,IAAoC;AAAEL,UAAAA,KAAK,EAAE;AAAT,SAApC;AACA,YAAIY,YAAJ,EAAkB,MAAI,CAAC1B,sBAAL,CAA4BmB,YAA5B,IAA4C,EAA5C;AAClB,YAAIQ,cAAc,IAAI,MAAI,CAACvC,OAAL,CAAa2C,oBAAb,EAAtB,EAA2D,MAAI,CAACjC,uBAAL,CAA6BqB,YAA7B,IAA6C,EAA7C;;AAE3D,QAAA,MAAI,CAACjB,iCAAL,CAAuC8B,IAAvC,CAA4Cb,YAA5C;AACD,OAND;AAQA,WAAKb,4BAAL,GAAoC,KAApC;AACA,WAAKkB,SAAL;AACD;;;WAED,gCAAuBZ,IAAvB,EAA8CqB,SAA9C,EAAkE;AAAA;;AAChE,4BAA8CrB,IAA9C,CAAQG,QAAR;AAAA,UAAQA,QAAR,gCAAmB,EAAnB;AAAA,iCAA8CH,IAA9C,CAAuBI,aAAvB;AAAA,UAAuBA,aAAvB,qCAAuC,EAAvC;AAIA,UAAMkB,cAAc,GAAG,EAAvB;AACA,UAAMC,mBAAmB,GAAG,EAA5B;AAGApB,MAAAA,QAAQ,CAACE,OAAT,CAAiB,UAACC,OAAD,EAAa;AAC5B,YAAIA,OAAO,IAAI,MAAI,CAACvB,SAApB,EAA+B;AAC7B,iBAAO,MAAI,CAACA,SAAL,CAAeuB,OAAf,CAAP;AACAgB,UAAAA,cAAc,CAACF,IAAf,CAAoBd,OAApB;;AAEA,cAAIA,OAAO,IAAI,MAAI,CAACrB,kBAApB,EAAwC;AACtC,mBAAO,MAAI,CAACA,kBAAL,CAAwBqB,OAAxB,CAAP;AACD;AACF;;AACD,YAAIA,OAAO,IAAI,MAAI,CAACtB,iBAApB,EAAuC;AACrC,iBAAO,MAAI,CAACA,iBAAL,CAAuBsB,OAAvB,CAAP;AACAgB,UAAAA,cAAc,CAACF,IAAf,CAAoBd,OAApB;AACD;AACF,OAbD;AAeAF,MAAAA,aAAa,CAACC,OAAd,CAAsB,UAACE,YAAD,EAAkB;AACtC,YAAIA,YAAY,IAAI,MAAI,CAACpB,cAAzB,EAAyC;AACvC,iBAAO,MAAI,CAACA,cAAL,CAAoBoB,YAApB,CAAP;AACAgB,UAAAA,mBAAmB,CAACH,IAApB,CAAyBb,YAAzB;;AAEA,cAAIA,YAAY,IAAI,MAAI,CAACrB,uBAAzB,EAAkD;AAChD,mBAAO,MAAI,CAACA,uBAAL,CAA6BqB,YAA7B,CAAP;AACD;AACF;;AACD,YAAIA,YAAY,IAAI,MAAI,CAACnB,sBAAzB,EAAiD;AAC/C,iBAAO,MAAI,CAACD,cAAL,CAAoBoB,YAApB,CAAP;AACAgB,UAAAA,mBAAmB,CAACH,IAApB,CAAyBb,YAAzB;AACD;AACF,OAbD;;AAgBA,UAAIe,cAAc,CAACE,MAAf,KAA0B,CAA1B,IAA+BD,mBAAmB,CAACC,MAApB,KAA+B,CAAlE,EAAqE;AACnE;AACD;;AAED,UAAI,KAAKhD,OAAL,CAAaiC,mBAAb,KAAqC,KAArC,IAA8C,CAACY,SAAnD,EAA8D;AAC5D,aAAK5C,cAAL,CAAoB;AAAE0B,UAAAA,QAAQ,EAAEmB,cAAZ;AAA4BlB,UAAAA,aAAa,EAAEmB;AAA3C,SAApB,EAAsF,UAACb,MAAD,EAAY;AAChGA,UAAAA,MAAM,CAACe,gBAAP,GAA0BH,cAA1B;AACAZ,UAAAA,MAAM,CAACgB,qBAAP,GAA+BH,mBAA/B;AACAb,UAAAA,MAAM,CAACiB,gBAAP,GAA0B,MAAI,CAACpC,iBAA/B;AACAmB,UAAAA,MAAM,CAACkB,aAAP,GAAuB,MAAI,CAACpC,cAA5B;;AACA,UAAA,MAAI,CAACjB,gBAAL,CAAsBoC,cAAtB,CAAqCD,MAArC;AACD,SAND;AAOD;;AAGD,UACEmB,MAAM,CAACC,IAAP,CAAY,KAAK/C,SAAjB,EAA4ByC,MAA5B,KAAuC,CAAvC,IACAK,MAAM,CAACC,IAAP,CAAY,KAAK9C,iBAAjB,EAAoCwC,MAApC,KAA+C,CAD/C,IAEAK,MAAM,CAACC,IAAP,CAAY,KAAK3C,cAAjB,EAAiCqC,MAAjC,KAA4C,CAF5C,IAGAK,MAAM,CAACC,IAAP,CAAY,KAAK1C,sBAAjB,EAAyCoC,MAAzC,KAAoD,CAJtD,EAKE;AACA,aAAKhC,cAAL,GAAsB,CAAtB;AACA,aAAKD,iBAAL,GAAyB,CAAzB;AACA,aAAKE,gBAAL,GAAwB,IAAxB;AACA,aAAKsC,OAAL,GAAe,IAAf;;AACA,aAAKnC,oBAAL,CAA0BoC,WAA1B;AACD;;AAED,WAAKpB,SAAL;AACD;;;WAED,wBAAeS,SAAf,EAAmC;AACjC,WAAKY,sBAAL,CACE;AACE9B,QAAAA,QAAQ,EAAE,KAAK+B,qBAAL,EADZ;AAEE9B,QAAAA,aAAa,EAAE,KAAK+B,0BAAL;AAFjB,OADF,EAKEd,SALF;AAOD;;;WAED,gCAAsC;AACpC,aAAOQ,MAAM,CAACC,IAAP,CAAY,KAAK7C,kBAAjB,CAAP;AACD;;;WAED,qCAA2C;AACzC,aAAO4C,MAAM,CAACC,IAAP,CAAY,KAAK5C,uBAAjB,CAAP;AACD;;;WAED,iCAAuC;AACrC,aAAO2C,MAAM,CAACC,IAAP,CAAY,KAAK/C,SAAjB,CAAP;AACD;;;WAED,sCAA4C;AAC1C,aAAO8C,MAAM,CAACC,IAAP,CAAY,KAAK3C,cAAjB,CAAP;AACD;;;WAED,qBAAY;AACV,WAAKiD,mBAAL;;AACA,WAAKC,uBAAL;AACD;;;WAED,sBAAa;AACX,WAAKC,kBAAL;;AACA,WAAKC,mBAAL;;AACA,WAAK3C,oBAAL,CAA0BoC,WAA1B;AACD;;;WAED,mCAA0B;AACxB,WAAKO,mBAAL;;AAGA,UAAI,KAAK/D,OAAL,CAAa2C,oBAAb,OAAwC,CAAxC,IAA6C,KAAK3C,OAAL,CAAa2C,oBAAb,OAAwCqB,SAAzF,EAAoG;AAClG;AACD;;AAED,WAAKC,qBAAL;;AAEA,WAAKC,eAAL,GAAuBC,WAAW,CAChC,KAAKF,qBAAL,CAA2BG,IAA3B,CAAgC,IAAhC,CADgC,EAEhC,KAAKpE,OAAL,CAAa2C,oBAAb,KAAsC,IAFN,CAAlC;AAID;;;WAED,+BAAsB;AACpB,UAAI,KAAKuB,eAAT,EAA0B;AAExBG,QAAAA,aAAa,CAAC,KAAKH,eAAN,CAAb;AACA,aAAKA,eAAL,GAAuB,IAAvB;AACD;AACF;;;WAED,iCAAwB;AAAA;;AACtB,UAAMI,iBAAiB,GAAG,KAAKC,oBAAL,EAA1B;AAEA,UAAMC,sBAAsB,GAAG,KAAKC,yBAAL,EAA/B;AAEA,UAAIC,aAAa,GAAG,EAApB;;AAEA,UAAIJ,iBAAiB,CAACtB,MAAlB,KAA6B,CAA7B,IAAkCwB,sBAAsB,CAACxB,MAAvB,KAAkC,CAAxE,EAA2E;AACzE;AACD;;AAED,WAAKU,qBAAL,GAA6B7B,OAA7B,CAAqC,UAACC,OAAD,EAAa;AAChD,YAAI6C,YAAY,GAAG,MAAI,CAACpE,SAAL,CAAeuB,OAAf,EAAwBJ,KAA3C;;AACA,YAAI2B,MAAM,CAACC,IAAP,CAAYqB,YAAZ,EAA0B3B,MAA9B,EAAsC;AACpC0B,UAAAA,aAAa,CAAC5C,OAAD,CAAb,GAAyB6C,YAAzB;AACD;AACF,OALD;AAOA,WAAKhB,0BAAL,GAAkC9B,OAAlC,CAA0C,UAACE,YAAD,EAAkB;AAC1D,YAAI6C,iBAAiB,GAAG,MAAI,CAACjE,cAAL,CAAoBoB,YAApB,EAAkCL,KAA1D;;AACA,YAAI2B,MAAM,CAACC,IAAP,CAAYsB,iBAAZ,EAA+B5B,MAAnC,EAA2C;AACzC0B,UAAAA,aAAa,CAAC3C,YAAD,CAAb,GAA8B6C,iBAA9B;AACD;AACF,OALD;;AAOA,UAAIC,WAAW,GAAG,SAAdA,WAAc,CAAC3C,MAAD,EAAgC;AAChD,YAAIA,MAAM,CAAC4C,KAAP,IAAgB,MAAI,CAAC9E,OAAL,CAAa+E,wBAAjC,EAA2D;AACzD,UAAA,MAAI,CAAChF,gBAAL,CAAsBoC,cAAtB,CAAqCD,MAArC;AACD;;AAED,YAAIA,MAAM,CAAC4C,KAAP,IAAgB,MAAI,CAAC9E,OAAL,CAAagF,oBAA7B,IAAqD,MAAI,CAAC7D,SAA9D,EAAyE;AACvE,UAAA,MAAI,CAACA,SAAL,GAAiB,KAAjB;;AACA,UAAA,MAAI,CAAC8D,UAAL;;AACA,UAAA,MAAI,CAAClF,gBAAL,CAAsBmF,mBAAtB;;AACA,UAAA,MAAI,CAAC9C,SAAL;AACD;;AAED,YAAI,CAACF,MAAM,CAAC4C,KAAR,IAAiB,MAAI,CAAC9E,OAAL,CAAamF,4BAAlC,EAAgE;AAC9D,UAAA,MAAI,CAACpF,gBAAL,CAAsBoC,cAAtB,CAAqCD,MAArC;AACD;AACF,OAfD;;AAiBA,WAAKhC,kBAAL,CACE;AACEyB,QAAAA,QAAQ,EAAE2C,iBADZ;AAEE1C,QAAAA,aAAa,EAAE4C,sBAFjB;AAGE9C,QAAAA,KAAK,EAAEgD;AAHT,OADF,EAMEG,WAAW,CAACT,IAAZ,CAAiB,IAAjB,CANF;AAQD;;;WAED,+BAAsB;AAAA;;AACpB,WAAKN,kBAAL;;AACA,UAAIY,aAAa,GAAG,EAApB;AACA,UAAI/C,QAAQ,GAAG,EAAf;AACA,UAAIC,aAAa,GAAG,EAApB;AAEAyB,MAAAA,MAAM,CAACC,IAAP,CAAY,KAAK/C,SAAjB,EAA4BsB,OAA5B,CAAoC,UAACC,OAAD,EAAa;AAC/C,YAAI6C,YAAY,GAAG,MAAI,CAACpE,SAAL,CAAeuB,OAAf,EAAwBJ,KAA3C;;AAEA,YAAI2B,MAAM,CAACC,IAAP,CAAYqB,YAAZ,EAA0B3B,MAA9B,EAAsC;AACpC0B,UAAAA,aAAa,CAAC5C,OAAD,CAAb,GAAyB6C,YAAzB;AACD;;AAEDhD,QAAAA,QAAQ,CAACiB,IAAT,CAAcd,OAAd;AACD,OARD;AASAuB,MAAAA,MAAM,CAACC,IAAP,CAAY,KAAK9C,iBAAjB,EAAoCqB,OAApC,CAA4C,UAACC,OAAD,EAAa;AACvDH,QAAAA,QAAQ,CAACiB,IAAT,WAAiBd,OAAjB;AACD,OAFD;AAIAuB,MAAAA,MAAM,CAACC,IAAP,CAAY,KAAK3C,cAAjB,EAAiCkB,OAAjC,CAAyC,UAACE,YAAD,EAAkB;AACzD,YAAI6C,iBAAiB,GAAG,MAAI,CAACjE,cAAL,CAAoBoB,YAApB,EAAkCL,KAA1D;;AAEA,YAAI2B,MAAM,CAACC,IAAP,CAAYsB,iBAAZ,EAA+B5B,MAAnC,EAA2C;AACzC0B,UAAAA,aAAa,CAAC3C,YAAD,CAAb,GAA8B6C,iBAA9B;AACD;;AAEDhD,QAAAA,aAAa,CAACgB,IAAd,CAAmBb,YAAnB;AACD,OARD;AASAsB,MAAAA,MAAM,CAACC,IAAP,CAAY,KAAK1C,sBAAjB,EAAyCiB,OAAzC,CAAiD,UAACE,YAAD,EAAkB;AACjEH,QAAAA,aAAa,CAACgB,IAAd,WAAsBb,YAAtB;AACD,OAFD;;AAIA,UAAIJ,QAAQ,CAACqB,MAAT,KAAoB,CAApB,IAAyBpB,aAAa,CAACoB,MAAd,KAAyB,CAAtD,EAAyD;AACvD;AACD;;AAED,UAAMoC,aAAa,GAAG;AACpBzD,QAAAA,QAAQ,EAARA,QADoB;AAEpBC,QAAAA,aAAa,EAAbA,aAFoB;AAGpBF,QAAAA,KAAK,EAAEgD,aAHa;AAIpBrC,QAAAA,SAAS,EAAE,KAAKtB,iBAJI;AAKpBsE,QAAAA,gBAAgB,EAAE,KAAKrF,OAAL,CAAaqF,gBALX;AAMpBC,QAAAA,MAAM,EAAE,KAAK/B;AANO,OAAtB;AASA,WAAKgC,cAAL,GAAsB,KAAKnF,kBAAL,CAAwBgF,aAAxB,EAAuC,KAAKI,yBAAL,CAA+BpB,IAA/B,CAAoC,IAApC,CAAvC,CAAtB;AACD;;;WAED,mCAA0BlC,MAA1B,EAAsDuD,OAAtD,EAAkF;AAAA;;AAChF,UAAIvD,MAAM,CAAC4C,KAAX,EAAkB;AAEhB,YAAI5C,MAAM,CAACwD,QAAP,KAAoBC,uBAAkBC,iBAA1C,EAA6D;AAC3D,eAAKhC,mBAAL;AACD,SAFD,MAEO,IAAI1B,MAAM,CAACwD,QAAP,KAAoBC,uBAAkBE,uBAA1C,EAAmE;AAExE,eAAKZ,UAAL;;AAEA,cAAI/C,MAAM,CAAC4C,KAAP,IAAgB,KAAK9E,OAAL,CAAagF,oBAA7B,IAAqD,KAAK7D,SAA9D,EAAyE;AACvE,iBAAKA,SAAL,GAAiB,KAAjB;;AACA,iBAAKpB,gBAAL,CAAsBmF,mBAAtB;AACD;;AAED,eAAK9D,oBAAL,CAA0B0E,cAA1B,CAAyC,YAAM;AAC7C,gBAAI,MAAI,CAAC9F,OAAL,CAAagF,oBAAb,IAAqC,CAAC,MAAI,CAAC7D,SAA/C,EAA0D;AACxD,cAAA,MAAI,CAACA,SAAL,GAAiB,IAAjB;;AACA,cAAA,MAAI,CAACpB,gBAAL,CAAsBgG,iBAAtB;AACD;;AACD,YAAA,MAAI,CAAC3D,SAAL;;AACA,YAAA,MAAI,CAAClB,4BAAL,GAAoC,IAApC;AACA,gBAAI8E,mBAAuC,GAAG;AAC5CN,cAAAA,QAAQ,EAAEC,uBAAkBM,qBADgB;AAE5CC,cAAAA,SAAS,EAAEhE,MAAM,CAACgE,SAF0B;AAG5C9C,cAAAA,aAAa,EAAE,MAAI,CAACpC,cAHwB;AAI5CmC,cAAAA,gBAAgB,EAAE,MAAI,CAACpC;AAJqB,aAA9C;;AAMA,YAAA,MAAI,CAAChB,gBAAL,CAAsBoC,cAAtB,CAAqC6D,mBAArC;AACD,WAdD;;AAgBA,eAAK5E,oBAAL,CAA0B+E,YAA1B;;AACA,eAAKpG,gBAAL,CAAsBoC,cAAtB,CAAqCD,MAArC;AACD,SA3BM,MA2BA,IAAIA,MAAM,CAACwD,QAAP,KAAoBC,uBAAkBS,oBAA1C,EAAgE;AACrE,eAAKrC,mBAAL;;AACA,eAAKhE,gBAAL,CAAsBoC,cAAtB,CAAqCD,MAArC;AACD,SAHM,MAGA;AACL,eAAKnC,gBAAL,CAAsBoC,cAAtB,CAAqCD,MAArC;AACD;;AAED;AACD;;AAED,UAAI,KAAKjB,gBAAT,EAA2B;AACzB,aAAKF,iBAAL,GAAyB,KAAKE,gBAA9B;AACA,aAAKA,gBAAL,GAAwB,IAAxB;AACD,OAHD,MAGO;AACL,aAAKD,cAAL,GAAsB,KAAKD,iBAA3B;AACA,aAAKA,iBAAL,GAAyB0E,OAAO,CAACY,QAAR,CAAiBhE,SAA1C;AACD;;AAED,UAAI,CAAC,KAAKnB,4BAAV,EAAwC;AACtC,YAAIoF,iBAAqC,GAAG,EAA5C;AACAA,QAAAA,iBAAiB,CAACZ,QAAlB,GAA6BC,uBAAkBY,mBAA/C;AACAD,QAAAA,iBAAiB,CAACJ,SAAlB,GAA8BhE,MAAM,CAACgE,SAArC;AACAI,QAAAA,iBAAiB,CAACrD,gBAAlB,GAAqC,KAAKpC,4BAA1C;AACAyF,QAAAA,iBAAiB,CAACE,kBAAlB,GAAuC,KAAK9C,qBAAL,EAAvC;AACA4C,QAAAA,iBAAiB,CAACpD,qBAAlB,GAA0C,KAAKpC,iCAA/C;AACAwF,QAAAA,iBAAiB,CAAClD,aAAlB,GAAkC,KAAKpC,cAAvC;AACAsF,QAAAA,iBAAiB,CAACnD,gBAAlB,GAAqC,KAAKpC,iBAA1C;AACA,aAAKG,4BAAL,GAAoC,IAApC;;AACA,aAAKnB,gBAAL,CAAsBoC,cAAtB,CAAqCmE,iBAArC;;AAGA,aAAKzF,4BAAL,GAAoC,EAApC;AACA,aAAKC,iCAAL,GAAyC,EAAzC;AACD;;AAED,UAAI2F,QAAQ,GAAGhB,OAAO,CAACgB,QAAR,IAAoB,EAAnC;AACA,0BAA0D,KAAKzG,OAA/D;AAAA,UAAM0G,4BAAN,iBAAMA,4BAAN;AAAA,UAAoCC,iBAApC,iBAAoCA,iBAApC;;AAEA,UAAID,4BAA4B,IAAID,QAAQ,CAACzD,MAAT,IAAmB0D,4BAAvD,EAAqF;AACnF,YAAIE,iBAAqC,GAAG,EAA5C;AACAA,QAAAA,iBAAiB,CAAClB,QAAlB,GAA6BC,uBAAkBkB,qCAA/C;AACAD,QAAAA,iBAAiB,CAACV,SAAlB,GAA8BhE,MAAM,CAACgE,SAArC;;AACA,aAAKnG,gBAAL,CAAsBoC,cAAtB,CAAqCyE,iBAArC;AACD;;AAEDH,MAAAA,QAAQ,CAAC5E,OAAT,CAAiB,UAACiF,OAAD,EAAa;AAC5B,YAAIhF,OAAO,GAAGgF,OAAO,CAAChF,OAAtB;AACA,YAAIiF,iBAAiB,GAAGD,OAAO,CAACC,iBAAhC;AACA,YAAIC,eAAe,GAAGF,OAAO,CAACE,eAA9B;;AAEA,YAAIlF,OAAO,KAAKiF,iBAAhB,EAAmC;AACjCA,UAAAA,iBAAiB,GAAG,IAApB;AACD;;AAED,YAAIJ,iBAAJ,EAAuB;AACrB,cAAI,MAAI,CAACrF,gBAAL,CAAsB2F,WAAtB,CAAkCH,OAAlC,CAAJ,EAAgD;AAC9C;AACD,WAFD,MAEO;AACL,YAAA,MAAI,CAACxF,gBAAL,CAAsB4F,QAAtB,CAA+BJ,OAA/B;AACD;AACF;;AAED,YAAIK,kBAAMC,QAAN,CAAeN,OAAO,CAAChF,OAAvB,EAAgC,SAAhC,CAAJ,EAAgD;AAC9C,cAAIuF,QAA8B,GAAG,EAArC;AACAA,UAAAA,QAAQ,CAACvF,OAAT,GAAmB,IAAnB;AACAuF,UAAAA,QAAQ,CAACC,YAAT,GAAwB,IAAxB;AAGAD,UAAAA,QAAQ,CAACE,aAAT,GAAyBR,iBAAiB,IAAI,IAArB,GAA4BjF,OAA5B,GAAsC,IAA/D;AACAuF,UAAAA,QAAQ,CAACG,iBAAT,GAA6BT,iBAAiB,IAAI,IAArB,GAA4BA,iBAA5B,GAAgDjF,OAA7E;;AAGA,cAAIA,OAAJ,EAAa;AACXuF,YAAAA,QAAQ,CAACvF,OAAT,GAAmBA,OAAO,CAAC2F,SAAR,CAAkB,CAAlB,EAAqB3F,OAAO,CAAC4F,WAAR,CAAoB,SAApB,CAArB,CAAnB;AACD;;AAED,cAAIX,iBAAJ,EAAuB;AACrBM,YAAAA,QAAQ,CAACC,YAAT,GAAwBP,iBAAiB,CAACU,SAAlB,CAA4B,CAA5B,EAA+BV,iBAAiB,CAACW,WAAlB,CAA8B,SAA9B,CAA/B,CAAxB;AACD;;AAEDL,UAAAA,QAAQ,CAACM,MAAT,GAAkBb,OAAO,CAACrB,OAAR,CAAgBkC,MAAlC;AACAN,UAAAA,QAAQ,CAAC3F,KAAT,GAAiBoF,OAAO,CAACrB,OAAR,CAAgBmC,IAAjC;AACAP,UAAAA,QAAQ,CAAChF,SAAT,GAAqB2E,eAAe,CAACa,gBAArC;AACAR,UAAAA,QAAQ,CAACS,SAAT,GAAqBhB,OAAO,CAACrB,OAAR,CAAgBqC,SAArC;AACAT,UAAAA,QAAQ,CAACU,IAAT,GAAgBjB,OAAO,CAACrB,OAAR,CAAgBsC,IAAhC;AACAV,UAAAA,QAAQ,CAACW,SAAT,GAAqBlB,OAAO,CAACrB,OAAR,CAAgBuC,SAArC;;AAEA,cAAIlB,OAAO,CAACrB,OAAR,CAAgBwC,IAApB,EAA0B;AACxBZ,YAAAA,QAAQ,CAACY,IAAT,GAAgBnB,OAAO,CAACrB,OAAR,CAAgBwC,IAAhC;AACD;;AAED,cAAInB,OAAO,CAACrB,OAAR,CAAgByC,KAApB,EAA2B;AACzBb,YAAAA,QAAQ,CAACa,KAAT,GAAiBpB,OAAO,CAACrB,OAAR,CAAgByC,KAAjC;AACD;;AAED,cAAIpB,OAAO,CAACrB,OAAR,CAAgB0C,OAApB,EAA6B;AAC3Bd,YAAAA,QAAQ,CAACc,OAAT,GAAmBrB,OAAO,CAACrB,OAAR,CAAgB0C,OAAnC;AACD;;AAED,UAAA,MAAI,CAACpI,gBAAL,CAAsBqI,gBAAtB,CAAuCf,QAAvC;AACD,SAtCD,MAsCO,IAAIP,OAAO,CAACuB,WAAR,KAAwB,CAA5B,EAA+B;AAEpC,cAAIhB,SAA4B,GAAG,EAAnC;AACAA,UAAAA,SAAQ,CAACvF,OAAT,GAAmB,IAAnB;AACAuF,UAAAA,SAAQ,CAACC,YAAT,GAAwB,IAAxB;AAEAD,UAAAA,SAAQ,CAACvF,OAAT,GAAmBA,OAAnB;AACAuF,UAAAA,SAAQ,CAACC,YAAT,GAAwBP,iBAAxB;AACAM,UAAAA,SAAQ,CAAChF,SAAT,GAAqB2E,eAAe,CAACa,gBAArC;AACAR,UAAAA,SAAQ,CAACiB,SAAT,GAAqBxB,OAAO,CAACyB,eAA7B;;AAEA,cAAIzB,OAAO,CAAC0B,YAAZ,EAA0B;AACxBnB,YAAAA,SAAQ,CAACmB,YAAT,GAAwB1B,OAAO,CAAC0B,YAAhC;AACD;;AAEDnB,UAAAA,SAAQ,CAACP,OAAT,GAAmBA,OAAO,CAACrB,OAA3B;;AAEA,UAAA,MAAI,CAAC1F,gBAAL,CAAsB0I,cAAtB,CAAqCpB,SAArC;AACD,SAlBM,MAkBA,IAAIP,OAAO,CAACuB,WAAR,KAAwB,CAA5B,EAA+B;AAGpC,cAAIhB,UAA4B,GAAG,EAAnC;AAEAA,UAAAA,UAAQ,CAACvF,OAAT,GAAmB,IAAnB;AACAuF,UAAAA,UAAQ,CAACC,YAAT,GAAwB,IAAxB;AAEAD,UAAAA,UAAQ,CAACvF,OAAT,GAAmBA,OAAnB;AACAuF,UAAAA,UAAQ,CAACC,YAAT,GAAwBP,iBAAxB;AACAM,UAAAA,UAAQ,CAAChF,SAAT,GAAqB2E,eAAe,CAACa,gBAArC;AACAR,UAAAA,UAAQ,CAACiB,SAAT,GAAqBxB,OAAO,CAACyB,eAA7B;;AAEA,cAAIzB,OAAO,CAAC0B,YAAZ,EAA0B;AACxBnB,YAAAA,UAAQ,CAACmB,YAAT,GAAwB1B,OAAO,CAAC0B,YAAhC;AACD;;AAEDnB,UAAAA,UAAQ,CAACP,OAAT,GAAmB;AACjB4B,YAAAA,KAAK,EAAE5B,OAAO,CAACrB,OAAR,CAAgBiD,KADN;AAEjBC,YAAAA,IAAI,EAAE7B,OAAO,CAACrB,OAAR,CAAgBkD,IAFL;AAGjBf,YAAAA,IAAI,EAAEd,OAAO,CAACrB,OAAR,CAAgBmC;AAHL,WAAnB;;AAMA,UAAA,MAAI,CAAC7H,gBAAL,CAAsB6I,eAAtB,CAAsCvB,UAAtC;;AAEA,cAAIP,OAAO,CAACrB,OAAR,CAAgBkD,IAAhB,KAAyB,MAA7B,EAAqC;AACnC,YAAA,MAAI,CAAC5I,gBAAL,CAAsB8I,YAAtB,CAAmCxB,UAAnC;AACD,WAFD,MAEO,IAAIP,OAAO,CAACrB,OAAR,CAAgBkD,IAAhB,KAAyB,OAA7B,EAAsC;AAC3C,YAAA,MAAI,CAAC5I,gBAAL,CAAsB+I,aAAtB,CAAoCzB,UAApC;AACD,WAFM,MAEA,IAAIP,OAAO,CAACrB,OAAR,CAAgBkD,IAAhB,KAAyB,YAA7B,EAA2C;AAChD,YAAA,MAAI,CAAC5I,gBAAL,CAAsBgJ,kBAAtB,CAAyC1B,UAAzC;AACD;AACF,SAhCM,MAgCA,IAAIP,OAAO,CAACuB,WAAR,KAAwB,CAA5B,EAA+B;AAEpC,cAAIhB,UAAmC,GAAG,EAA1C;AACAA,UAAAA,UAAQ,CAACvF,OAAT,GAAmBA,OAAnB;AACAuF,UAAAA,UAAQ,CAACC,YAAT,GAAwBP,iBAAxB;AACAM,UAAAA,UAAQ,CAAChF,SAAT,GAAqB2E,eAAe,CAACa,gBAArC;AACAR,UAAAA,UAAQ,CAACiB,SAAT,GAAqBxB,OAAO,CAACyB,eAA7B;AAEAlB,UAAAA,UAAQ,CAACO,IAAT,GAAgB;AACdoB,YAAAA,gBAAgB,EAAElC,OAAO,CAACrB,OAAR,CAAgBmC,IAAhB,CAAqBoB,gBADzB;AAEdC,YAAAA,eAAe,EAAEnC,OAAO,CAACrB,OAAR,CAAgBmC,IAAhB,CAAqBqB,eAFxB;AAGdN,YAAAA,IAAI,EAAE7B,OAAO,CAACrB,OAAR,CAAgBmC,IAAhB,CAAqBe,IAHb;AAIdZ,YAAAA,IAAI,EAAEjB,OAAO,CAACyB,eAJA;AAKdW,YAAAA,KAAK,EAAEpC,OAAO,CAACrB,OAAR,CAAgBmC,IAAhB,CAAqBsB;AALd,WAAhB;AAQA7B,UAAAA,UAAQ,CAACqB,KAAT,GAAiB5B,OAAO,CAACrB,OAAR,CAAgBiD,KAAjC;;AAEA,UAAA,MAAI,CAAC3I,gBAAL,CAAsBoJ,qBAAtB,CAA4C9B,UAA5C;AACD,SAnBM,MAmBA,IAAIP,OAAO,CAACuB,WAAR,KAAwB,CAA5B,EAA+B;AAEpC,cAAIhB,UAA0B,GAAG,EAAjC;AACAA,UAAAA,UAAQ,CAACvF,OAAT,GAAmBA,OAAnB;AACAuF,UAAAA,UAAQ,CAACC,YAAT,GAAwBP,iBAAxB;AACAM,UAAAA,UAAQ,CAAChF,SAAT,GAAqB2E,eAAe,CAACa,gBAArC;AACAR,UAAAA,UAAQ,CAACiB,SAAT,GAAqBxB,OAAO,CAACyB,eAA7B;AAEA,cAAIa,UAAU,GAAGtC,OAAO,CAACrB,OAAzB;;AAEA,cAAI,MAAI,CAACzF,OAAL,CAAaqJ,SAAjB,EAA4B;AAC1B,gBAAMC,gBAAgB,GAAG,MAAI,CAAChJ,OAAL,CAAaiJ,OAAb,CAAqBzC,OAAO,CAACrB,OAA7B,CAAzB;;AAEA,gBAAI,yBAAO6D,gBAAP,MAA4B,QAA5B,IAAwCA,gBAAgB,KAAK,IAAjE,EAAuE;AACrEF,cAAAA,UAAU,GAAGE,gBAAb;AACD;AACF;;AAED,cAAIxC,OAAO,CAAC0B,YAAZ,EAA0B;AACxBnB,YAAAA,UAAQ,CAACmB,YAAT,GAAwB1B,OAAO,CAAC0B,YAAhC;AACD;;AAEDnB,UAAAA,UAAQ,CAACP,OAAT,GAAmBsC,UAAU,CAACtC,OAA9B;AAEAO,UAAAA,UAAQ,CAACmC,IAAT,GAAgB;AACdC,YAAAA,EAAE,EAAEL,UAAU,CAACI,IAAX,CAAgBC,EADN;AAEdC,YAAAA,IAAI,EAAEN,UAAU,CAACI,IAAX,CAAgBE,IAFR;AAGdC,YAAAA,GAAG,EAAE,MAAI,CAACtJ,WAAL,CAAiB;AACpBoJ,cAAAA,EAAE,EAAEL,UAAU,CAACI,IAAX,CAAgBC,EADA;AAEpBC,cAAAA,IAAI,EAAEN,UAAU,CAACI,IAAX,CAAgBE,IAFF;AAGpB5H,cAAAA,OAAO,EAAPA;AAHoB,aAAjB;AAHS,WAAhB;;AAUA,UAAA,MAAI,CAAC/B,gBAAL,CAAsB6J,YAAtB,CAAmCvC,UAAnC;AACD,SAnCM,MAmCA;AACL,cAAIA,UAA6B,GAAG,EAApC;AACAA,UAAAA,UAAQ,CAACvF,OAAT,GAAmB,IAAnB;AACAuF,UAAAA,UAAQ,CAACC,YAAT,GAAwB,IAAxB;AAGAD,UAAAA,UAAQ,CAACE,aAAT,GAAyBR,iBAAiB,IAAI,IAArB,GAA4BjF,OAA5B,GAAsC,IAA/D;AACAuF,UAAAA,UAAQ,CAACG,iBAAT,GAA6BT,iBAAiB,IAAI,IAArB,GAA4BA,iBAA5B,GAAgDjF,OAA7E;AAGAuF,UAAAA,UAAQ,CAACvF,OAAT,GAAmBA,OAAnB;AACAuF,UAAAA,UAAQ,CAACC,YAAT,GAAwBP,iBAAxB;AACAM,UAAAA,UAAQ,CAAChF,SAAT,GAAqB2E,eAAe,CAACa,gBAArC;AACAR,UAAAA,UAAQ,CAACiB,SAAT,GAAqBxB,OAAO,CAACyB,eAA7B;;AAEA,cAAIzB,OAAO,CAAC0B,YAAZ,EAA0B;AACxBnB,YAAAA,UAAQ,CAACmB,YAAT,GAAwB1B,OAAO,CAAC0B,YAAhC;AACD;;AAED,cAAI,MAAI,CAACxI,OAAL,CAAaqJ,SAAjB,EAA4B;AAC1BhC,YAAAA,UAAQ,CAACP,OAAT,GAAmB,MAAI,CAACxG,OAAL,CAAaiJ,OAAb,CAAqBzC,OAAO,CAACrB,OAA7B,CAAnB;AACD,WAFD,MAEO;AACL4B,YAAAA,UAAQ,CAACP,OAAT,GAAmBA,OAAO,CAACrB,OAA3B;AACD;;AAED,UAAA,MAAI,CAAC1F,gBAAL,CAAsB8J,eAAtB,CAAsCxC,UAAtC;AACD;AACF,OA1LD;AA4LA,WAAK9D,OAAL,GAAekC,OAAO,CAACY,QAAR,CAAiBf,MAAhC;;AACA,WAAK1B,mBAAL;AACD;;;WAED,8BAAqB;AACnB,UAAI,KAAK2B,cAAT,EAAyB;AACvB,YAAI,OAAO,KAAKA,cAAL,CAAoBuE,KAA3B,KAAqC,UAAzC,EAAqD;AACnD,eAAKvE,cAAL,CAAoBuE,KAApB;AACD;;AACD,aAAKvE,cAAL,GAAsB,IAAtB;AACD;AACF","sourcesContent":["/* @flow */\nimport Crypto from '../components/cryptography';\nimport Config from '../components/config';\nimport ListenerManager from '../components/listener_manager';\nimport ReconnectionManager from '../components/reconnection_manager';\nimport DedupingManager from '../components/deduping_manager';\nimport utils from '../utils';\nimport {\n MessageActionAnnouncement,\n MessageAnnouncement,\n SignalAnnouncement,\n ObjectAnnouncement,\n SubscribeEnvelope,\n StatusAnnouncement,\n PresenceAnnouncement,\n FileAnnouncement,\n} from '../flow_interfaces';\nimport categoryConstants from '../constants/categories';\n\ntype SubscribeArgs = {\n channels: Array,\n channelGroups: Array,\n withPresence: ?boolean,\n timetoken: ?number,\n withHeartbeats: ?boolean,\n};\n\ntype PresenceArgs = {\n channels: Array,\n channelGroups: Array,\n connected: boolean,\n};\n\ntype UnsubscribeArgs = {\n channels: Array,\n channelGroups: Array,\n};\n\ntype StateArgs = {\n channels: Array,\n channelGroups: Array,\n state: Object,\n};\n\ntype SubscriptionManagerConstruct = {\n leaveEndpoint: Function,\n subscribeEndpoint: Function,\n timeEndpoint: Function,\n heartbeatEndpoint: Function,\n setStateEndpoint: Function,\n getFileUrl: ({| id: string, name: string, channel: string |}) => string,\n config: Config,\n crypto: Crypto,\n listenerManager: ListenerManager,\n};\n\nexport default class {\n _crypto: Crypto;\n _config: Config;\n _listenerManager: ListenerManager;\n _reconnectionManager: ReconnectionManager;\n\n _leaveEndpoint: Function;\n _heartbeatEndpoint: Function;\n _setStateEndpoint: Function;\n _subscribeEndpoint: Function;\n _getFileUrl: ({| id: string, name: string, channel: string |}) => string;\n\n _channels: Object;\n _presenceChannels: Object;\n\n _heartbeatChannels: Object;\n _heartbeatChannelGroups: Object;\n\n _channelGroups: Object;\n _presenceChannelGroups: Object;\n\n _currentTimetoken: number;\n _lastTimetoken: number;\n _storedTimetoken: ?number;\n\n _region: ?number;\n\n _subscribeCall: ?Object;\n _heartbeatTimer: ?number;\n\n _subscriptionStatusAnnounced: boolean;\n\n _autoNetworkDetection: boolean;\n _isOnline: boolean;\n\n // store pending connection elements\n _pendingChannelSubscriptions: Array;\n _pendingChannelGroupSubscriptions: Array;\n //\n\n _dedupingManager: DedupingManager;\n\n constructor({\n subscribeEndpoint,\n leaveEndpoint,\n heartbeatEndpoint,\n setStateEndpoint,\n timeEndpoint,\n getFileUrl,\n config,\n crypto,\n listenerManager,\n }: SubscriptionManagerConstruct) {\n this._listenerManager = listenerManager;\n this._config = config;\n\n this._leaveEndpoint = leaveEndpoint;\n this._heartbeatEndpoint = heartbeatEndpoint;\n this._setStateEndpoint = setStateEndpoint;\n this._subscribeEndpoint = subscribeEndpoint;\n this._getFileUrl = getFileUrl;\n\n this._crypto = crypto;\n\n this._channels = {};\n this._presenceChannels = {};\n\n this._heartbeatChannels = {};\n this._heartbeatChannelGroups = {};\n\n this._channelGroups = {};\n this._presenceChannelGroups = {};\n\n this._pendingChannelSubscriptions = [];\n this._pendingChannelGroupSubscriptions = [];\n\n this._currentTimetoken = 0;\n this._lastTimetoken = 0;\n this._storedTimetoken = null;\n\n this._subscriptionStatusAnnounced = false;\n\n this._isOnline = true;\n\n this._reconnectionManager = new ReconnectionManager({ timeEndpoint });\n this._dedupingManager = new DedupingManager({ config });\n }\n\n adaptStateChange(args: StateArgs, callback: Function) {\n const { state, channels = [], channelGroups = [] } = args;\n\n channels.forEach((channel) => {\n if (channel in this._channels) this._channels[channel].state = state;\n });\n\n channelGroups.forEach((channelGroup) => {\n if (channelGroup in this._channelGroups) {\n this._channelGroups[channelGroup].state = state;\n }\n });\n\n return this._setStateEndpoint({ state, channels, channelGroups }, callback);\n }\n\n adaptPresenceChange(args: PresenceArgs) {\n const { connected, channels = [], channelGroups = [] } = args;\n\n if (connected) {\n channels.forEach((channel: string) => {\n this._heartbeatChannels[channel] = { state: {} };\n });\n\n channelGroups.forEach((channelGroup: string) => {\n this._heartbeatChannelGroups[channelGroup] = { state: {} };\n });\n } else {\n channels.forEach((channel) => {\n if (channel in this._heartbeatChannels) {\n delete this._heartbeatChannels[channel];\n }\n });\n\n channelGroups.forEach((channelGroup) => {\n if (channelGroup in this._heartbeatChannelGroups) {\n delete this._heartbeatChannelGroups[channelGroup];\n }\n });\n\n if (this._config.suppressLeaveEvents === false) {\n this._leaveEndpoint({ channels, channelGroups }, (status) => {\n this._listenerManager.announceStatus(status);\n });\n }\n }\n\n this.reconnect();\n }\n\n adaptSubscribeChange(args: SubscribeArgs) {\n const { timetoken, channels = [], channelGroups = [], withPresence = false, withHeartbeats = false } = args;\n\n if (!this._config.subscribeKey || this._config.subscribeKey === '') {\n // eslint-disable-next-line\n if (console && console.log) {\n console.log('subscribe key missing; aborting subscribe'); //eslint-disable-line\n }\n return;\n }\n\n if (timetoken) {\n this._lastTimetoken = this._currentTimetoken;\n this._currentTimetoken = timetoken;\n }\n\n // reset the current timetoken to get a connect event.\n // $FlowFixMe\n if (this._currentTimetoken !== '0' && this._currentTimetoken !== 0) {\n this._storedTimetoken = this._currentTimetoken;\n this._currentTimetoken = 0;\n }\n\n channels.forEach((channel: string) => {\n this._channels[channel] = { state: {} };\n if (withPresence) this._presenceChannels[channel] = {};\n if (withHeartbeats || this._config.getHeartbeatInterval()) this._heartbeatChannels[channel] = {};\n\n this._pendingChannelSubscriptions.push(channel);\n });\n\n channelGroups.forEach((channelGroup: string) => {\n this._channelGroups[channelGroup] = { state: {} };\n if (withPresence) this._presenceChannelGroups[channelGroup] = {};\n if (withHeartbeats || this._config.getHeartbeatInterval()) this._heartbeatChannelGroups[channelGroup] = {};\n\n this._pendingChannelGroupSubscriptions.push(channelGroup);\n });\n\n this._subscriptionStatusAnnounced = false;\n this.reconnect();\n }\n\n adaptUnsubscribeChange(args: UnsubscribeArgs, isOffline: boolean) {\n const { channels = [], channelGroups = [] } = args;\n\n // keep track of which channels and channel groups\n // we are going to unsubscribe from.\n const actualChannels = [];\n const actualChannelGroups = [];\n //\n\n channels.forEach((channel) => {\n if (channel in this._channels) {\n delete this._channels[channel];\n actualChannels.push(channel);\n\n if (channel in this._heartbeatChannels) {\n delete this._heartbeatChannels[channel];\n }\n }\n if (channel in this._presenceChannels) {\n delete this._presenceChannels[channel];\n actualChannels.push(channel);\n }\n });\n\n channelGroups.forEach((channelGroup) => {\n if (channelGroup in this._channelGroups) {\n delete this._channelGroups[channelGroup];\n actualChannelGroups.push(channelGroup);\n\n if (channelGroup in this._heartbeatChannelGroups) {\n delete this._heartbeatChannelGroups[channelGroup];\n }\n }\n if (channelGroup in this._presenceChannelGroups) {\n delete this._channelGroups[channelGroup];\n actualChannelGroups.push(channelGroup);\n }\n });\n\n // no-op if there are no channels and cg's to unsubscribe from.\n if (actualChannels.length === 0 && actualChannelGroups.length === 0) {\n return;\n }\n\n if (this._config.suppressLeaveEvents === false && !isOffline) {\n this._leaveEndpoint({ channels: actualChannels, channelGroups: actualChannelGroups }, (status) => {\n status.affectedChannels = actualChannels;\n status.affectedChannelGroups = actualChannelGroups;\n status.currentTimetoken = this._currentTimetoken;\n status.lastTimetoken = this._lastTimetoken;\n this._listenerManager.announceStatus(status);\n });\n }\n\n // if we have nothing to subscribe to, reset the timetoken.\n if (\n Object.keys(this._channels).length === 0 &&\n Object.keys(this._presenceChannels).length === 0 &&\n Object.keys(this._channelGroups).length === 0 &&\n Object.keys(this._presenceChannelGroups).length === 0\n ) {\n this._lastTimetoken = 0;\n this._currentTimetoken = 0;\n this._storedTimetoken = null;\n this._region = null;\n this._reconnectionManager.stopPolling();\n }\n\n this.reconnect();\n }\n\n unsubscribeAll(isOffline: boolean) {\n this.adaptUnsubscribeChange(\n {\n channels: this.getSubscribedChannels(),\n channelGroups: this.getSubscribedChannelGroups(),\n },\n isOffline\n );\n }\n\n getHeartbeatChannels(): Array {\n return Object.keys(this._heartbeatChannels);\n }\n\n getHeartbeatChannelGroups(): Array {\n return Object.keys(this._heartbeatChannelGroups);\n }\n\n getSubscribedChannels(): Array {\n return Object.keys(this._channels);\n }\n\n getSubscribedChannelGroups(): Array {\n return Object.keys(this._channelGroups);\n }\n\n reconnect() {\n this._startSubscribeLoop();\n this._registerHeartbeatTimer();\n }\n\n disconnect() {\n this._stopSubscribeLoop();\n this._stopHeartbeatTimer();\n this._reconnectionManager.stopPolling();\n }\n\n _registerHeartbeatTimer() {\n this._stopHeartbeatTimer();\n\n // if the interval is 0 or undefined, do not queue up heartbeating\n if (this._config.getHeartbeatInterval() === 0 || this._config.getHeartbeatInterval() === undefined) {\n return;\n }\n\n this._performHeartbeatLoop();\n // $FlowFixMe\n this._heartbeatTimer = setInterval(\n this._performHeartbeatLoop.bind(this),\n this._config.getHeartbeatInterval() * 1000\n );\n }\n\n _stopHeartbeatTimer() {\n if (this._heartbeatTimer) {\n // $FlowFixMe\n clearInterval(this._heartbeatTimer);\n this._heartbeatTimer = null;\n }\n }\n\n _performHeartbeatLoop() {\n const heartbeatChannels = this.getHeartbeatChannels();\n\n const heartbeatChannelGroups = this.getHeartbeatChannelGroups();\n\n let presenceState = {};\n\n if (heartbeatChannels.length === 0 && heartbeatChannelGroups.length === 0) {\n return;\n }\n\n this.getSubscribedChannels().forEach((channel) => {\n let channelState = this._channels[channel].state;\n if (Object.keys(channelState).length) {\n presenceState[channel] = channelState;\n }\n });\n\n this.getSubscribedChannelGroups().forEach((channelGroup) => {\n let channelGroupState = this._channelGroups[channelGroup].state;\n if (Object.keys(channelGroupState).length) {\n presenceState[channelGroup] = channelGroupState;\n }\n });\n\n let onHeartbeat = (status: StatusAnnouncement) => {\n if (status.error && this._config.announceFailedHeartbeats) {\n this._listenerManager.announceStatus(status);\n }\n\n if (status.error && this._config.autoNetworkDetection && this._isOnline) {\n this._isOnline = false;\n this.disconnect();\n this._listenerManager.announceNetworkDown();\n this.reconnect();\n }\n\n if (!status.error && this._config.announceSuccessfulHeartbeats) {\n this._listenerManager.announceStatus(status);\n }\n };\n\n this._heartbeatEndpoint(\n {\n channels: heartbeatChannels,\n channelGroups: heartbeatChannelGroups,\n state: presenceState,\n },\n onHeartbeat.bind(this)\n );\n }\n\n _startSubscribeLoop() {\n this._stopSubscribeLoop();\n let presenceState = {};\n let channels = [];\n let channelGroups = [];\n\n Object.keys(this._channels).forEach((channel) => {\n let channelState = this._channels[channel].state;\n\n if (Object.keys(channelState).length) {\n presenceState[channel] = channelState;\n }\n\n channels.push(channel);\n });\n Object.keys(this._presenceChannels).forEach((channel) => {\n channels.push(`${channel}-pnpres`);\n });\n\n Object.keys(this._channelGroups).forEach((channelGroup) => {\n let channelGroupState = this._channelGroups[channelGroup].state;\n\n if (Object.keys(channelGroupState).length) {\n presenceState[channelGroup] = channelGroupState;\n }\n\n channelGroups.push(channelGroup);\n });\n Object.keys(this._presenceChannelGroups).forEach((channelGroup) => {\n channelGroups.push(`${channelGroup}-pnpres`);\n });\n\n if (channels.length === 0 && channelGroups.length === 0) {\n return;\n }\n\n const subscribeArgs = {\n channels,\n channelGroups,\n state: presenceState,\n timetoken: this._currentTimetoken,\n filterExpression: this._config.filterExpression,\n region: this._region,\n };\n\n this._subscribeCall = this._subscribeEndpoint(subscribeArgs, this._processSubscribeResponse.bind(this));\n }\n\n _processSubscribeResponse(status: StatusAnnouncement, payload: SubscribeEnvelope) {\n if (status.error) {\n // if we timeout from server, restart the loop.\n if (status.category === categoryConstants.PNTimeoutCategory) {\n this._startSubscribeLoop();\n } else if (status.category === categoryConstants.PNNetworkIssuesCategory) {\n // we lost internet connection, alert the reconnection manager and terminate all loops\n this.disconnect();\n\n if (status.error && this._config.autoNetworkDetection && this._isOnline) {\n this._isOnline = false;\n this._listenerManager.announceNetworkDown();\n }\n\n this._reconnectionManager.onReconnection(() => {\n if (this._config.autoNetworkDetection && !this._isOnline) {\n this._isOnline = true;\n this._listenerManager.announceNetworkUp();\n }\n this.reconnect();\n this._subscriptionStatusAnnounced = true;\n let reconnectedAnnounce: StatusAnnouncement = {\n category: categoryConstants.PNReconnectedCategory,\n operation: status.operation,\n lastTimetoken: this._lastTimetoken,\n currentTimetoken: this._currentTimetoken,\n };\n this._listenerManager.announceStatus(reconnectedAnnounce);\n });\n\n this._reconnectionManager.startPolling();\n this._listenerManager.announceStatus(status);\n } else if (status.category === categoryConstants.PNBadRequestCategory) {\n this._stopHeartbeatTimer();\n this._listenerManager.announceStatus(status);\n } else {\n this._listenerManager.announceStatus(status);\n }\n\n return;\n }\n\n if (this._storedTimetoken) {\n this._currentTimetoken = this._storedTimetoken;\n this._storedTimetoken = null;\n } else {\n this._lastTimetoken = this._currentTimetoken;\n this._currentTimetoken = payload.metadata.timetoken;\n }\n\n if (!this._subscriptionStatusAnnounced) {\n let connectedAnnounce: StatusAnnouncement = {};\n connectedAnnounce.category = categoryConstants.PNConnectedCategory;\n connectedAnnounce.operation = status.operation;\n connectedAnnounce.affectedChannels = this._pendingChannelSubscriptions;\n connectedAnnounce.subscribedChannels = this.getSubscribedChannels();\n connectedAnnounce.affectedChannelGroups = this._pendingChannelGroupSubscriptions;\n connectedAnnounce.lastTimetoken = this._lastTimetoken;\n connectedAnnounce.currentTimetoken = this._currentTimetoken;\n this._subscriptionStatusAnnounced = true;\n this._listenerManager.announceStatus(connectedAnnounce);\n\n // clear the pending connections list\n this._pendingChannelSubscriptions = [];\n this._pendingChannelGroupSubscriptions = [];\n }\n\n let messages = payload.messages || [];\n let { requestMessageCountThreshold, dedupeOnSubscribe } = this._config;\n\n if (requestMessageCountThreshold && messages.length >= requestMessageCountThreshold) {\n let countAnnouncement: StatusAnnouncement = {};\n countAnnouncement.category = categoryConstants.PNRequestMessageCountExceededCategory;\n countAnnouncement.operation = status.operation;\n this._listenerManager.announceStatus(countAnnouncement);\n }\n\n messages.forEach((message) => {\n let channel = message.channel;\n let subscriptionMatch = message.subscriptionMatch;\n let publishMetaData = message.publishMetaData;\n\n if (channel === subscriptionMatch) {\n subscriptionMatch = null;\n }\n\n if (dedupeOnSubscribe) {\n if (this._dedupingManager.isDuplicate(message)) {\n return;\n } else {\n this._dedupingManager.addEntry(message);\n }\n }\n\n if (utils.endsWith(message.channel, '-pnpres')) {\n let announce: PresenceAnnouncement = {};\n announce.channel = null;\n announce.subscription = null;\n\n // deprecated -->\n announce.actualChannel = subscriptionMatch != null ? channel : null;\n announce.subscribedChannel = subscriptionMatch != null ? subscriptionMatch : channel;\n // <-- deprecated\n\n if (channel) {\n announce.channel = channel.substring(0, channel.lastIndexOf('-pnpres'));\n }\n\n if (subscriptionMatch) {\n announce.subscription = subscriptionMatch.substring(0, subscriptionMatch.lastIndexOf('-pnpres'));\n }\n\n announce.action = message.payload.action;\n announce.state = message.payload.data;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.occupancy = message.payload.occupancy;\n announce.uuid = message.payload.uuid;\n announce.timestamp = message.payload.timestamp;\n\n if (message.payload.join) {\n announce.join = message.payload.join;\n }\n\n if (message.payload.leave) {\n announce.leave = message.payload.leave;\n }\n\n if (message.payload.timeout) {\n announce.timeout = message.payload.timeout;\n }\n\n this._listenerManager.announcePresence(announce);\n } else if (message.messageType === 1) {\n // this is a signal message\n let announce: SignalAnnouncement = {};\n announce.channel = null;\n announce.subscription = null;\n\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n if (message.userMetadata) {\n announce.userMetadata = message.userMetadata;\n }\n\n announce.message = message.payload;\n\n this._listenerManager.announceSignal(announce);\n } else if (message.messageType === 2) {\n // this is an object message\n\n let announce: ObjectAnnouncement = {};\n\n announce.channel = null;\n announce.subscription = null;\n\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n if (message.userMetadata) {\n announce.userMetadata = message.userMetadata;\n }\n\n announce.message = {\n event: message.payload.event,\n type: message.payload.type,\n data: message.payload.data,\n };\n\n this._listenerManager.announceObjects(announce);\n\n if (message.payload.type === 'user') {\n this._listenerManager.announceUser(announce);\n } else if (message.payload.type === 'space') {\n this._listenerManager.announceSpace(announce);\n } else if (message.payload.type === 'membership') {\n this._listenerManager.announceMembership(announce);\n }\n } else if (message.messageType === 3) {\n // this is a message action\n let announce: MessageActionAnnouncement = {};\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n announce.data = {\n messageTimetoken: message.payload.data.messageTimetoken,\n actionTimetoken: message.payload.data.actionTimetoken,\n type: message.payload.data.type,\n uuid: message.issuingClientId,\n value: message.payload.data.value,\n };\n\n announce.event = message.payload.event;\n\n this._listenerManager.announceMessageAction(announce);\n } else if (message.messageType === 4) {\n // this is a file message\n let announce: FileAnnouncement = {};\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n let msgPayload = message.payload;\n\n if (this._config.cipherKey) {\n const decryptedPayload = this._crypto.decrypt(message.payload);\n\n if (typeof decryptedPayload === 'object' && decryptedPayload !== null) {\n msgPayload = decryptedPayload;\n }\n }\n\n if (message.userMetadata) {\n announce.userMetadata = message.userMetadata;\n }\n\n announce.message = msgPayload.message;\n\n announce.file = {\n id: msgPayload.file.id,\n name: msgPayload.file.name,\n url: this._getFileUrl({\n id: msgPayload.file.id,\n name: msgPayload.file.name,\n channel,\n }),\n };\n\n this._listenerManager.announceFile(announce);\n } else {\n let announce: MessageAnnouncement = {};\n announce.channel = null;\n announce.subscription = null;\n\n // deprecated -->\n announce.actualChannel = subscriptionMatch != null ? channel : null;\n announce.subscribedChannel = subscriptionMatch != null ? subscriptionMatch : channel;\n // <-- deprecated\n\n announce.channel = channel;\n announce.subscription = subscriptionMatch;\n announce.timetoken = publishMetaData.publishTimetoken;\n announce.publisher = message.issuingClientId;\n\n if (message.userMetadata) {\n announce.userMetadata = message.userMetadata;\n }\n\n if (this._config.cipherKey) {\n announce.message = this._crypto.decrypt(message.payload);\n } else {\n announce.message = message.payload;\n }\n\n this._listenerManager.announceMessage(announce);\n }\n });\n\n this._region = payload.metadata.region;\n this._startSubscribeLoop();\n }\n\n _stopSubscribeLoop() {\n if (this._subscribeCall) {\n if (typeof this._subscribeCall.abort === 'function') {\n this._subscribeCall.abort();\n }\n this._subscribeCall = null;\n }\n }\n}\n"],"file":"subscription_manager.js"} \ No newline at end of file diff --git a/lib/core/components/telemetry_manager.js b/lib/core/components/telemetry_manager.js index dc19c6f91..73970ca4c 100644 --- a/lib/core/components/telemetry_manager.js +++ b/lib/core/components/telemetry_manager.js @@ -155,7 +155,8 @@ var _default = function () { break; case _operations["default"].PNAccessManagerGrantToken: - operation = 'pam3'; + case _operations["default"].PNAccessManagerRevokeToken: + operation = 'pamv3'; break; default: diff --git a/lib/core/components/telemetry_manager.js.map b/lib/core/components/telemetry_manager.js.map index 7fc00a89a..f0cc7c6de 100644 --- a/lib/core/components/telemetry_manager.js.map +++ b/lib/core/components/telemetry_manager.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/telemetry_manager.js"],"names":["configuration","_maximumSamplesCount","maximumSamplesCount","latencies","Object","keys","_latencies","forEach","endpointName","operationLatencies","averageLatency","_averageLatency","operationType","identifier","operationConstants","PNSubscribeOperation","_trackedLatencies","Date","now","_endpointName","endpointLatencies","startDate","push","length","splice","arrayReduce","accumulatedLatency","latency","Math","floor","reduce","operation","PNPublishOperation","PNSignalOperation","PNHistoryOperation","PNFetchMessagesOperation","PNDeleteMessagesOperation","PNMessageCounts","PNUnsubscribeOperation","PNWhereNowOperation","PNHereNowOperation","PNHeartbeatOperation","PNSetStateOperation","PNGetStateOperation","PNAddChannelsToGroupOperation","PNRemoveChannelsFromGroupOperation","PNChannelGroupsOperation","PNRemoveGroupOperation","PNChannelsForGroupOperation","PNPushNotificationEnabledChannelsOperation","PNRemoveAllPushNotificationsOperation","PNCreateUserOperation","PNUpdateUserOperation","PNDeleteUserOperation","PNGetUserOperation","PNGetUsersOperation","PNCreateSpaceOperation","PNUpdateSpaceOperation","PNDeleteSpaceOperation","PNGetSpaceOperation","PNGetSpacesOperation","PNGetMembersOperation","PNUpdateMembersOperation","PNGetMembershipsOperation","PNUpdateMembershipsOperation","PNAddMessageActionOperation","PNRemoveMessageActionOperation","PNGetMessageActionsOperation","PNAccessManagerGrant","PNAccessManagerAudit","PNAccessManagerGrantToken"],"mappings":";;;;;;;;;;;;;;;AACA;;;AAWE,oBAAYA,aAAZ,EAAsD;AAAA;AAAA,mEAJvB,GAIuB;AAAA,gEAHlC,EAGkC;AAAA,yDAFzC,EAEyC;AACpD,SAAKC,oBAAL,GAA4BD,aAAa,CAACE,mBAAd,IAAqC,KAAKD,oBAAtE;AACD;;;;kDAOqC;AAAA;;AACpC,UAAIE,SAAS,GAAG,EAAhB;AAEAC,MAAAA,MAAM,CAACC,IAAP,CAAY,KAAKC,UAAjB,EAA6BC,OAA7B,CAAqC,UAACC,YAAD,EAAkB;AACrD,YAAMC,kBAAkB,GAAG,KAAI,CAACH,UAAL,CAAgBE,YAAhB,CAA3B;;AACA,YAAME,cAAc,GAAG,KAAI,CAACC,eAAL,CAAqBF,kBAArB,CAAvB;;AAEA,YAAIC,cAAc,GAAG,CAArB,EAAwB;AACtBP,UAAAA,SAAS,aAAMK,YAAN,EAAT,GAAiCE,cAAjC;AACD;AACF,OAPD;AASA,aAAOP,SAAP;AACD;;;wCAEmBS,a,EAAuBC,U,EAAoB;AAC7D,UAAID,aAAa,KAAKE,uBAAmBC,oBAArC,IAA6D,CAACF,UAAlE,EAA8E;AAC5E;AACD;;AAED,WAAKG,iBAAL,CAAuBH,UAAvB,IAAqCI,IAAI,CAACC,GAAL,EAArC;AACD;;;uCAEkBN,a,EAAuBC,U,EAAoB;AAC5D,UAAID,aAAa,KAAKE,uBAAmBC,oBAArC,IAA6D,CAACF,UAAlE,EAA8E;AAC5E;AACD;;AAED,UAAML,YAAY,GAAG,KAAKW,aAAL,CAAmBP,aAAnB,CAArB;;AAEA,UAAIQ,iBAAiB,GAAG,KAAKd,UAAL,CAAgBE,YAAhB,CAAxB;AACA,UAAMa,SAAS,GAAG,KAAKL,iBAAL,CAAuBH,UAAvB,CAAlB;;AAEA,UAAI,CAACO,iBAAL,EAAwB;AACtBA,QAAAA,iBAAiB,GAAI,KAAKd,UAAL,CAAgBE,YAAhB,IAAgC,EAArD;AACD;;AAEDY,MAAAA,iBAAiB,CAACE,IAAlB,CAAwBL,IAAI,CAACC,GAAL,KAAaG,SAArC;;AAGA,UAAID,iBAAiB,CAACG,MAAlB,GAA2B,KAAKtB,oBAApC,EAA0D;AACxDmB,QAAAA,iBAAiB,CAACI,MAAlB,CAAyB,CAAzB,EAA6BJ,iBAAiB,CAACG,MAAlB,GAA2B,KAAKtB,oBAA7D;AACD;;AAED,aAAO,KAAKe,iBAAL,CAAuBH,UAAvB,CAAP;AACD;;;oCAEeV,S,EAA0B;AACxC,UAAMsB,WAAW,GAAG,SAAdA,WAAc,CAACC,kBAAD,EAA6BC,OAA7B;AAAA,eAAiDD,kBAAkB,GAAGC,OAAtE;AAAA,OAApB;;AAEA,aAAOC,IAAI,CAACC,KAAL,CAAW1B,SAAS,CAAC2B,MAAV,CAAiBL,WAAjB,EAA8B,CAA9B,IAAmCtB,SAAS,CAACoB,MAAxD,CAAP;AACD;;;kCAEaX,a,EAAuB;AACnC,UAAImB,SAAS,GAAG,IAAhB;;AAEA,cAAQnB,aAAR;AACE,aAAKE,uBAAmBkB,kBAAxB;AACED,UAAAA,SAAS,GAAG,KAAZ;AACA;;AACF,aAAKjB,uBAAmBmB,iBAAxB;AACEF,UAAAA,SAAS,GAAG,KAAZ;AACA;;AACF,aAAKjB,uBAAmBoB,kBAAxB;AACA,aAAKpB,uBAAmBqB,wBAAxB;AACA,aAAKrB,uBAAmBsB,yBAAxB;AACA,aAAKtB,uBAAmBuB,eAAxB;AACEN,UAAAA,SAAS,GAAG,MAAZ;AACA;;AACF,aAAKjB,uBAAmBwB,sBAAxB;AACA,aAAKxB,uBAAmByB,mBAAxB;AACA,aAAKzB,uBAAmB0B,kBAAxB;AACA,aAAK1B,uBAAmB2B,oBAAxB;AACA,aAAK3B,uBAAmB4B,mBAAxB;AACA,aAAK5B,uBAAmB6B,mBAAxB;AACEZ,UAAAA,SAAS,GAAG,MAAZ;AACA;;AACF,aAAKjB,uBAAmB8B,6BAAxB;AACA,aAAK9B,uBAAmB+B,kCAAxB;AACA,aAAK/B,uBAAmBgC,wBAAxB;AACA,aAAKhC,uBAAmBiC,sBAAxB;AACA,aAAKjC,uBAAmBkC,2BAAxB;AACEjB,UAAAA,SAAS,GAAG,IAAZ;AACA;;AACF,aAAKjB,uBAAmBmC,0CAAxB;AACA,aAAKnC,uBAAmBoC,qCAAxB;AACEnB,UAAAA,SAAS,GAAG,MAAZ;AACA;;AACF,aAAKjB,uBAAmBqC,qBAAxB;AACA,aAAKrC,uBAAmBsC,qBAAxB;AACA,aAAKtC,uBAAmBuC,qBAAxB;AACA,aAAKvC,uBAAmBwC,kBAAxB;AACA,aAAKxC,uBAAmByC,mBAAxB;AACA,aAAKzC,uBAAmB0C,sBAAxB;AACA,aAAK1C,uBAAmB2C,sBAAxB;AACA,aAAK3C,uBAAmB4C,sBAAxB;AACA,aAAK5C,uBAAmB6C,mBAAxB;AACA,aAAK7C,uBAAmB8C,oBAAxB;AACA,aAAK9C,uBAAmB+C,qBAAxB;AACA,aAAK/C,uBAAmBgD,wBAAxB;AACA,aAAKhD,uBAAmBiD,yBAAxB;AACA,aAAKjD,uBAAmBkD,4BAAxB;AACEjC,UAAAA,SAAS,GAAG,KAAZ;AACA;;AACF,aAAKjB,uBAAmBmD,2BAAxB;AACA,aAAKnD,uBAAmBoD,8BAAxB;AACA,aAAKpD,uBAAmBqD,4BAAxB;AACEpC,UAAAA,SAAS,GAAG,MAAZ;AACA;;AACF,aAAKjB,uBAAmBsD,oBAAxB;AACA,aAAKtD,uBAAmBuD,oBAAxB;AACEtC,UAAAA,SAAS,GAAG,KAAZ;AACA;;AACF,aAAKjB,uBAAmBwD,yBAAxB;AACEvC,UAAAA,SAAS,GAAG,MAAZ;AACA;;AACF;AACEA,UAAAA,SAAS,GAAG,MAAZ;AACA;AA9DJ;;AAiEA,aAAOA,SAAP;AACD","sourcesContent":["/* @flow */\nimport operationConstants from '../constants/operations';\n\ntype TelemetryManagerConstruct = {\n maximumSamplesCount: number,\n};\n\nexport default class {\n _maximumSamplesCount: number = 100;\n _trackedLatencies = {};\n _latencies = {};\n\n constructor(configuration: TelemetryManagerConstruct) {\n this._maximumSamplesCount = configuration.maximumSamplesCount || this._maximumSamplesCount;\n }\n\n /**\n * Compose object with latency information of recently used API endpoints.\n *\n * @return {Object} Object with request query key/value pairs.\n */\n operationsLatencyForRequest(): Object {\n let latencies = {};\n\n Object.keys(this._latencies).forEach((endpointName) => {\n const operationLatencies = this._latencies[endpointName];\n const averageLatency = this._averageLatency(operationLatencies);\n\n if (averageLatency > 0) {\n latencies[`l_${endpointName}`] = averageLatency;\n }\n });\n\n return latencies;\n }\n\n startLatencyMeasure(operationType: String, identifier: string) {\n if (operationType === operationConstants.PNSubscribeOperation || !identifier) {\n return;\n }\n\n this._trackedLatencies[identifier] = Date.now();\n }\n\n stopLatencyMeasure(operationType: String, identifier: string) {\n if (operationType === operationConstants.PNSubscribeOperation || !identifier) {\n return;\n }\n\n const endpointName = this._endpointName(operationType);\n /** @type Array */\n let endpointLatencies = this._latencies[endpointName];\n const startDate = this._trackedLatencies[identifier];\n\n if (!endpointLatencies) {\n endpointLatencies = (this._latencies[endpointName] = []);\n }\n\n endpointLatencies.push((Date.now() - startDate));\n\n // Truncate samples count if there is more then configured.\n if (endpointLatencies.length > this._maximumSamplesCount) {\n endpointLatencies.splice(0, (endpointLatencies.length - this._maximumSamplesCount));\n }\n\n delete this._trackedLatencies[identifier];\n }\n\n _averageLatency(latencies: Array) {\n const arrayReduce = (accumulatedLatency: number, latency: number) => accumulatedLatency + latency;\n\n return Math.floor(latencies.reduce(arrayReduce, 0) / latencies.length);\n }\n\n _endpointName(operationType: String) {\n let operation = null;\n\n switch (operationType) {\n case operationConstants.PNPublishOperation:\n operation = 'pub';\n break;\n case operationConstants.PNSignalOperation:\n operation = 'sig';\n break;\n case operationConstants.PNHistoryOperation:\n case operationConstants.PNFetchMessagesOperation:\n case operationConstants.PNDeleteMessagesOperation:\n case operationConstants.PNMessageCounts:\n operation = 'hist';\n break;\n case operationConstants.PNUnsubscribeOperation:\n case operationConstants.PNWhereNowOperation:\n case operationConstants.PNHereNowOperation:\n case operationConstants.PNHeartbeatOperation:\n case operationConstants.PNSetStateOperation:\n case operationConstants.PNGetStateOperation:\n operation = 'pres';\n break;\n case operationConstants.PNAddChannelsToGroupOperation:\n case operationConstants.PNRemoveChannelsFromGroupOperation:\n case operationConstants.PNChannelGroupsOperation:\n case operationConstants.PNRemoveGroupOperation:\n case operationConstants.PNChannelsForGroupOperation:\n operation = 'cg';\n break;\n case operationConstants.PNPushNotificationEnabledChannelsOperation:\n case operationConstants.PNRemoveAllPushNotificationsOperation:\n operation = 'push';\n break;\n case operationConstants.PNCreateUserOperation:\n case operationConstants.PNUpdateUserOperation:\n case operationConstants.PNDeleteUserOperation:\n case operationConstants.PNGetUserOperation:\n case operationConstants.PNGetUsersOperation:\n case operationConstants.PNCreateSpaceOperation:\n case operationConstants.PNUpdateSpaceOperation:\n case operationConstants.PNDeleteSpaceOperation:\n case operationConstants.PNGetSpaceOperation:\n case operationConstants.PNGetSpacesOperation:\n case operationConstants.PNGetMembersOperation:\n case operationConstants.PNUpdateMembersOperation:\n case operationConstants.PNGetMembershipsOperation:\n case operationConstants.PNUpdateMembershipsOperation:\n operation = 'obj';\n break;\n case operationConstants.PNAddMessageActionOperation:\n case operationConstants.PNRemoveMessageActionOperation:\n case operationConstants.PNGetMessageActionsOperation:\n operation = 'msga';\n break;\n case operationConstants.PNAccessManagerGrant:\n case operationConstants.PNAccessManagerAudit:\n operation = 'pam';\n break;\n case operationConstants.PNAccessManagerGrantToken:\n operation = 'pam3';\n break;\n default:\n operation = 'time';\n break;\n }\n\n return operation;\n }\n}\n"],"file":"telemetry_manager.js"} \ No newline at end of file +{"version":3,"sources":["core/components/telemetry_manager.js"],"names":["configuration","_maximumSamplesCount","maximumSamplesCount","latencies","Object","keys","_latencies","forEach","endpointName","operationLatencies","averageLatency","_averageLatency","operationType","identifier","operationConstants","PNSubscribeOperation","_trackedLatencies","Date","now","_endpointName","endpointLatencies","startDate","push","length","splice","arrayReduce","accumulatedLatency","latency","Math","floor","reduce","operation","PNPublishOperation","PNSignalOperation","PNHistoryOperation","PNFetchMessagesOperation","PNDeleteMessagesOperation","PNMessageCounts","PNUnsubscribeOperation","PNWhereNowOperation","PNHereNowOperation","PNHeartbeatOperation","PNSetStateOperation","PNGetStateOperation","PNAddChannelsToGroupOperation","PNRemoveChannelsFromGroupOperation","PNChannelGroupsOperation","PNRemoveGroupOperation","PNChannelsForGroupOperation","PNPushNotificationEnabledChannelsOperation","PNRemoveAllPushNotificationsOperation","PNCreateUserOperation","PNUpdateUserOperation","PNDeleteUserOperation","PNGetUserOperation","PNGetUsersOperation","PNCreateSpaceOperation","PNUpdateSpaceOperation","PNDeleteSpaceOperation","PNGetSpaceOperation","PNGetSpacesOperation","PNGetMembersOperation","PNUpdateMembersOperation","PNGetMembershipsOperation","PNUpdateMembershipsOperation","PNAddMessageActionOperation","PNRemoveMessageActionOperation","PNGetMessageActionsOperation","PNAccessManagerGrant","PNAccessManagerAudit","PNAccessManagerGrantToken","PNAccessManagerRevokeToken"],"mappings":"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","sourcesContent":["/* @flow */\nimport operationConstants from '../constants/operations';\n\ntype TelemetryManagerConstruct = {\n maximumSamplesCount: number,\n};\n\nexport default class {\n _maximumSamplesCount: number = 100;\n _trackedLatencies = {};\n _latencies = {};\n\n constructor(configuration: TelemetryManagerConstruct) {\n this._maximumSamplesCount = configuration.maximumSamplesCount || this._maximumSamplesCount;\n }\n\n /**\n * Compose object with latency information of recently used API endpoints.\n *\n * @return {Object} Object with request query key/value pairs.\n */\n operationsLatencyForRequest(): Object {\n let latencies = {};\n\n Object.keys(this._latencies).forEach((endpointName) => {\n const operationLatencies = this._latencies[endpointName];\n const averageLatency = this._averageLatency(operationLatencies);\n\n if (averageLatency > 0) {\n latencies[`l_${endpointName}`] = averageLatency;\n }\n });\n\n return latencies;\n }\n\n startLatencyMeasure(operationType: String, identifier: string) {\n if (operationType === operationConstants.PNSubscribeOperation || !identifier) {\n return;\n }\n\n this._trackedLatencies[identifier] = Date.now();\n }\n\n stopLatencyMeasure(operationType: String, identifier: string) {\n if (operationType === operationConstants.PNSubscribeOperation || !identifier) {\n return;\n }\n\n const endpointName = this._endpointName(operationType);\n /** @type Array */\n let endpointLatencies = this._latencies[endpointName];\n const startDate = this._trackedLatencies[identifier];\n\n if (!endpointLatencies) {\n endpointLatencies = (this._latencies[endpointName] = []);\n }\n\n endpointLatencies.push((Date.now() - startDate));\n\n // Truncate samples count if there is more then configured.\n if (endpointLatencies.length > this._maximumSamplesCount) {\n endpointLatencies.splice(0, (endpointLatencies.length - this._maximumSamplesCount));\n }\n\n delete this._trackedLatencies[identifier];\n }\n\n _averageLatency(latencies: Array) {\n const arrayReduce = (accumulatedLatency: number, latency: number) => accumulatedLatency + latency;\n\n return Math.floor(latencies.reduce(arrayReduce, 0) / latencies.length);\n }\n\n _endpointName(operationType: String) {\n let operation = null;\n\n switch (operationType) {\n case operationConstants.PNPublishOperation:\n operation = 'pub';\n break;\n case operationConstants.PNSignalOperation:\n operation = 'sig';\n break;\n case operationConstants.PNHistoryOperation:\n case operationConstants.PNFetchMessagesOperation:\n case operationConstants.PNDeleteMessagesOperation:\n case operationConstants.PNMessageCounts:\n operation = 'hist';\n break;\n case operationConstants.PNUnsubscribeOperation:\n case operationConstants.PNWhereNowOperation:\n case operationConstants.PNHereNowOperation:\n case operationConstants.PNHeartbeatOperation:\n case operationConstants.PNSetStateOperation:\n case operationConstants.PNGetStateOperation:\n operation = 'pres';\n break;\n case operationConstants.PNAddChannelsToGroupOperation:\n case operationConstants.PNRemoveChannelsFromGroupOperation:\n case operationConstants.PNChannelGroupsOperation:\n case operationConstants.PNRemoveGroupOperation:\n case operationConstants.PNChannelsForGroupOperation:\n operation = 'cg';\n break;\n case operationConstants.PNPushNotificationEnabledChannelsOperation:\n case operationConstants.PNRemoveAllPushNotificationsOperation:\n operation = 'push';\n break;\n case operationConstants.PNCreateUserOperation:\n case operationConstants.PNUpdateUserOperation:\n case operationConstants.PNDeleteUserOperation:\n case operationConstants.PNGetUserOperation:\n case operationConstants.PNGetUsersOperation:\n case operationConstants.PNCreateSpaceOperation:\n case operationConstants.PNUpdateSpaceOperation:\n case operationConstants.PNDeleteSpaceOperation:\n case operationConstants.PNGetSpaceOperation:\n case operationConstants.PNGetSpacesOperation:\n case operationConstants.PNGetMembersOperation:\n case operationConstants.PNUpdateMembersOperation:\n case operationConstants.PNGetMembershipsOperation:\n case operationConstants.PNUpdateMembershipsOperation:\n operation = 'obj';\n break;\n case operationConstants.PNAddMessageActionOperation:\n case operationConstants.PNRemoveMessageActionOperation:\n case operationConstants.PNGetMessageActionsOperation:\n operation = 'msga';\n break;\n case operationConstants.PNAccessManagerGrant:\n case operationConstants.PNAccessManagerAudit:\n operation = 'pam';\n break;\n case operationConstants.PNAccessManagerGrantToken:\n case operationConstants.PNAccessManagerRevokeToken:\n operation = 'pamv3';\n break;\n default:\n operation = 'time';\n break;\n }\n\n return operation;\n }\n}\n"],"file":"telemetry_manager.js"} \ No newline at end of file diff --git a/lib/core/components/token_manager.js b/lib/core/components/token_manager.js index 06782b868..4e5b0a5b2 100644 --- a/lib/core/components/token_manager.js +++ b/lib/core/components/token_manager.js @@ -7,8 +7,6 @@ Object.defineProperty(exports, "__esModule", { }); exports["default"] = void 0; -var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof")); - var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); @@ -24,154 +22,48 @@ var _default = function () { (0, _classCallCheck2["default"])(this, _default); (0, _defineProperty2["default"])(this, "_config", void 0); (0, _defineProperty2["default"])(this, "_cbor", void 0); - (0, _defineProperty2["default"])(this, "_userTokens", void 0); - (0, _defineProperty2["default"])(this, "_spaceTokens", void 0); - (0, _defineProperty2["default"])(this, "_userToken", void 0); - (0, _defineProperty2["default"])(this, "_spaceToken", void 0); + (0, _defineProperty2["default"])(this, "_token", void 0); this._config = config; this._cbor = cbor; - - this._initializeTokens(); } (0, _createClass2["default"])(_default, [{ - key: "_initializeTokens", - value: function _initializeTokens() { - this._userTokens = {}; - this._spaceTokens = {}; - this._userToken = undefined; - this._spaceToken = undefined; - } - }, { - key: "_setToken", - value: function _setToken(token) { - var _this = this; - - var tokenObject = this.parseToken(token); - - if (tokenObject && tokenObject.resources) { - if (tokenObject.resources.users) { - Object.keys(tokenObject.resources.users).forEach(function (id) { - _this._userTokens[id] = token; - }); - } - - if (tokenObject.resources.spaces) { - Object.keys(tokenObject.resources.spaces).forEach(function (id) { - _this._spaceTokens[id] = token; - }); - } - } - - if (tokenObject && tokenObject.patterns) { - if (tokenObject.patterns.users && Object.keys(tokenObject.patterns.users).length > 0) { - this._userToken = token; - } - - if (tokenObject.patterns.spaces && Object.keys(tokenObject.patterns.spaces).length > 0) { - this._spaceToken = token; - } - } - } - }, { key: "setToken", value: function setToken(token) { if (token && token.length > 0) { - this._setToken(token); - } - } - }, { - key: "setTokens", - value: function setTokens(tokens) { - var _this2 = this; - - if (tokens && tokens.length && (0, _typeof2["default"])(tokens) === 'object') { - tokens.forEach(function (token) { - _this2.setToken(token); - }); - } - } - }, { - key: "getTokens", - value: function getTokens(tokenDef) { - var _this3 = this; - - var result = { - users: {}, - spaces: {} - }; - - if (tokenDef) { - if (tokenDef.user) { - result.user = this._userToken; - } - - if (tokenDef.space) { - result.space = this._spaceToken; - } - - if (tokenDef.users) { - tokenDef.users.forEach(function (user) { - result.users[user] = _this3._userTokens[user]; - }); - } - - if (tokenDef.space) { - tokenDef.spaces.forEach(function (space) { - result.spaces[space] = _this3._spaceTokens[space]; - }); - } + this._token = token; } else { - if (this._userToken) { - result.user = this._userToken; - } - - if (this._spaceToken) { - result.space = this._spaceToken; - } - - Object.keys(this._userTokens).forEach(function (user) { - result.users[user] = _this3._userTokens[user]; - }); - Object.keys(this._spaceTokens).forEach(function (space) { - result.spaces[space] = _this3._spaceTokens[space]; - }); + this._token = undefined; } - - return result; } }, { key: "getToken", - value: function getToken(type, id) { - var result; - - if (id) { - if (type === 'user') { - result = this._userTokens[id]; - } else if (type === 'space') { - result = this._spaceTokens[id]; - } - } else if (type === 'user') { - result = this._userToken; - } else if (type === 'space') { - result = this._spaceToken; - } - - return result; + value: function getToken() { + return this._token; } }, { key: "extractPermissions", value: function extractPermissions(permissions) { var permissionsResult = { - create: false, read: false, write: false, manage: false, - "delete": false + "delete": false, + get: false, + update: false, + join: false }; - if ((permissions & 16) === 16) { - permissionsResult.create = true; + if ((permissions & 128) === 128) { + permissionsResult.join = true; + } + + if ((permissions & 64) === 64) { + permissionsResult.update = true; + } + + if ((permissions & 32) === 32) { + permissionsResult.get = true; } if ((permissions & 8) === 8) { @@ -195,94 +87,77 @@ var _default = function () { }, { key: "parseToken", value: function parseToken(tokenString) { - var _this4 = this; + var _this = this; var parsed = this._cbor.decodeToken(tokenString); if (parsed !== undefined) { - var userResourcePermissions = Object.keys(parsed.res.usr); - var spaceResourcePermissions = Object.keys(parsed.res.spc); + var uuidResourcePermissions = parsed.res.uuid ? Object.keys(parsed.res.uuid) : []; var channelResourcePermissions = Object.keys(parsed.res.chan); var groupResourcePermissions = Object.keys(parsed.res.grp); - var userPatternPermissions = Object.keys(parsed.pat.usr); - var spacePatternPermissions = Object.keys(parsed.pat.spc); + var uuidPatternPermissions = parsed.pat.uuid ? Object.keys(parsed.pat.uuid) : []; var channelPatternPermissions = Object.keys(parsed.pat.chan); var groupPatternPermissions = Object.keys(parsed.pat.grp); var result = { version: parsed.v, timestamp: parsed.t, - ttl: parsed.ttl + ttl: parsed.ttl, + authorized_uuid: parsed.uuid }; - var userResources = userResourcePermissions.length > 0; - var spaceResources = spaceResourcePermissions.length > 0; + var uuidResources = uuidResourcePermissions.length > 0; var channelResources = channelResourcePermissions.length > 0; var groupResources = groupResourcePermissions.length > 0; - if (userResources || spaceResources || channelResources || groupResources) { + if (uuidResources || channelResources || groupResources) { result.resources = {}; - if (userResources) { - result.resources.users = {}; - userResourcePermissions.forEach(function (id) { - result.resources.users[id] = _this4.extractPermissions(parsed.res.usr[id]); - }); - } - - if (spaceResources) { - result.resources.spaces = {}; - spaceResourcePermissions.forEach(function (id) { - result.resources.spaces[id] = _this4.extractPermissions(parsed.res.spc[id]); + if (uuidResources) { + result.resources.uuids = {}; + uuidResourcePermissions.forEach(function (id) { + result.resources.uuids[id] = _this.extractPermissions(parsed.res.uuid[id]); }); } if (channelResources) { result.resources.channels = {}; channelResourcePermissions.forEach(function (id) { - result.resources.channels[id] = _this4.extractPermissions(parsed.res.chan[id]); + result.resources.channels[id] = _this.extractPermissions(parsed.res.chan[id]); }); } if (groupResources) { result.resources.groups = {}; groupResourcePermissions.forEach(function (id) { - result.resources.groups[id] = _this4.extractPermissions(parsed.res.grp[id]); + result.resources.groups[id] = _this.extractPermissions(parsed.res.grp[id]); }); } } - var userPatterns = userPatternPermissions.length > 0; - var spacePatterns = spacePatternPermissions.length > 0; + var uuidPatterns = uuidPatternPermissions.length > 0; var channelPatterns = channelPatternPermissions.length > 0; var groupPatterns = groupPatternPermissions.length > 0; - if (userPatterns || spacePatterns || channelPatterns || groupPatterns) { + if (uuidPatterns || channelPatterns || groupPatterns) { result.patterns = {}; - if (userPatterns) { - result.patterns.users = {}; - userPatternPermissions.forEach(function (id) { - result.patterns.users[id] = _this4.extractPermissions(parsed.pat.usr[id]); - }); - } - - if (spacePatterns) { - result.patterns.spaces = {}; - spacePatternPermissions.forEach(function (id) { - result.patterns.spaces[id] = _this4.extractPermissions(parsed.pat.spc[id]); + if (uuidPatterns) { + result.patterns.uuids = {}; + uuidPatternPermissions.forEach(function (id) { + result.patterns.uuids[id] = _this.extractPermissions(parsed.pat.uuid[id]); }); } if (channelPatterns) { result.patterns.channels = {}; channelPatternPermissions.forEach(function (id) { - result.patterns.channels[id] = _this4.extractPermissions(parsed.pat.chan[id]); + result.patterns.channels[id] = _this.extractPermissions(parsed.pat.chan[id]); }); } if (groupPatterns) { result.patterns.groups = {}; groupPatternPermissions.forEach(function (id) { - result.patterns.groups[id] = _this4.extractPermissions(parsed.pat.grp[id]); + result.patterns.groups[id] = _this.extractPermissions(parsed.pat.grp[id]); }); } } @@ -297,11 +172,6 @@ var _default = function () { return undefined; } } - }, { - key: "clearTokens", - value: function clearTokens() { - this._initializeTokens(); - } }]); return _default; }(); diff --git a/lib/core/components/token_manager.js.map b/lib/core/components/token_manager.js.map index 397b9cd45..c4ba3d955 100644 --- a/lib/core/components/token_manager.js.map +++ b/lib/core/components/token_manager.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/components/token_manager.js"],"names":["config","cbor","_config","_cbor","_initializeTokens","_userTokens","_spaceTokens","_userToken","undefined","_spaceToken","token","tokenObject","parseToken","resources","users","Object","keys","forEach","id","spaces","patterns","length","_setToken","tokens","setToken","tokenDef","result","user","space","type","permissions","permissionsResult","create","read","write","manage","tokenString","parsed","decodeToken","userResourcePermissions","res","usr","spaceResourcePermissions","spc","channelResourcePermissions","chan","groupResourcePermissions","grp","userPatternPermissions","pat","spacePatternPermissions","channelPatternPermissions","groupPatternPermissions","version","v","timestamp","t","ttl","userResources","spaceResources","channelResources","groupResources","extractPermissions","channels","groups","userPatterns","spacePatterns","channelPatterns","groupPatterns","meta","signature","sig"],"mappings":"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","sourcesContent":["/* @flow */\nimport Config from './config';\nimport {\n TokensDefinition,\n GetTokensInput,\n GrantTokenOutput,\n} from '../flow_interfaces';\n\nexport default class {\n _config: Config;\n\n _cbor: any;\n\n _userTokens: { [string]: string};\n _spaceTokens: { [string]: string};\n\n _userToken: ?string;\n _spaceToken: ?string;\n\n constructor(config: Config, cbor: any) {\n this._config = config;\n this._cbor = cbor;\n this._initializeTokens();\n }\n\n _initializeTokens() {\n this._userTokens = {};\n this._spaceTokens = {};\n\n this._userToken = undefined;\n this._spaceToken = undefined;\n }\n\n _setToken(token: string) {\n let tokenObject: GrantTokenOutput = this.parseToken(token);\n\n if (tokenObject && tokenObject.resources) {\n if (tokenObject.resources.users) {\n Object.keys(tokenObject.resources.users).forEach((id) => {\n this._userTokens[id] = token;\n });\n }\n\n if (tokenObject.resources.spaces) {\n Object.keys(tokenObject.resources.spaces).forEach((id) => {\n this._spaceTokens[id] = token;\n });\n }\n }\n\n if (tokenObject && tokenObject.patterns) {\n if (tokenObject.patterns.users && Object.keys(tokenObject.patterns.users).length > 0) {\n this._userToken = token;\n }\n\n if (tokenObject.patterns.spaces && Object.keys(tokenObject.patterns.spaces).length > 0) {\n this._spaceToken = token;\n }\n }\n }\n\n setToken(token: string) {\n if (token && token.length > 0) {\n this._setToken(token);\n }\n }\n\n setTokens(tokens: string[]) {\n if (tokens && tokens.length && typeof tokens === 'object') {\n tokens.forEach((token) => {\n this.setToken(token);\n });\n }\n }\n\n getTokens(tokenDef: GetTokensInput): TokensDefinition {\n let result: TokensDefinition = {\n users: {},\n spaces: {}\n };\n\n if (tokenDef) {\n if (tokenDef.user) {\n result.user = this._userToken;\n }\n\n if (tokenDef.space) {\n result.space = this._spaceToken;\n }\n\n if (tokenDef.users) {\n tokenDef.users.forEach((user) => {\n result.users[user] = this._userTokens[user];\n });\n }\n\n if (tokenDef.space) {\n tokenDef.spaces.forEach((space) => {\n result.spaces[space] = this._spaceTokens[space];\n });\n }\n } else {\n if (this._userToken) {\n result.user = this._userToken;\n }\n\n if (this._spaceToken) {\n result.space = this._spaceToken;\n }\n\n Object.keys(this._userTokens).forEach((user) => {\n result.users[user] = this._userTokens[user];\n });\n\n Object.keys(this._spaceTokens).forEach((space) => {\n result.spaces[space] = this._spaceTokens[space];\n });\n }\n\n return result;\n }\n\n getToken(type: string, id?: string) {\n let result;\n\n if (id) {\n if (type === 'user') {\n result = this._userTokens[id];\n } else if (type === 'space') {\n result = this._spaceTokens[id];\n }\n } else if (type === 'user') {\n result = this._userToken;\n } else if (type === 'space') {\n result = this._spaceToken;\n }\n\n return result;\n }\n\n extractPermissions(permissions: number) {\n let permissionsResult = {\n create: false,\n read: false,\n write: false,\n manage: false,\n delete: false,\n };\n\n /* eslint-disable */\n\n if ((permissions & 16) === 16) {\n permissionsResult.create = true;\n }\n\n if ((permissions & 8) === 8) {\n permissionsResult.delete = true;\n }\n\n if ((permissions & 4) === 4) {\n permissionsResult.manage = true;\n }\n \n if ((permissions & 2) === 2) {\n permissionsResult.write = true;\n }\n \n if ((permissions & 1) === 1) {\n permissionsResult.read = true;\n }\n \n /* eslint-enable */\n\n return permissionsResult;\n }\n\n parseToken(tokenString: string): GrantTokenOutput {\n let parsed = this._cbor.decodeToken(tokenString);\n\n if (parsed !== undefined) {\n let userResourcePermissions = Object.keys(parsed.res.usr);\n let spaceResourcePermissions = Object.keys(parsed.res.spc);\n let channelResourcePermissions = Object.keys(parsed.res.chan);\n let groupResourcePermissions = Object.keys(parsed.res.grp);\n let userPatternPermissions = Object.keys(parsed.pat.usr);\n let spacePatternPermissions = Object.keys(parsed.pat.spc);\n let channelPatternPermissions = Object.keys(parsed.pat.chan);\n let groupPatternPermissions = Object.keys(parsed.pat.grp);\n\n let result: GrantTokenOutput = {\n version: parsed.v,\n timestamp: parsed.t,\n ttl: parsed.ttl\n };\n\n let userResources = userResourcePermissions.length > 0;\n let spaceResources = spaceResourcePermissions.length > 0;\n let channelResources = channelResourcePermissions.length > 0;\n let groupResources = groupResourcePermissions.length > 0;\n\n if (userResources || spaceResources || channelResources || groupResources) {\n result.resources = {};\n\n if (userResources) {\n result.resources.users = {};\n userResourcePermissions.forEach((id) => {\n result.resources.users[id] = this.extractPermissions(parsed.res.usr[id]);\n });\n }\n\n if (spaceResources) {\n result.resources.spaces = {};\n spaceResourcePermissions.forEach((id) => {\n result.resources.spaces[id] = this.extractPermissions(parsed.res.spc[id]);\n });\n }\n\n if (channelResources) {\n result.resources.channels = {};\n channelResourcePermissions.forEach((id) => {\n result.resources.channels[id] = this.extractPermissions(parsed.res.chan[id]);\n });\n }\n\n if (groupResources) {\n result.resources.groups = {};\n groupResourcePermissions.forEach((id) => {\n result.resources.groups[id] = this.extractPermissions(parsed.res.grp[id]);\n });\n }\n }\n\n let userPatterns = userPatternPermissions.length > 0;\n let spacePatterns = spacePatternPermissions.length > 0;\n let channelPatterns = channelPatternPermissions.length > 0;\n let groupPatterns = groupPatternPermissions.length > 0;\n\n if (userPatterns || spacePatterns || channelPatterns || groupPatterns) {\n result.patterns = {};\n\n if (userPatterns) {\n result.patterns.users = {};\n userPatternPermissions.forEach((id) => {\n result.patterns.users[id] = this.extractPermissions(parsed.pat.usr[id]);\n });\n }\n\n if (spacePatterns) {\n result.patterns.spaces = {};\n spacePatternPermissions.forEach((id) => {\n result.patterns.spaces[id] = this.extractPermissions(parsed.pat.spc[id]);\n });\n }\n\n if (channelPatterns) {\n result.patterns.channels = {};\n channelPatternPermissions.forEach((id) => {\n result.patterns.channels[id] = this.extractPermissions(parsed.pat.chan[id]);\n });\n }\n\n if (groupPatterns) {\n result.patterns.groups = {};\n groupPatternPermissions.forEach((id) => {\n result.patterns.groups[id] = this.extractPermissions(parsed.pat.grp[id]);\n });\n }\n }\n\n if (Object.keys(parsed.meta).length > 0) {\n result.meta = parsed.meta;\n }\n\n result.signature = parsed.sig;\n\n return result;\n } else {\n return undefined;\n }\n }\n\n clearTokens() {\n this._initializeTokens();\n }\n}\n"],"file":"token_manager.js"} \ No newline at end of file +{"version":3,"sources":["core/components/token_manager.js"],"names":["config","cbor","_config","_cbor","token","length","_token","undefined","permissions","permissionsResult","read","write","manage","get","update","join","tokenString","parsed","decodeToken","uuidResourcePermissions","res","uuid","Object","keys","channelResourcePermissions","chan","groupResourcePermissions","grp","uuidPatternPermissions","pat","channelPatternPermissions","groupPatternPermissions","result","version","v","timestamp","t","ttl","authorized_uuid","uuidResources","channelResources","groupResources","resources","uuids","forEach","id","extractPermissions","channels","groups","uuidPatterns","channelPatterns","groupPatterns","patterns","meta","signature","sig"],"mappings":"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","sourcesContent":["/* @flow */\nimport Config from './config';\nimport {\n GrantTokenOutput,\n} from '../flow_interfaces';\n\nexport default class {\n _config: Config;\n\n _cbor: any;\n\n _token: any;\n\n constructor(config: Config, cbor: any) {\n this._config = config;\n this._cbor = cbor;\n }\n\n setToken(token: string) {\n if (token && token.length > 0) {\n this._token = token;\n } else {\n this._token = undefined;\n }\n }\n\n getToken() {\n return this._token;\n }\n\n extractPermissions(permissions: number) {\n let permissionsResult = {\n read: false,\n write: false,\n manage: false,\n delete: false,\n get: false,\n update: false,\n join: false\n };\n\n /* eslint-disable */\n\n if ((permissions & 128) === 128) {\n permissionsResult.join = true;\n }\n\n if ((permissions & 64) === 64) {\n permissionsResult.update = true;\n }\n\n if ((permissions & 32) === 32) {\n permissionsResult.get = true;\n }\n\n if ((permissions & 8) === 8) {\n permissionsResult.delete = true;\n }\n\n if ((permissions & 4) === 4) {\n permissionsResult.manage = true;\n }\n \n if ((permissions & 2) === 2) {\n permissionsResult.write = true;\n }\n \n if ((permissions & 1) === 1) {\n permissionsResult.read = true;\n }\n \n /* eslint-enable */\n\n return permissionsResult;\n }\n\n parseToken(tokenString: string): GrantTokenOutput {\n let parsed = this._cbor.decodeToken(tokenString);\n\n if (parsed !== undefined) {\n let uuidResourcePermissions = parsed.res.uuid ? Object.keys(parsed.res.uuid) : [];\n let channelResourcePermissions = Object.keys(parsed.res.chan);\n let groupResourcePermissions = Object.keys(parsed.res.grp);\n let uuidPatternPermissions = parsed.pat.uuid ? Object.keys(parsed.pat.uuid) : [];\n let channelPatternPermissions = Object.keys(parsed.pat.chan);\n let groupPatternPermissions = Object.keys(parsed.pat.grp);\n\n let result: GrantTokenOutput = {\n version: parsed.v,\n timestamp: parsed.t,\n ttl: parsed.ttl,\n authorized_uuid: parsed.uuid\n };\n\n let uuidResources = uuidResourcePermissions.length > 0;\n let channelResources = channelResourcePermissions.length > 0;\n let groupResources = groupResourcePermissions.length > 0;\n\n if (uuidResources || channelResources || groupResources) {\n result.resources = {};\n\n if (uuidResources) {\n result.resources.uuids = {};\n uuidResourcePermissions.forEach((id) => {\n result.resources.uuids[id] = this.extractPermissions(parsed.res.uuid[id]);\n });\n }\n\n if (channelResources) {\n result.resources.channels = {};\n channelResourcePermissions.forEach((id) => {\n result.resources.channels[id] = this.extractPermissions(parsed.res.chan[id]);\n });\n }\n\n if (groupResources) {\n result.resources.groups = {};\n groupResourcePermissions.forEach((id) => {\n result.resources.groups[id] = this.extractPermissions(parsed.res.grp[id]);\n });\n }\n }\n\n let uuidPatterns = uuidPatternPermissions.length > 0;\n let channelPatterns = channelPatternPermissions.length > 0;\n let groupPatterns = groupPatternPermissions.length > 0;\n\n if (uuidPatterns || channelPatterns || groupPatterns) {\n result.patterns = {};\n\n if (uuidPatterns) {\n result.patterns.uuids = {};\n uuidPatternPermissions.forEach((id) => {\n result.patterns.uuids[id] = this.extractPermissions(parsed.pat.uuid[id]);\n });\n }\n\n if (channelPatterns) {\n result.patterns.channels = {};\n channelPatternPermissions.forEach((id) => {\n result.patterns.channels[id] = this.extractPermissions(parsed.pat.chan[id]);\n });\n }\n\n if (groupPatterns) {\n result.patterns.groups = {};\n groupPatternPermissions.forEach((id) => {\n result.patterns.groups[id] = this.extractPermissions(parsed.pat.grp[id]);\n });\n }\n }\n\n if (Object.keys(parsed.meta).length > 0) {\n result.meta = parsed.meta;\n }\n\n result.signature = parsed.sig;\n\n return result;\n } else {\n return undefined;\n }\n }\n}\n"],"file":"token_manager.js"} \ No newline at end of file diff --git a/lib/core/constants/operations.js b/lib/core/constants/operations.js index 8ce3d4a59..eca2ee0cd 100644 --- a/lib/core/constants/operations.js +++ b/lib/core/constants/operations.js @@ -60,7 +60,8 @@ var _default = { PNRemoveChannelsFromGroupOperation: 'PNRemoveChannelsFromGroupOperation', PNAccessManagerGrant: 'PNAccessManagerGrant', PNAccessManagerGrantToken: 'PNAccessManagerGrantToken', - PNAccessManagerAudit: 'PNAccessManagerAudit' + PNAccessManagerAudit: 'PNAccessManagerAudit', + PNAccessManagerRevokeToken: 'PNAccessManagerRevokeToken' }; exports["default"] = _default; module.exports = exports.default; diff --git a/lib/core/constants/operations.js.map b/lib/core/constants/operations.js.map index 00e8b1816..07c0f5b44 100644 --- a/lib/core/constants/operations.js.map +++ b/lib/core/constants/operations.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/constants/operations.js"],"names":["PNTimeOperation","PNHistoryOperation","PNDeleteMessagesOperation","PNFetchMessagesOperation","PNMessageCounts","PNSubscribeOperation","PNUnsubscribeOperation","PNPublishOperation","PNSignalOperation","PNAddMessageActionOperation","PNRemoveMessageActionOperation","PNGetMessageActionsOperation","PNCreateUserOperation","PNUpdateUserOperation","PNDeleteUserOperation","PNGetUserOperation","PNGetUsersOperation","PNCreateSpaceOperation","PNUpdateSpaceOperation","PNDeleteSpaceOperation","PNGetSpaceOperation","PNGetSpacesOperation","PNGetMembersOperation","PNUpdateMembersOperation","PNGetMembershipsOperation","PNUpdateMembershipsOperation","PNListFilesOperation","PNGenerateUploadUrlOperation","PNPublishFileOperation","PNGetFileUrlOperation","PNDownloadFileOperation","PNGetAllUUIDMetadataOperation","PNGetUUIDMetadataOperation","PNSetUUIDMetadataOperation","PNRemoveUUIDMetadataOperation","PNGetAllChannelMetadataOperation","PNGetChannelMetadataOperation","PNSetChannelMetadataOperation","PNRemoveChannelMetadataOperation","PNSetMembersOperation","PNSetMembershipsOperation","PNPushNotificationEnabledChannelsOperation","PNRemoveAllPushNotificationsOperation","PNWhereNowOperation","PNSetStateOperation","PNHereNowOperation","PNGetStateOperation","PNHeartbeatOperation","PNChannelGroupsOperation","PNRemoveGroupOperation","PNChannelsForGroupOperation","PNAddChannelsToGroupOperation","PNRemoveChannelsFromGroupOperation","PNAccessManagerGrant","PNAccessManagerGrantToken","PNAccessManagerAudit"],"mappings":";;;;;;eACe;AACbA,EAAAA,eAAe,EAAE,iBADJ;AAGbC,EAAAA,kBAAkB,EAAE,oBAHP;AAIbC,EAAAA,yBAAyB,EAAE,2BAJd;AAKbC,EAAAA,wBAAwB,EAAE,0BALb;AAMbC,EAAAA,eAAe,EAAE,0BANJ;AASbC,EAAAA,oBAAoB,EAAE,sBATT;AAUbC,EAAAA,sBAAsB,EAAE,wBAVX;AAWbC,EAAAA,kBAAkB,EAAE,oBAXP;AAYbC,EAAAA,iBAAiB,EAAE,mBAZN;AAebC,EAAAA,2BAA2B,EAAE,sBAfhB;AAgBbC,EAAAA,8BAA8B,EAAE,gCAhBnB;AAiBbC,EAAAA,4BAA4B,EAAE,8BAjBjB;AAoBbC,EAAAA,qBAAqB,EAAE,uBApBV;AAqBbC,EAAAA,qBAAqB,EAAE,uBArBV;AAsBbC,EAAAA,qBAAqB,EAAE,uBAtBV;AAuBbC,EAAAA,kBAAkB,EAAE,qBAvBP;AAwBbC,EAAAA,mBAAmB,EAAE,qBAxBR;AAyBbC,EAAAA,sBAAsB,EAAE,wBAzBX;AA0BbC,EAAAA,sBAAsB,EAAE,wBA1BX;AA2BbC,EAAAA,sBAAsB,EAAE,wBA3BX;AA4BbC,EAAAA,mBAAmB,EAAE,sBA5BR;AA6BbC,EAAAA,oBAAoB,EAAE,sBA7BT;AA8BbC,EAAAA,qBAAqB,EAAE,uBA9BV;AA+BbC,EAAAA,wBAAwB,EAAE,0BA/Bb;AAgCbC,EAAAA,yBAAyB,EAAE,2BAhCd;AAiCbC,EAAAA,4BAA4B,EAAE,8BAjCjB;AAoCbC,EAAAA,oBAAoB,EAAE,sBApCT;AAqCbC,EAAAA,4BAA4B,EAAE,8BArCjB;AAsCbC,EAAAA,sBAAsB,EAAE,wBAtCX;AAuCbC,EAAAA,qBAAqB,EAAE,uBAvCV;AAwCbC,EAAAA,uBAAuB,EAAE,yBAxCZ;AA4CbC,EAAAA,6BAA6B,EAAE,+BA5ClB;AA6CbC,EAAAA,0BAA0B,EAAE,4BA7Cf;AA8CbC,EAAAA,0BAA0B,EAAE,4BA9Cf;AA+CbC,EAAAA,6BAA6B,EAAE,+BA/ClB;AAiDbC,EAAAA,gCAAgC,EAAE,kCAjDrB;AAkDbC,EAAAA,6BAA6B,EAAE,+BAlDlB;AAmDbC,EAAAA,6BAA6B,EAAE,+BAnDlB;AAoDbC,EAAAA,gCAAgC,EAAE,kCApDrB;AAuDbC,EAAAA,qBAAqB,EAAE,uBAvDV;AAyDbC,EAAAA,yBAAyB,EAAE,2BAzDd;AA4DbC,EAAAA,0CAA0C,EAAE,4CA5D/B;AA6DbC,EAAAA,qCAAqC,EAAE,uCA7D1B;AAiEbC,EAAAA,mBAAmB,EAAE,qBAjER;AAkEbC,EAAAA,mBAAmB,EAAE,qBAlER;AAmEbC,EAAAA,kBAAkB,EAAE,oBAnEP;AAoEbC,EAAAA,mBAAmB,EAAE,qBApER;AAqEbC,EAAAA,oBAAoB,EAAE,sBArET;AAyEbC,EAAAA,wBAAwB,EAAE,0BAzEb;AA0EbC,EAAAA,sBAAsB,EAAE,wBA1EX;AA2EbC,EAAAA,2BAA2B,EAAE,6BA3EhB;AA4EbC,EAAAA,6BAA6B,EAAE,+BA5ElB;AA6EbC,EAAAA,kCAAkC,EAAE,oCA7EvB;AAiFbC,EAAAA,oBAAoB,EAAE,sBAjFT;AAkFbC,EAAAA,yBAAyB,EAAE,2BAlFd;AAmFbC,EAAAA,oBAAoB,EAAE;AAnFT,C","sourcesContent":["/* @flow */\nexport default {\n PNTimeOperation: 'PNTimeOperation',\n\n PNHistoryOperation: 'PNHistoryOperation',\n PNDeleteMessagesOperation: 'PNDeleteMessagesOperation',\n PNFetchMessagesOperation: 'PNFetchMessagesOperation',\n PNMessageCounts: 'PNMessageCountsOperation',\n\n // pubsub\n PNSubscribeOperation: 'PNSubscribeOperation',\n PNUnsubscribeOperation: 'PNUnsubscribeOperation',\n PNPublishOperation: 'PNPublishOperation',\n PNSignalOperation: 'PNSignalOperation',\n\n // Actions API\n PNAddMessageActionOperation: 'PNAddActionOperation',\n PNRemoveMessageActionOperation: 'PNRemoveMessageActionOperation',\n PNGetMessageActionsOperation: 'PNGetMessageActionsOperation',\n\n // Objects API\n PNCreateUserOperation: 'PNCreateUserOperation',\n PNUpdateUserOperation: 'PNUpdateUserOperation',\n PNDeleteUserOperation: 'PNDeleteUserOperation',\n PNGetUserOperation: 'PNGetUsersOperation',\n PNGetUsersOperation: 'PNGetUsersOperation',\n PNCreateSpaceOperation: 'PNCreateSpaceOperation',\n PNUpdateSpaceOperation: 'PNUpdateSpaceOperation',\n PNDeleteSpaceOperation: 'PNDeleteSpaceOperation',\n PNGetSpaceOperation: 'PNGetSpacesOperation',\n PNGetSpacesOperation: 'PNGetSpacesOperation',\n PNGetMembersOperation: 'PNGetMembersOperation',\n PNUpdateMembersOperation: 'PNUpdateMembersOperation',\n PNGetMembershipsOperation: 'PNGetMembershipsOperation',\n PNUpdateMembershipsOperation: 'PNUpdateMembershipsOperation',\n\n // File Upload API v1\n PNListFilesOperation: 'PNListFilesOperation',\n PNGenerateUploadUrlOperation: 'PNGenerateUploadUrlOperation',\n PNPublishFileOperation: 'PNPublishFileOperation',\n PNGetFileUrlOperation: 'PNGetFileUrlOperation',\n PNDownloadFileOperation: 'PNDownloadFileOperation',\n\n // Objects API v2\n // UUID\n PNGetAllUUIDMetadataOperation: 'PNGetAllUUIDMetadataOperation',\n PNGetUUIDMetadataOperation: 'PNGetUUIDMetadataOperation',\n PNSetUUIDMetadataOperation: 'PNSetUUIDMetadataOperation',\n PNRemoveUUIDMetadataOperation: 'PNRemoveUUIDMetadataOperation',\n // channel\n PNGetAllChannelMetadataOperation: 'PNGetAllChannelMetadataOperation',\n PNGetChannelMetadataOperation: 'PNGetChannelMetadataOperation',\n PNSetChannelMetadataOperation: 'PNSetChannelMetadataOperation',\n PNRemoveChannelMetadataOperation: 'PNRemoveChannelMetadataOperation',\n // member\n // PNGetMembersOperation: 'PNGetMembersOperation',\n PNSetMembersOperation: 'PNSetMembersOperation',\n // PNGetMembershipsOperation: 'PNGetMembersOperation',\n PNSetMembershipsOperation: 'PNSetMembershipsOperation',\n\n // push\n PNPushNotificationEnabledChannelsOperation: 'PNPushNotificationEnabledChannelsOperation',\n PNRemoveAllPushNotificationsOperation: 'PNRemoveAllPushNotificationsOperation',\n //\n\n // presence\n PNWhereNowOperation: 'PNWhereNowOperation',\n PNSetStateOperation: 'PNSetStateOperation',\n PNHereNowOperation: 'PNHereNowOperation',\n PNGetStateOperation: 'PNGetStateOperation',\n PNHeartbeatOperation: 'PNHeartbeatOperation',\n //\n\n // channel group\n PNChannelGroupsOperation: 'PNChannelGroupsOperation',\n PNRemoveGroupOperation: 'PNRemoveGroupOperation',\n PNChannelsForGroupOperation: 'PNChannelsForGroupOperation',\n PNAddChannelsToGroupOperation: 'PNAddChannelsToGroupOperation',\n PNRemoveChannelsFromGroupOperation: 'PNRemoveChannelsFromGroupOperation',\n //\n\n // PAM\n PNAccessManagerGrant: 'PNAccessManagerGrant',\n PNAccessManagerGrantToken: 'PNAccessManagerGrantToken',\n PNAccessManagerAudit: 'PNAccessManagerAudit',\n //\n};\n"],"file":"operations.js"} \ No newline at end of file +{"version":3,"sources":["core/constants/operations.js"],"names":["PNTimeOperation","PNHistoryOperation","PNDeleteMessagesOperation","PNFetchMessagesOperation","PNMessageCounts","PNSubscribeOperation","PNUnsubscribeOperation","PNPublishOperation","PNSignalOperation","PNAddMessageActionOperation","PNRemoveMessageActionOperation","PNGetMessageActionsOperation","PNCreateUserOperation","PNUpdateUserOperation","PNDeleteUserOperation","PNGetUserOperation","PNGetUsersOperation","PNCreateSpaceOperation","PNUpdateSpaceOperation","PNDeleteSpaceOperation","PNGetSpaceOperation","PNGetSpacesOperation","PNGetMembersOperation","PNUpdateMembersOperation","PNGetMembershipsOperation","PNUpdateMembershipsOperation","PNListFilesOperation","PNGenerateUploadUrlOperation","PNPublishFileOperation","PNGetFileUrlOperation","PNDownloadFileOperation","PNGetAllUUIDMetadataOperation","PNGetUUIDMetadataOperation","PNSetUUIDMetadataOperation","PNRemoveUUIDMetadataOperation","PNGetAllChannelMetadataOperation","PNGetChannelMetadataOperation","PNSetChannelMetadataOperation","PNRemoveChannelMetadataOperation","PNSetMembersOperation","PNSetMembershipsOperation","PNPushNotificationEnabledChannelsOperation","PNRemoveAllPushNotificationsOperation","PNWhereNowOperation","PNSetStateOperation","PNHereNowOperation","PNGetStateOperation","PNHeartbeatOperation","PNChannelGroupsOperation","PNRemoveGroupOperation","PNChannelsForGroupOperation","PNAddChannelsToGroupOperation","PNRemoveChannelsFromGroupOperation","PNAccessManagerGrant","PNAccessManagerGrantToken","PNAccessManagerAudit","PNAccessManagerRevokeToken"],"mappings":";;;;;;eACe;AACbA,EAAAA,eAAe,EAAE,iBADJ;AAGbC,EAAAA,kBAAkB,EAAE,oBAHP;AAIbC,EAAAA,yBAAyB,EAAE,2BAJd;AAKbC,EAAAA,wBAAwB,EAAE,0BALb;AAMbC,EAAAA,eAAe,EAAE,0BANJ;AASbC,EAAAA,oBAAoB,EAAE,sBATT;AAUbC,EAAAA,sBAAsB,EAAE,wBAVX;AAWbC,EAAAA,kBAAkB,EAAE,oBAXP;AAYbC,EAAAA,iBAAiB,EAAE,mBAZN;AAebC,EAAAA,2BAA2B,EAAE,sBAfhB;AAgBbC,EAAAA,8BAA8B,EAAE,gCAhBnB;AAiBbC,EAAAA,4BAA4B,EAAE,8BAjBjB;AAoBbC,EAAAA,qBAAqB,EAAE,uBApBV;AAqBbC,EAAAA,qBAAqB,EAAE,uBArBV;AAsBbC,EAAAA,qBAAqB,EAAE,uBAtBV;AAuBbC,EAAAA,kBAAkB,EAAE,qBAvBP;AAwBbC,EAAAA,mBAAmB,EAAE,qBAxBR;AAyBbC,EAAAA,sBAAsB,EAAE,wBAzBX;AA0BbC,EAAAA,sBAAsB,EAAE,wBA1BX;AA2BbC,EAAAA,sBAAsB,EAAE,wBA3BX;AA4BbC,EAAAA,mBAAmB,EAAE,sBA5BR;AA6BbC,EAAAA,oBAAoB,EAAE,sBA7BT;AA8BbC,EAAAA,qBAAqB,EAAE,uBA9BV;AA+BbC,EAAAA,wBAAwB,EAAE,0BA/Bb;AAgCbC,EAAAA,yBAAyB,EAAE,2BAhCd;AAiCbC,EAAAA,4BAA4B,EAAE,8BAjCjB;AAoCbC,EAAAA,oBAAoB,EAAE,sBApCT;AAqCbC,EAAAA,4BAA4B,EAAE,8BArCjB;AAsCbC,EAAAA,sBAAsB,EAAE,wBAtCX;AAuCbC,EAAAA,qBAAqB,EAAE,uBAvCV;AAwCbC,EAAAA,uBAAuB,EAAE,yBAxCZ;AA4CbC,EAAAA,6BAA6B,EAAE,+BA5ClB;AA6CbC,EAAAA,0BAA0B,EAAE,4BA7Cf;AA8CbC,EAAAA,0BAA0B,EAAE,4BA9Cf;AA+CbC,EAAAA,6BAA6B,EAAE,+BA/ClB;AAiDbC,EAAAA,gCAAgC,EAAE,kCAjDrB;AAkDbC,EAAAA,6BAA6B,EAAE,+BAlDlB;AAmDbC,EAAAA,6BAA6B,EAAE,+BAnDlB;AAoDbC,EAAAA,gCAAgC,EAAE,kCApDrB;AAuDbC,EAAAA,qBAAqB,EAAE,uBAvDV;AAyDbC,EAAAA,yBAAyB,EAAE,2BAzDd;AA4DbC,EAAAA,0CAA0C,EAAE,4CA5D/B;AA6DbC,EAAAA,qCAAqC,EAAE,uCA7D1B;AAiEbC,EAAAA,mBAAmB,EAAE,qBAjER;AAkEbC,EAAAA,mBAAmB,EAAE,qBAlER;AAmEbC,EAAAA,kBAAkB,EAAE,oBAnEP;AAoEbC,EAAAA,mBAAmB,EAAE,qBApER;AAqEbC,EAAAA,oBAAoB,EAAE,sBArET;AAyEbC,EAAAA,wBAAwB,EAAE,0BAzEb;AA0EbC,EAAAA,sBAAsB,EAAE,wBA1EX;AA2EbC,EAAAA,2BAA2B,EAAE,6BA3EhB;AA4EbC,EAAAA,6BAA6B,EAAE,+BA5ElB;AA6EbC,EAAAA,kCAAkC,EAAE,oCA7EvB;AAiFbC,EAAAA,oBAAoB,EAAE,sBAjFT;AAkFbC,EAAAA,yBAAyB,EAAE,2BAlFd;AAmFbC,EAAAA,oBAAoB,EAAE,sBAnFT;AAoFbC,EAAAA,0BAA0B,EAAE;AApFf,C","sourcesContent":["/* @flow */\nexport default {\n PNTimeOperation: 'PNTimeOperation',\n\n PNHistoryOperation: 'PNHistoryOperation',\n PNDeleteMessagesOperation: 'PNDeleteMessagesOperation',\n PNFetchMessagesOperation: 'PNFetchMessagesOperation',\n PNMessageCounts: 'PNMessageCountsOperation',\n\n // pubsub\n PNSubscribeOperation: 'PNSubscribeOperation',\n PNUnsubscribeOperation: 'PNUnsubscribeOperation',\n PNPublishOperation: 'PNPublishOperation',\n PNSignalOperation: 'PNSignalOperation',\n\n // Actions API\n PNAddMessageActionOperation: 'PNAddActionOperation',\n PNRemoveMessageActionOperation: 'PNRemoveMessageActionOperation',\n PNGetMessageActionsOperation: 'PNGetMessageActionsOperation',\n\n // Objects API\n PNCreateUserOperation: 'PNCreateUserOperation',\n PNUpdateUserOperation: 'PNUpdateUserOperation',\n PNDeleteUserOperation: 'PNDeleteUserOperation',\n PNGetUserOperation: 'PNGetUsersOperation',\n PNGetUsersOperation: 'PNGetUsersOperation',\n PNCreateSpaceOperation: 'PNCreateSpaceOperation',\n PNUpdateSpaceOperation: 'PNUpdateSpaceOperation',\n PNDeleteSpaceOperation: 'PNDeleteSpaceOperation',\n PNGetSpaceOperation: 'PNGetSpacesOperation',\n PNGetSpacesOperation: 'PNGetSpacesOperation',\n PNGetMembersOperation: 'PNGetMembersOperation',\n PNUpdateMembersOperation: 'PNUpdateMembersOperation',\n PNGetMembershipsOperation: 'PNGetMembershipsOperation',\n PNUpdateMembershipsOperation: 'PNUpdateMembershipsOperation',\n\n // File Upload API v1\n PNListFilesOperation: 'PNListFilesOperation',\n PNGenerateUploadUrlOperation: 'PNGenerateUploadUrlOperation',\n PNPublishFileOperation: 'PNPublishFileOperation',\n PNGetFileUrlOperation: 'PNGetFileUrlOperation',\n PNDownloadFileOperation: 'PNDownloadFileOperation',\n\n // Objects API v2\n // UUID\n PNGetAllUUIDMetadataOperation: 'PNGetAllUUIDMetadataOperation',\n PNGetUUIDMetadataOperation: 'PNGetUUIDMetadataOperation',\n PNSetUUIDMetadataOperation: 'PNSetUUIDMetadataOperation',\n PNRemoveUUIDMetadataOperation: 'PNRemoveUUIDMetadataOperation',\n // channel\n PNGetAllChannelMetadataOperation: 'PNGetAllChannelMetadataOperation',\n PNGetChannelMetadataOperation: 'PNGetChannelMetadataOperation',\n PNSetChannelMetadataOperation: 'PNSetChannelMetadataOperation',\n PNRemoveChannelMetadataOperation: 'PNRemoveChannelMetadataOperation',\n // member\n // PNGetMembersOperation: 'PNGetMembersOperation',\n PNSetMembersOperation: 'PNSetMembersOperation',\n // PNGetMembershipsOperation: 'PNGetMembersOperation',\n PNSetMembershipsOperation: 'PNSetMembershipsOperation',\n\n // push\n PNPushNotificationEnabledChannelsOperation: 'PNPushNotificationEnabledChannelsOperation',\n PNRemoveAllPushNotificationsOperation: 'PNRemoveAllPushNotificationsOperation',\n //\n\n // presence\n PNWhereNowOperation: 'PNWhereNowOperation',\n PNSetStateOperation: 'PNSetStateOperation',\n PNHereNowOperation: 'PNHereNowOperation',\n PNGetStateOperation: 'PNGetStateOperation',\n PNHeartbeatOperation: 'PNHeartbeatOperation',\n //\n\n // channel group\n PNChannelGroupsOperation: 'PNChannelGroupsOperation',\n PNRemoveGroupOperation: 'PNRemoveGroupOperation',\n PNChannelsForGroupOperation: 'PNChannelsForGroupOperation',\n PNAddChannelsToGroupOperation: 'PNAddChannelsToGroupOperation',\n PNRemoveChannelsFromGroupOperation: 'PNRemoveChannelsFromGroupOperation',\n //\n\n // PAM\n PNAccessManagerGrant: 'PNAccessManagerGrant',\n PNAccessManagerGrantToken: 'PNAccessManagerGrantToken',\n PNAccessManagerAudit: 'PNAccessManagerAudit',\n PNAccessManagerRevokeToken: 'PNAccessManagerRevokeToken',\n //\n};\n"],"file":"operations.js"} \ No newline at end of file diff --git a/lib/core/endpoints/access_manager/audit.js b/lib/core/endpoints/access_manager/audit.js index 8f04f0d71..d259e4f27 100644 --- a/lib/core/endpoints/access_manager/audit.js +++ b/lib/core/endpoints/access_manager/audit.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/access_manager/audit.js.map b/lib/core/endpoints/access_manager/audit.js.map index 0b1303c65..5c9adcf81 100644 --- a/lib/core/endpoints/access_manager/audit.js.map +++ b/lib/core/endpoints/access_manager/audit.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/access_manager/audit.js"],"names":["getOperation","operationConstants","PNAccessManagerAudit","validateParams","modules","config","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","incomingParams","channel","channelGroup","authKeys","params","length","auth","join","handleResponse","serverResponse","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,oBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AAAA,MAC/CC,MAD+C,GACpCD,OADoC,CAC/CC,MAD+C;AAGrD,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAgD;AAAA,MAC/CC,MAD+C,GACpCD,OADoC,CAC/CC,MAD+C;AAErD,0CAAiCA,MAAM,CAACC,YAAxC;AACD;;AAEM,SAASE,iBAAT,OAA8D;AAAA,MAAjCH,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACI,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,KAAP;AACD;;AAEM,SAASC,aAAT,CAAuBP,OAAvB,EAA+CQ,cAA/C,EAAuF;AAAA,MACpFC,OADoF,GAC3CD,cAD2C,CACpFC,OADoF;AAAA,MAC3EC,YAD2E,GAC3CF,cAD2C,CAC3EE,YAD2E;AAAA,8BAC3CF,cAD2C,CAC7DG,QAD6D;AAAA,MAC7DA,QAD6D,sCAClD,EADkD;AAE5F,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,OAAJ,EAAa;AACXG,IAAAA,MAAM,CAACH,OAAP,GAAiBA,OAAjB;AACD;;AAED,MAAIC,YAAJ,EAAkB;AAChBE,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0BF,YAA1B;AACD;;AAED,MAAIC,QAAQ,CAACE,MAAT,GAAkB,CAAtB,EAAyB;AACvBD,IAAAA,MAAM,CAACE,IAAP,GAAcH,QAAQ,CAACI,IAAT,CAAc,GAAd,CAAd;AACD;;AAED,SAAOH,MAAP;AACD;;AAEM,SAASI,cAAT,CAAwBhB,OAAxB,EAAgDiB,cAAhD,EAAgF;AACrF,SAAOA,cAAc,CAACC,OAAtB;AACD","sourcesContent":["/* @flow */\n\nimport { AuditArguments, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNAccessManagerAudit;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v2/auth/audit/sub-key/${config.subscribeKey}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return false;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: AuditArguments): Object {\n const { channel, channelGroup, authKeys = [] } = incomingParams;\n const params = {};\n\n if (channel) {\n params.channel = channel;\n }\n\n if (channelGroup) {\n params['channel-group'] = channelGroup;\n }\n\n if (authKeys.length > 0) {\n params.auth = authKeys.join(',');\n }\n\n return params;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): Object {\n return serverResponse.payload;\n}\n"],"file":"audit.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/access_manager/audit.js"],"names":["getOperation","operationConstants","PNAccessManagerAudit","validateParams","modules","config","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","incomingParams","channel","channelGroup","authKeys","params","length","auth","join","handleResponse","serverResponse","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,oBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AACrD,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AAEA,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAgD;AACrD,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AACA,0CAAiCA,MAAM,CAACC,YAAxC;AACD;;AAEM,SAASE,iBAAT,OAA8D;AAAA,MAAjCH,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACI,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,KAAP;AACD;;AAEM,SAASC,aAAT,CAAuBP,OAAvB,EAA+CQ,cAA/C,EAAuF;AAC5F,MAAQC,OAAR,GAAiDD,cAAjD,CAAQC,OAAR;AAAA,MAAiBC,YAAjB,GAAiDF,cAAjD,CAAiBE,YAAjB;AAAA,8BAAiDF,cAAjD,CAA+BG,QAA/B;AAAA,MAA+BA,QAA/B,sCAA0C,EAA1C;AACA,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,OAAJ,EAAa;AACXG,IAAAA,MAAM,CAACH,OAAP,GAAiBA,OAAjB;AACD;;AAED,MAAIC,YAAJ,EAAkB;AAChBE,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0BF,YAA1B;AACD;;AAED,MAAIC,QAAQ,CAACE,MAAT,GAAkB,CAAtB,EAAyB;AACvBD,IAAAA,MAAM,CAACE,IAAP,GAAcH,QAAQ,CAACI,IAAT,CAAc,GAAd,CAAd;AACD;;AAED,SAAOH,MAAP;AACD;;AAEM,SAASI,cAAT,CAAwBhB,OAAxB,EAAgDiB,cAAhD,EAAgF;AACrF,SAAOA,cAAc,CAACC,OAAtB;AACD","sourcesContent":["/* @flow */\n\nimport { AuditArguments, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNAccessManagerAudit;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v2/auth/audit/sub-key/${config.subscribeKey}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return false;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: AuditArguments): Object {\n const { channel, channelGroup, authKeys = [] } = incomingParams;\n const params = {};\n\n if (channel) {\n params.channel = channel;\n }\n\n if (channelGroup) {\n params['channel-group'] = channelGroup;\n }\n\n if (authKeys.length > 0) {\n params.auth = authKeys.join(',');\n }\n\n return params;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): Object {\n return serverResponse.payload;\n}\n"],"file":"audit.js"} \ No newline at end of file diff --git a/lib/core/endpoints/access_manager/grant.js b/lib/core/endpoints/access_manager/grant.js index 97e21ded2..141ad1c09 100644 --- a/lib/core/endpoints/access_manager/grant.js +++ b/lib/core/endpoints/access_manager/grant.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/access_manager/grant.js.map b/lib/core/endpoints/access_manager/grant.js.map index 6f31a6f6b..68720c885 100644 --- a/lib/core/endpoints/access_manager/grant.js.map +++ b/lib/core/endpoints/access_manager/grant.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/access_manager/grant.js"],"names":["getOperation","operationConstants","PNAccessManagerGrant","validateParams","modules","incomingParams","config","subscribeKey","publishKey","secretKey","uuids","authKeys","channels","channelGroups","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","ttl","read","write","manage","get","join","update","deleteParam","params","r","w","m","d","g","j","u","length","channel","auth","handleResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport { GrantArguments, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNAccessManagerGrant;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: GrantArguments) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!config.publishKey) return 'Missing Publish Key';\n if (!config.secretKey) return 'Missing Secret Key';\n if (incomingParams.uuids != null && !incomingParams.authKeys) { return 'authKeys are required for grant request on uuids'; }\n if (incomingParams.uuids != null && (incomingParams.channels != null || incomingParams.channelGroups != null)) { return 'Both channel/channelgroup and uuid cannot be used in the same request'; }\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v2/auth/grant/sub-key/${config.subscribeKey}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return false;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: GrantArguments): Object {\n const { channels = [],\n channelGroups = [],\n uuids = [],\n ttl,\n read = false,\n write = false,\n manage = false,\n get = false,\n join = false,\n update = false,\n authKeys = [] } = incomingParams;\n const deleteParam = incomingParams.delete;\n const params = {};\n\n params.r = (read) ? '1' : '0';\n params.w = (write) ? '1' : '0';\n params.m = (manage) ? '1' : '0';\n params.d = (deleteParam) ? '1' : '0';\n params.g = (get) ? '1' : '0';\n params.j = (join) ? '1' : '0';\n params.u = (update) ? '1' : '0';\n\n if (channels.length > 0) {\n params.channel = channels.join(',');\n }\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n if (authKeys.length > 0) {\n params.auth = authKeys.join(',');\n }\n\n if (uuids.length > 0) {\n params['target-uuid'] = uuids.join(',');\n }\n\n if (ttl || ttl === 0) {\n params.ttl = ttl;\n }\n return params;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"grant.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/access_manager/grant.js"],"names":["getOperation","operationConstants","PNAccessManagerGrant","validateParams","modules","incomingParams","config","subscribeKey","publishKey","secretKey","uuids","authKeys","channels","channelGroups","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","ttl","read","write","manage","get","join","update","deleteParam","params","r","w","m","d","g","j","u","length","channel","auth","handleResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport { GrantArguments, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNAccessManagerGrant;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: GrantArguments) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!config.publishKey) return 'Missing Publish Key';\n if (!config.secretKey) return 'Missing Secret Key';\n if (incomingParams.uuids != null && !incomingParams.authKeys) { return 'authKeys are required for grant request on uuids'; }\n if (incomingParams.uuids != null && (incomingParams.channels != null || incomingParams.channelGroups != null)) { return 'Both channel/channelgroup and uuid cannot be used in the same request'; }\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v2/auth/grant/sub-key/${config.subscribeKey}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return false;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: GrantArguments): Object {\n const { channels = [],\n channelGroups = [],\n uuids = [],\n ttl,\n read = false,\n write = false,\n manage = false,\n get = false,\n join = false,\n update = false,\n authKeys = [] } = incomingParams;\n const deleteParam = incomingParams.delete;\n const params = {};\n\n params.r = (read) ? '1' : '0';\n params.w = (write) ? '1' : '0';\n params.m = (manage) ? '1' : '0';\n params.d = (deleteParam) ? '1' : '0';\n params.g = (get) ? '1' : '0';\n params.j = (join) ? '1' : '0';\n params.u = (update) ? '1' : '0';\n\n if (channels.length > 0) {\n params.channel = channels.join(',');\n }\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n if (authKeys.length > 0) {\n params.auth = authKeys.join(',');\n }\n\n if (uuids.length > 0) {\n params['target-uuid'] = uuids.join(',');\n }\n\n if (ttl || ttl === 0) {\n params.ttl = ttl;\n }\n return params;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"grant.js"} \ No newline at end of file diff --git a/lib/core/endpoints/access_manager/grant_token.js b/lib/core/endpoints/access_manager/grant_token.js index 127381fe7..de9776610 100644 --- a/lib/core/endpoints/access_manager/grant_token.js +++ b/lib/core/endpoints/access_manager/grant_token.js @@ -5,16 +5,16 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau Object.defineProperty(exports, "__esModule", { value: true }); -exports.getOperation = getOperation; exports.extractPermissions = extractPermissions; -exports.validateParams = validateParams; -exports.postURL = postURL; -exports.usePost = usePost; +exports.getOperation = getOperation; exports.getRequestTimeout = getRequestTimeout; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -27,8 +27,16 @@ function getOperation() { function extractPermissions(permissions) { var permissionsResult = 0; - if (permissions.create) { - permissionsResult |= 16; + if (permissions.join) { + permissionsResult |= 128; + } + + if (permissions.update) { + permissionsResult |= 64; + } + + if (permissions.get) { + permissionsResult |= 32; } if (permissions["delete"]) { @@ -54,19 +62,22 @@ function prepareMessagePayload(modules, incomingParams) { var ttl = incomingParams.ttl, resources = incomingParams.resources, patterns = incomingParams.patterns, - meta = incomingParams.meta; + meta = incomingParams.meta, + authorized_uuid = incomingParams.authorized_uuid; var params = { ttl: 0, permissions: { resources: { channels: {}, groups: {}, + uuids: {}, users: {}, spaces: {} }, patterns: { channels: {}, groups: {}, + uuids: {}, users: {}, spaces: {} }, @@ -75,20 +86,13 @@ function prepareMessagePayload(modules, incomingParams) { }; if (resources) { - var users = resources.users, - spaces = resources.spaces, + var uuids = resources.uuids, channels = resources.channels, groups = resources.groups; - if (users) { - Object.keys(users).forEach(function (user) { - params.permissions.resources.users[user] = extractPermissions(users[user]); - }); - } - - if (spaces) { - Object.keys(spaces).forEach(function (space) { - params.permissions.resources.spaces[space] = extractPermissions(spaces[space]); + if (uuids) { + Object.keys(uuids).forEach(function (uuid) { + params.permissions.resources.uuids[uuid] = extractPermissions(uuids[uuid]); }); } @@ -106,20 +110,13 @@ function prepareMessagePayload(modules, incomingParams) { } if (patterns) { - var _users = patterns.users, - _spaces = patterns.spaces, + var _uuids = patterns.uuids, _channels = patterns.channels, _groups = patterns.groups; - if (_users) { - Object.keys(_users).forEach(function (user) { - params.permissions.patterns.users[user] = extractPermissions(_users[user]); - }); - } - - if (_spaces) { - Object.keys(_spaces).forEach(function (space) { - params.permissions.patterns.spaces[space] = extractPermissions(_spaces[space]); + if (_uuids) { + Object.keys(_uuids).forEach(function (uuid) { + params.permissions.patterns.uuids[uuid] = extractPermissions(_uuids[uuid]); }); } @@ -144,6 +141,10 @@ function prepareMessagePayload(modules, incomingParams) { params.permissions.meta = meta; } + if (authorized_uuid) { + params.permissions.uuid = "".concat(authorized_uuid); + } + return params; } @@ -154,7 +155,7 @@ function validateParams(modules, incomingParams) { if (!config.secretKey) return 'Missing Secret Key'; if (!incomingParams.resources && !incomingParams.patterns) return 'Missing either Resources or Patterns.'; - if (incomingParams.resources && (!incomingParams.resources.users || Object.keys(incomingParams.resources.users).length === 0) && (!incomingParams.resources.spaces || Object.keys(incomingParams.resources.spaces).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) || incomingParams.patterns && (!incomingParams.patterns.users || Object.keys(incomingParams.patterns.users).length === 0) && (!incomingParams.patterns.spaces || Object.keys(incomingParams.patterns.spaces).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)) { + if (incomingParams.resources && (!incomingParams.resources.uuids || Object.keys(incomingParams.resources.uuids).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) || incomingParams.patterns && (!incomingParams.patterns.uuids || Object.keys(incomingParams.patterns.uuids).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)) { return 'Missing values for either Resources or Patterns.'; } } diff --git a/lib/core/endpoints/access_manager/grant_token.js.map b/lib/core/endpoints/access_manager/grant_token.js.map index b44891fd2..a10e84c2a 100644 --- a/lib/core/endpoints/access_manager/grant_token.js.map +++ b/lib/core/endpoints/access_manager/grant_token.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/access_manager/grant_token.js"],"names":["getOperation","operationConstants","PNAccessManagerGrantToken","extractPermissions","permissions","permissionsResult","create","manage","write","read","prepareMessagePayload","modules","incomingParams","ttl","resources","patterns","meta","params","channels","groups","users","spaces","Object","keys","forEach","user","space","channel","group","validateParams","config","subscribeKey","publishKey","secretKey","length","postURL","usePost","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","postPayload","handleResponse","response","token","data"],"mappings":";;;;;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,yBAA1B;AACD;;AAEM,SAASC,kBAAT,CAA4BC,WAA5B,EAA2D;AAChE,MAAIC,iBAAiB,GAAG,CAAxB;;AAIA,MAAID,WAAW,CAACE,MAAhB,EAAwB;AACtBD,IAAAA,iBAAiB,IAAI,EAArB;AACD;;AAED,MAAID,WAAW,UAAf,EAAwB;AACtBC,IAAAA,iBAAiB,IAAI,CAArB;AACD;;AAED,MAAID,WAAW,CAACG,MAAhB,EAAwB;AACtBF,IAAAA,iBAAiB,IAAI,CAArB;AACD;;AAED,MAAID,WAAW,CAACI,KAAhB,EAAuB;AACrBH,IAAAA,iBAAiB,IAAI,CAArB;AACD;;AAED,MAAID,WAAW,CAACK,IAAhB,EAAsB;AACpBJ,IAAAA,iBAAiB,IAAI,CAArB;AACD;;AAID,SAAOA,iBAAP;AACD;;AAED,SAASK,qBAAT,CAA+BC,OAA/B,EAAwCC,cAAxC,EAAwD;AAAA,MAC9CC,GAD8C,GACXD,cADW,CAC9CC,GAD8C;AAAA,MACzCC,SADyC,GACXF,cADW,CACzCE,SADyC;AAAA,MAC9BC,QAD8B,GACXH,cADW,CAC9BG,QAD8B;AAAA,MACpBC,IADoB,GACXJ,cADW,CACpBI,IADoB;AAEtD,MAAMC,MAAM,GAAG;AACbJ,IAAAA,GAAG,EAAE,CADQ;AAEbT,IAAAA,WAAW,EAAE;AACXU,MAAAA,SAAS,EAAE;AACTI,QAAAA,QAAQ,EAAE,EADD;AAETC,QAAAA,MAAM,EAAE,EAFC;AAGTC,QAAAA,KAAK,EAAE,EAHE;AAITC,QAAAA,MAAM,EAAE;AAJC,OADA;AAOXN,MAAAA,QAAQ,EAAE;AACRG,QAAAA,QAAQ,EAAE,EADF;AAERC,QAAAA,MAAM,EAAE,EAFA;AAGRC,QAAAA,KAAK,EAAE,EAHC;AAIRC,QAAAA,MAAM,EAAE;AAJA,OAPC;AAaXL,MAAAA,IAAI,EAAE;AAbK;AAFA,GAAf;;AAmBA,MAAIF,SAAJ,EAAe;AAAA,QACLM,KADK,GAC+BN,SAD/B,CACLM,KADK;AAAA,QACEC,MADF,GAC+BP,SAD/B,CACEO,MADF;AAAA,QACUH,QADV,GAC+BJ,SAD/B,CACUI,QADV;AAAA,QACoBC,MADpB,GAC+BL,SAD/B,CACoBK,MADpB;;AAGb,QAAIC,KAAJ,EAAW;AACTE,MAAAA,MAAM,CAACC,IAAP,CAAYH,KAAZ,EAAmBI,OAAnB,CAA2B,UAACC,IAAD,EAAU;AACnCR,QAAAA,MAAM,CAACb,WAAP,CAAmBU,SAAnB,CAA6BM,KAA7B,CAAmCK,IAAnC,IAA2CtB,kBAAkB,CAACiB,KAAK,CAACK,IAAD,CAAN,CAA7D;AACD,OAFD;AAGD;;AAED,QAAIJ,MAAJ,EAAY;AACVC,MAAAA,MAAM,CAACC,IAAP,CAAYF,MAAZ,EAAoBG,OAApB,CAA4B,UAACE,KAAD,EAAW;AACrCT,QAAAA,MAAM,CAACb,WAAP,CAAmBU,SAAnB,CAA6BO,MAA7B,CAAoCK,KAApC,IAA6CvB,kBAAkB,CAACkB,MAAM,CAACK,KAAD,CAAP,CAA/D;AACD,OAFD;AAGD;;AAED,QAAIR,QAAJ,EAAc;AACZI,MAAAA,MAAM,CAACC,IAAP,CAAYL,QAAZ,EAAsBM,OAAtB,CAA8B,UAACG,OAAD,EAAa;AACzCV,QAAAA,MAAM,CAACb,WAAP,CAAmBU,SAAnB,CAA6BI,QAA7B,CAAsCS,OAAtC,IAAiDxB,kBAAkB,CAACe,QAAQ,CAACS,OAAD,CAAT,CAAnE;AACD,OAFD;AAGD;;AAED,QAAIR,MAAJ,EAAY;AACVG,MAAAA,MAAM,CAACC,IAAP,CAAYJ,MAAZ,EAAoBK,OAApB,CAA4B,UAACI,KAAD,EAAW;AACrCX,QAAAA,MAAM,CAACb,WAAP,CAAmBU,SAAnB,CAA6BK,MAA7B,CAAoCS,KAApC,IAA6CzB,kBAAkB,CAACgB,MAAM,CAACS,KAAD,CAAP,CAA/D;AACD,OAFD;AAGD;AACF;;AAED,MAAIb,QAAJ,EAAc;AAAA,QACJK,MADI,GACgCL,QADhC,CACJK,KADI;AAAA,QACGC,OADH,GACgCN,QADhC,CACGM,MADH;AAAA,QACWH,SADX,GACgCH,QADhC,CACWG,QADX;AAAA,QACqBC,OADrB,GACgCJ,QADhC,CACqBI,MADrB;;AAGZ,QAAIC,MAAJ,EAAW;AACTE,MAAAA,MAAM,CAACC,IAAP,CAAYH,MAAZ,EAAmBI,OAAnB,CAA2B,UAACC,IAAD,EAAU;AACnCR,QAAAA,MAAM,CAACb,WAAP,CAAmBW,QAAnB,CAA4BK,KAA5B,CAAkCK,IAAlC,IAA0CtB,kBAAkB,CAACiB,MAAK,CAACK,IAAD,CAAN,CAA5D;AACD,OAFD;AAGD;;AAED,QAAIJ,OAAJ,EAAY;AACVC,MAAAA,MAAM,CAACC,IAAP,CAAYF,OAAZ,EAAoBG,OAApB,CAA4B,UAACE,KAAD,EAAW;AACrCT,QAAAA,MAAM,CAACb,WAAP,CAAmBW,QAAnB,CAA4BM,MAA5B,CAAmCK,KAAnC,IAA4CvB,kBAAkB,CAACkB,OAAM,CAACK,KAAD,CAAP,CAA9D;AACD,OAFD;AAGD;;AAED,QAAIR,SAAJ,EAAc;AACZI,MAAAA,MAAM,CAACC,IAAP,CAAYL,SAAZ,EAAsBM,OAAtB,CAA8B,UAACG,OAAD,EAAa;AACzCV,QAAAA,MAAM,CAACb,WAAP,CAAmBW,QAAnB,CAA4BG,QAA5B,CAAqCS,OAArC,IAAgDxB,kBAAkB,CAACe,SAAQ,CAACS,OAAD,CAAT,CAAlE;AACD,OAFD;AAGD;;AAED,QAAIR,OAAJ,EAAY;AACVG,MAAAA,MAAM,CAACC,IAAP,CAAYJ,OAAZ,EAAoBK,OAApB,CAA4B,UAACI,KAAD,EAAW;AACrCX,QAAAA,MAAM,CAACb,WAAP,CAAmBW,QAAnB,CAA4BI,MAA5B,CAAmCS,KAAnC,IAA4CzB,kBAAkB,CAACgB,OAAM,CAACS,KAAD,CAAP,CAA9D;AACD,OAFD;AAGD;AACF;;AAED,MAAIf,GAAG,IAAIA,GAAG,KAAK,CAAnB,EAAsB;AACpBI,IAAAA,MAAM,CAACJ,GAAP,GAAaA,GAAb;AACD;;AAED,MAAIG,IAAJ,EAAU;AACRC,IAAAA,MAAM,CAACb,WAAP,CAAmBY,IAAnB,GAA0BA,IAA1B;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASY,cAAT,CACLlB,OADK,EAELC,cAFK,EAGL;AAAA,MACMkB,MADN,GACiBnB,OADjB,CACMmB,MADN;AAGA,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAI,CAACD,MAAM,CAACE,UAAZ,EAAwB,OAAO,qBAAP;AACxB,MAAI,CAACF,MAAM,CAACG,SAAZ,EAAuB,OAAO,oBAAP;AAEvB,MAAI,CAACrB,cAAc,CAACE,SAAhB,IAA6B,CAACF,cAAc,CAACG,QAAjD,EAA2D,OAAO,uCAAP;;AAE3D,MAEKH,cAAc,CAACE,SAAhB,KACC,CAACF,cAAc,CAACE,SAAf,CAAyBM,KAA1B,IAAmCE,MAAM,CAACC,IAAP,CAAYX,cAAc,CAACE,SAAf,CAAyBM,KAArC,EAA4Cc,MAA5C,KAAuD,CAD3F,MAEC,CAACtB,cAAc,CAACE,SAAf,CAAyBO,MAA1B,IAAoCC,MAAM,CAACC,IAAP,CAAYX,cAAc,CAACE,SAAf,CAAyBO,MAArC,EAA6Ca,MAA7C,KAAwD,CAF7F,MAGC,CAACtB,cAAc,CAACE,SAAf,CAAyBI,QAA1B,IAAsCI,MAAM,CAACC,IAAP,CAAYX,cAAc,CAACE,SAAf,CAAyBI,QAArC,EAA+CgB,MAA/C,KAA0D,CAHjG,MAIC,CAACtB,cAAc,CAACE,SAAf,CAAyBK,MAA1B,IAAoCG,MAAM,CAACC,IAAP,CAAYX,cAAc,CAACE,SAAf,CAAyBK,MAArC,EAA6Ce,MAA7C,KAAwD,CAJ7F,CADF,IAQGtB,cAAc,CAACG,QAAhB,KACC,CAACH,cAAc,CAACG,QAAf,CAAwBK,KAAzB,IAAkCE,MAAM,CAACC,IAAP,CAAYX,cAAc,CAACG,QAAf,CAAwBK,KAApC,EAA2Cc,MAA3C,KAAsD,CADzF,MAEC,CAACtB,cAAc,CAACG,QAAf,CAAwBM,MAAzB,IAAmCC,MAAM,CAACC,IAAP,CAAYX,cAAc,CAACG,QAAf,CAAwBM,MAApC,EAA4Ca,MAA5C,KAAuD,CAF3F,MAGC,CAACtB,cAAc,CAACG,QAAf,CAAwBG,QAAzB,IAAqCI,MAAM,CAACC,IAAP,CAAYX,cAAc,CAACG,QAAf,CAAwBG,QAApC,EAA8CgB,MAA9C,KAAyD,CAH/F,MAIC,CAACtB,cAAc,CAACG,QAAf,CAAwBI,MAAzB,IAAmCG,MAAM,CAACC,IAAP,CAAYX,cAAc,CAACG,QAAf,CAAwBI,MAApC,EAA4Ce,MAA5C,KAAuD,CAJ3F,CATJ,EAeE;AACA,WAAO,kDAAP;AACD;AACF;;AAEM,SAASC,OAAT,CAAiBxB,OAAjB,EAAiD;AAAA,MAChDmB,MADgD,GACrCnB,OADqC,CAChDmB,MADgD;AAEtD,2BAAkBA,MAAM,CAACC,YAAzB;AACD;;AAEM,SAASK,OAAT,GAAmB;AACxB,SAAO,IAAP;AACD;;AAEM,SAASC,iBAAT,OAA8D;AAAA,MAAjCP,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACQ,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,KAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,WAAT,CACL9B,OADK,EAELC,cAFK,EAGG;AACR,SAAOF,qBAAqB,CAACC,OAAD,EAAUC,cAAV,CAA5B;AACD;;AAEM,SAAS8B,cAAT,CACL/B,OADK,EAELgC,QAFK,EAGG;AACR,MAAIC,KAAK,GAAGD,QAAQ,CAACE,IAAT,CAAcD,KAA1B;AAEA,SAAOA,KAAP;AACD","sourcesContent":["/* @flow */\n\nimport { GrantTokenInput, GrantTokenObject, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNAccessManagerGrantToken;\n}\n\nexport function extractPermissions(permissions: GrantTokenObject) {\n let permissionsResult = 0;\n\n /* eslint-disable */\n\n if (permissions.create) {\n permissionsResult |= 16;\n }\n\n if (permissions.delete) {\n permissionsResult |= 8;\n }\n\n if (permissions.manage) {\n permissionsResult |= 4;\n }\n\n if (permissions.write) {\n permissionsResult |= 2;\n }\n\n if (permissions.read) {\n permissionsResult |= 1;\n }\n\n /* eslint-enable */\n\n return permissionsResult;\n}\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { ttl, resources, patterns, meta } = incomingParams;\n const params = {\n ttl: 0,\n permissions: {\n resources: {\n channels: {},\n groups: {},\n users: {},\n spaces: {}\n },\n patterns: {\n channels: {},\n groups: {},\n users: {},\n spaces: {}\n },\n meta: {}\n }\n };\n\n if (resources) {\n const { users, spaces, channels, groups } = resources;\n\n if (users) {\n Object.keys(users).forEach((user) => {\n params.permissions.resources.users[user] = extractPermissions(users[user]);\n });\n }\n\n if (spaces) {\n Object.keys(spaces).forEach((space) => {\n params.permissions.resources.spaces[space] = extractPermissions(spaces[space]);\n });\n }\n\n if (channels) {\n Object.keys(channels).forEach((channel) => {\n params.permissions.resources.channels[channel] = extractPermissions(channels[channel]);\n });\n }\n\n if (groups) {\n Object.keys(groups).forEach((group) => {\n params.permissions.resources.groups[group] = extractPermissions(groups[group]);\n });\n }\n }\n\n if (patterns) {\n const { users, spaces, channels, groups } = patterns;\n\n if (users) {\n Object.keys(users).forEach((user) => {\n params.permissions.patterns.users[user] = extractPermissions(users[user]);\n });\n }\n\n if (spaces) {\n Object.keys(spaces).forEach((space) => {\n params.permissions.patterns.spaces[space] = extractPermissions(spaces[space]);\n });\n }\n\n if (channels) {\n Object.keys(channels).forEach((channel) => {\n params.permissions.patterns.channels[channel] = extractPermissions(channels[channel]);\n });\n }\n\n if (groups) {\n Object.keys(groups).forEach((group) => {\n params.permissions.patterns.groups[group] = extractPermissions(groups[group]);\n });\n }\n }\n\n if (ttl || ttl === 0) {\n params.ttl = ttl;\n }\n\n if (meta) {\n params.permissions.meta = meta;\n }\n\n return params;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: GrantTokenInput\n) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!config.publishKey) return 'Missing Publish Key';\n if (!config.secretKey) return 'Missing Secret Key';\n\n if (!incomingParams.resources && !incomingParams.patterns) return 'Missing either Resources or Patterns.';\n\n if (\n (\n (incomingParams.resources) &&\n (!incomingParams.resources.users || Object.keys(incomingParams.resources.users).length === 0) &&\n (!incomingParams.resources.spaces || Object.keys(incomingParams.resources.spaces).length === 0) &&\n (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) &&\n (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0)\n ) ||\n (\n (incomingParams.patterns) &&\n (!incomingParams.patterns.users || Object.keys(incomingParams.patterns.users).length === 0) &&\n (!incomingParams.patterns.spaces || Object.keys(incomingParams.patterns.spaces).length === 0) &&\n (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) &&\n (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)\n )\n ) {\n return 'Missing values for either Resources or Patterns.';\n }\n}\n\nexport function postURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v3/pam/${config.subscribeKey}/grant`;\n}\n\nexport function usePost() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return false;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function postPayload(\n modules: ModulesInject,\n incomingParams: GrantTokenInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n response: Object\n): string {\n let token = response.data.token;\n\n return token;\n}\n"],"file":"grant_token.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/access_manager/grant_token.js"],"names":["getOperation","operationConstants","PNAccessManagerGrantToken","extractPermissions","permissions","permissionsResult","join","update","get","manage","write","read","prepareMessagePayload","modules","incomingParams","ttl","resources","patterns","meta","authorized_uuid","params","channels","groups","uuids","users","spaces","Object","keys","forEach","uuid","channel","group","validateParams","config","subscribeKey","publishKey","secretKey","length","postURL","usePost","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","postPayload","handleResponse","response","token","data"],"mappings":"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","sourcesContent":["/* @flow */\n/* eslint camelcase: 0 */\n\nimport { GrantTokenInput, GrantTokenObject, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNAccessManagerGrantToken;\n}\n\nexport function extractPermissions(permissions: GrantTokenObject) {\n let permissionsResult = 0;\n\n /* eslint-disable */\n\n if (permissions.join) {\n permissionsResult |= 128;\n }\n\n if (permissions.update) {\n permissionsResult |= 64;\n }\n\n if (permissions.get) {\n permissionsResult |= 32;\n }\n\n if (permissions.delete) {\n permissionsResult |= 8;\n }\n\n if (permissions.manage) {\n permissionsResult |= 4;\n }\n\n if (permissions.write) {\n permissionsResult |= 2;\n }\n\n if (permissions.read) {\n permissionsResult |= 1;\n }\n\n /* eslint-enable */\n\n return permissionsResult;\n}\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { ttl, resources, patterns, meta, authorized_uuid } = incomingParams;\n const params: any = {\n ttl: 0,\n permissions: {\n resources: {\n channels: {},\n groups: {},\n uuids: {},\n users: {}, // not used, needed for api backward compatibility\n spaces: {} // not used, needed for api backward compatibility\n },\n patterns: {\n channels: {},\n groups: {},\n uuids: {},\n users: {}, // not used, needed for api backward compatibility\n spaces: {} // not used, needed for api backward compatibility\n },\n meta: {}\n }\n };\n\n if (resources) {\n const { uuids, channels, groups } = resources;\n\n if (uuids) {\n Object.keys(uuids).forEach((uuid) => {\n params.permissions.resources.uuids[uuid] = extractPermissions(uuids[uuid]);\n });\n }\n\n if (channels) {\n Object.keys(channels).forEach((channel) => {\n params.permissions.resources.channels[channel] = extractPermissions(channels[channel]);\n });\n }\n\n if (groups) {\n Object.keys(groups).forEach((group) => {\n params.permissions.resources.groups[group] = extractPermissions(groups[group]);\n });\n }\n }\n\n if (patterns) {\n const { uuids, channels, groups } = patterns;\n\n if (uuids) {\n Object.keys(uuids).forEach((uuid) => {\n params.permissions.patterns.uuids[uuid] = extractPermissions(uuids[uuid]);\n });\n }\n\n if (channels) {\n Object.keys(channels).forEach((channel) => {\n params.permissions.patterns.channels[channel] = extractPermissions(channels[channel]);\n });\n }\n\n if (groups) {\n Object.keys(groups).forEach((group) => {\n params.permissions.patterns.groups[group] = extractPermissions(groups[group]);\n });\n }\n }\n\n if (ttl || ttl === 0) {\n params.ttl = ttl;\n }\n\n if (meta) {\n params.permissions.meta = meta;\n }\n\n if (authorized_uuid) {\n params.permissions.uuid = `${authorized_uuid}`; // ensure this is a string\n }\n\n return params;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: GrantTokenInput\n) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!config.publishKey) return 'Missing Publish Key';\n if (!config.secretKey) return 'Missing Secret Key';\n\n if (!incomingParams.resources && !incomingParams.patterns) return 'Missing either Resources or Patterns.';\n\n if (\n (\n (incomingParams.resources) &&\n (!incomingParams.resources.uuids || Object.keys(incomingParams.resources.uuids).length === 0) &&\n (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) &&\n (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0)\n ) ||\n (\n (incomingParams.patterns) &&\n (!incomingParams.patterns.uuids || Object.keys(incomingParams.patterns.uuids).length === 0) &&\n (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) &&\n (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0)\n )\n ) {\n return 'Missing values for either Resources or Patterns.';\n }\n}\n\nexport function postURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v3/pam/${config.subscribeKey}/grant`;\n}\n\nexport function usePost() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return false;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function postPayload(\n modules: ModulesInject,\n incomingParams: GrantTokenInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n response: Object\n): string {\n let token = response.data.token;\n\n return token;\n}\n"],"file":"grant_token.js"} \ No newline at end of file diff --git a/lib/core/endpoints/access_manager/revoke_token.js b/lib/core/endpoints/access_manager/revoke_token.js new file mode 100644 index 000000000..0aaefedae --- /dev/null +++ b/lib/core/endpoints/access_manager/revoke_token.js @@ -0,0 +1,59 @@ +"use strict"; + +var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports["default"] = void 0; + +var _operations = _interopRequireDefault(require("../../constants/operations")); + +var _utils = _interopRequireDefault(require("../../utils")); + +var endpoint = { + getOperation: function getOperation() { + return _operations["default"].PNAccessManagerRevokeToken; + }, + validateParams: function validateParams(modules, token) { + var secretKey = modules.config.secretKey; + + if (!secretKey) { + return 'Missing Secret Key'; + } + + if (!token) { + return "token can't be empty"; + } + }, + getURL: function getURL(_ref, token) { + var config = _ref.config; + return "/v3/pam/".concat(config.subscribeKey, "/grant/").concat(_utils["default"].encodeString(token)); + }, + useDelete: function useDelete() { + return true; + }, + getRequestTimeout: function getRequestTimeout(_ref2) { + var config = _ref2.config; + return config.getTransactionTimeout(); + }, + isAuthSupported: function isAuthSupported() { + return false; + }, + prepareParams: function prepareParams(_ref3) { + var config = _ref3.config; + return { + uuid: config.getUUID() + }; + }, + handleResponse: function handleResponse(_, response) { + return { + status: response.status, + data: response.data + }; + } +}; +var _default = endpoint; +exports["default"] = _default; +module.exports = exports.default; +//# sourceMappingURL=revoke_token.js.map diff --git a/lib/core/endpoints/access_manager/revoke_token.js.map b/lib/core/endpoints/access_manager/revoke_token.js.map new file mode 100644 index 000000000..1511889ab --- /dev/null +++ b/lib/core/endpoints/access_manager/revoke_token.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["core/endpoints/access_manager/revoke_token.js"],"names":["endpoint","getOperation","operationConstants","PNAccessManagerRevokeToken","validateParams","modules","token","secretKey","config","getURL","subscribeKey","utils","encodeString","useDelete","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","uuid","getUUID","handleResponse","_","response","status","data"],"mappings":";;;;;;;;;AAGA;;AACA;;AASA,IAAMA,QAA8D,GAAG;AACrEC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,0BAAzB;AAAA,GADuD;AAGrEC,EAAAA,cAAc,EAAE,wBAACC,OAAD,EAAUC,KAAV,EAAoB;AAClC,QAAQC,SAAR,GAAsBF,OAAO,CAACG,MAA9B,CAAQD,SAAR;;AACA,QAAI,CAACA,SAAL,EAAgB;AACd,aAAO,oBAAP;AACD;;AAED,QAAI,CAACD,KAAL,EAAY;AACV,aAAO,sBAAP;AACD;AACF,GAZoE;AAcrEG,EAAAA,MAAM,EAAE,sBAAaH,KAAb;AAAA,QAAGE,MAAH,QAAGA,MAAH;AAAA,6BAAkCA,MAAM,CAACE,YAAzC,oBAA+DC,kBAAMC,YAAN,CAAmBN,KAAnB,CAA/D;AAAA,GAd6D;AAerEO,EAAAA,SAAS,EAAE;AAAA,WAAM,IAAN;AAAA,GAf0D;AAiBrEC,EAAAA,iBAAiB,EAAE;AAAA,QAAGN,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACO,qBAAP,EAAhB;AAAA,GAjBkD;AAmBrEC,EAAAA,eAAe,EAAE;AAAA,WAAM,KAAN;AAAA,GAnBoD;AAqBrEC,EAAAA,aAAa,EAAE;AAAA,QAAGT,MAAH,SAAGA,MAAH;AAAA,WAAiB;AAC9BU,MAAAA,IAAI,EAAEV,MAAM,CAACW,OAAP;AADwB,KAAjB;AAAA,GArBsD;AAyBrEC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AAzBqD,CAAvE;eA+BexB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport type RevokeTokenParams = string;\n\nexport type RevokeTokenResult = {|\n status: 200,\n data: string\n|}\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNAccessManagerRevokeToken,\n\n validateParams: (modules, token) => {\n const { secretKey } = modules.config;\n if (!secretKey) {\n return 'Missing Secret Key';\n }\n\n if (!token) {\n return \"token can't be empty\";\n }\n },\n\n getURL: ({ config }, token) => `/v3/pam/${config.subscribeKey}/grant/${utils.encodeString(token)}`,\n useDelete: () => true,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => false,\n\n prepareParams: ({ config }) => ({\n uuid: config.getUUID(),\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"revoke_token.js"} \ No newline at end of file diff --git a/lib/core/endpoints/actions/add_message_action.js b/lib/core/endpoints/actions/add_message_action.js index 7757e7d19..cfd8cf201 100644 --- a/lib/core/endpoints/actions/add_message_action.js +++ b/lib/core/endpoints/actions/add_message_action.js @@ -6,15 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.postURL = postURL; -exports.getRequestTimeout = getRequestTimeout; exports.getRequestHeaders = getRequestHeaders; +exports.getRequestTimeout = getRequestTimeout; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/actions/add_message_action.js.map b/lib/core/endpoints/actions/add_message_action.js.map index 723d2c958..1c69eceea 100644 --- a/lib/core/endpoints/actions/add_message_action.js.map +++ b/lib/core/endpoints/actions/add_message_action.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/actions/add_message_action.js"],"names":["getOperation","operationConstants","PNAddMessageActionOperation","validateParams","incomingParams","config","action","channel","messageTimetoken","subscribeKey","value","type","length","usePost","postURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","getRequestHeaders","isAuthSupported","prepareParams","postPayload","modules","handleResponse","addMessageActionResponse","data"],"mappings":";;;;;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAGO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,2BAA1B;AACD;;AAEM,SAASC,cAAT,OAELC,cAFK,EAGL;AAAA,MAFEC,MAEF,QAFEA,MAEF;AAAA,MACMC,MADN,GAC4CF,cAD5C,CACME,MADN;AAAA,MACcC,OADd,GAC4CH,cAD5C,CACcG,OADd;AAAA,MACuBC,gBADvB,GAC4CJ,cAD5C,CACuBI,gBADvB;AAGA,MAAI,CAACA,gBAAL,EAAuB,OAAO,2BAAP;AACvB,MAAI,CAACH,MAAM,CAACI,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAI,CAACF,OAAL,EAAc,OAAO,yBAAP;AACd,MAAI,CAACD,MAAL,EAAa,OAAO,gBAAP;AACb,MAAI,CAACA,MAAM,CAACI,KAAZ,EAAmB,OAAO,sBAAP;AACnB,MAAI,CAACJ,MAAM,CAACK,IAAZ,EAAkB,OAAO,qBAAP;AAClB,MAAIL,MAAM,CAACK,IAAP,CAAYC,MAAZ,GAAqB,EAAzB,EAA6B,OAAO,+CAAP;AAC9B;;AAEM,SAASC,OAAT,GAAmB;AACxB,SAAO,IAAP;AACD;;AAEM,SAASC,OAAT,QAELV,cAFK,EAGG;AAAA,MAFNC,MAEM,SAFNA,MAEM;AAAA,MACFE,OADE,GAC4BH,cAD5B,CACFG,OADE;AAAA,MACOC,gBADP,GAC4BJ,cAD5B,CACOI,gBADP;AAGR,uCAA8BH,MAAM,CAACI,YAArC,sBAA6DM,kBAAMC,YAAN,CAAmBT,OAAnB,CAA7D,sBAAoGC,gBAApG;AACD;;AAEM,SAASS,iBAAT,QAAsD;AAAA,MAAzBZ,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACa,qBAAP,EAAP;AACD;;AAEM,SAASC,iBAAT,GAAqC;AAC1C,SAAO;AAAE,oBAAgB;AAAlB,GAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,WAAT,CACLC,OADK,EAELnB,cAFK,EAGG;AACR,SAAOA,cAAc,CAACE,MAAtB;AACD;;AAEM,SAASkB,cAAT,CACLD,OADK,EAELE,wBAFK,EAGqB;AAC1B,SAAO;AAAEC,IAAAA,IAAI,EAAED,wBAAwB,CAACC;AAAjC,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n AddMessageActionInput,\n AddMessageActionResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\n\nexport function getOperation(): string {\n return operationConstants.PNAddMessageActionOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: AddMessageActionInput\n) {\n let { action, channel, messageTimetoken } = incomingParams;\n\n if (!messageTimetoken) return 'Missing message timetoken';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!channel) return 'Missing message channel';\n if (!action) return 'Missing Action';\n if (!action.value) return 'Missing Action.value';\n if (!action.type) return 'Missing Action.type';\n if (action.type.length > 15) return 'Action.type value exceed maximum length of 15';\n}\n\nexport function usePost() {\n return true;\n}\n\nexport function postURL(\n { config }: ModulesInject,\n incomingParams: AddMessageActionInput\n): string {\n let { channel, messageTimetoken } = incomingParams;\n\n return `/v1/message-actions/${config.subscribeKey}/channel/${utils.encodeString(channel)}/message/${messageTimetoken}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function getRequestHeaders(): Object {\n return { 'Content-Type': 'application/json' };\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function postPayload(\n modules: ModulesInject,\n incomingParams: AddMessageActionInput\n): string {\n return incomingParams.action;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n addMessageActionResponse: Object\n): AddMessageActionResponse {\n return { data: addMessageActionResponse.data };\n}\n"],"file":"add_message_action.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/actions/add_message_action.js"],"names":["getOperation","operationConstants","PNAddMessageActionOperation","validateParams","incomingParams","config","action","channel","messageTimetoken","subscribeKey","value","type","length","usePost","postURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","getRequestHeaders","isAuthSupported","prepareParams","postPayload","modules","handleResponse","addMessageActionResponse","data"],"mappings":";;;;;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAGO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,2BAA1B;AACD;;AAEM,SAASC,cAAT,OAELC,cAFK,EAGL;AAAA,MAFEC,MAEF,QAFEA,MAEF;AACA,MAAMC,MAAN,GAA4CF,cAA5C,CAAME,MAAN;AAAA,MAAcC,OAAd,GAA4CH,cAA5C,CAAcG,OAAd;AAAA,MAAuBC,gBAAvB,GAA4CJ,cAA5C,CAAuBI,gBAAvB;AAEA,MAAI,CAACA,gBAAL,EAAuB,OAAO,2BAAP;AACvB,MAAI,CAACH,MAAM,CAACI,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAI,CAACF,OAAL,EAAc,OAAO,yBAAP;AACd,MAAI,CAACD,MAAL,EAAa,OAAO,gBAAP;AACb,MAAI,CAACA,MAAM,CAACI,KAAZ,EAAmB,OAAO,sBAAP;AACnB,MAAI,CAACJ,MAAM,CAACK,IAAZ,EAAkB,OAAO,qBAAP;AAClB,MAAIL,MAAM,CAACK,IAAP,CAAYC,MAAZ,GAAqB,EAAzB,EAA6B,OAAO,+CAAP;AAC9B;;AAEM,SAASC,OAAT,GAAmB;AACxB,SAAO,IAAP;AACD;;AAEM,SAASC,OAAT,QAELV,cAFK,EAGG;AAAA,MAFNC,MAEM,SAFNA,MAEM;AACR,MAAME,OAAN,GAAoCH,cAApC,CAAMG,OAAN;AAAA,MAAeC,gBAAf,GAAoCJ,cAApC,CAAeI,gBAAf;AAEA,uCAA8BH,MAAM,CAACI,YAArC,sBAA6DM,kBAAMC,YAAN,CAAmBT,OAAnB,CAA7D,sBAAoGC,gBAApG;AACD;;AAEM,SAASS,iBAAT,QAAsD;AAAA,MAAzBZ,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACa,qBAAP,EAAP;AACD;;AAEM,SAASC,iBAAT,GAAqC;AAC1C,SAAO;AAAE,oBAAgB;AAAlB,GAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,WAAT,CACLC,OADK,EAELnB,cAFK,EAGG;AACR,SAAOA,cAAc,CAACE,MAAtB;AACD;;AAEM,SAASkB,cAAT,CACLD,OADK,EAELE,wBAFK,EAGqB;AAC1B,SAAO;AAAEC,IAAAA,IAAI,EAAED,wBAAwB,CAACC;AAAjC,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n AddMessageActionInput,\n AddMessageActionResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\n\nexport function getOperation(): string {\n return operationConstants.PNAddMessageActionOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: AddMessageActionInput\n) {\n let { action, channel, messageTimetoken } = incomingParams;\n\n if (!messageTimetoken) return 'Missing message timetoken';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!channel) return 'Missing message channel';\n if (!action) return 'Missing Action';\n if (!action.value) return 'Missing Action.value';\n if (!action.type) return 'Missing Action.type';\n if (action.type.length > 15) return 'Action.type value exceed maximum length of 15';\n}\n\nexport function usePost() {\n return true;\n}\n\nexport function postURL(\n { config }: ModulesInject,\n incomingParams: AddMessageActionInput\n): string {\n let { channel, messageTimetoken } = incomingParams;\n\n return `/v1/message-actions/${config.subscribeKey}/channel/${utils.encodeString(channel)}/message/${messageTimetoken}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function getRequestHeaders(): Object {\n return { 'Content-Type': 'application/json' };\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function postPayload(\n modules: ModulesInject,\n incomingParams: AddMessageActionInput\n): string {\n return incomingParams.action;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n addMessageActionResponse: Object\n): AddMessageActionResponse {\n return { data: addMessageActionResponse.data };\n}\n"],"file":"add_message_action.js"} \ No newline at end of file diff --git a/lib/core/endpoints/actions/get_message_actions.js b/lib/core/endpoints/actions/get_message_actions.js index b26c8e177..f3c256440 100644 --- a/lib/core/endpoints/actions/get_message_actions.js +++ b/lib/core/endpoints/actions/get_message_actions.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/actions/get_message_actions.js.map b/lib/core/endpoints/actions/get_message_actions.js.map index a6c292f37..326aab4a3 100644 --- a/lib/core/endpoints/actions/get_message_actions.js.map +++ b/lib/core/endpoints/actions/get_message_actions.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/actions/get_message_actions.js"],"names":["getOperation","operationConstants","PNGetMessageActionsOperation","validateParams","incomingParams","config","channel","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","modules","limit","start","end","outgoingParams","handleResponse","getMessageActionsResponse","response","data","length","actionTimetoken"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAGO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,4BAA1B;AACD;;AAEM,SAASC,cAAT,OAELC,cAFK,EAGL;AAAA,MAFEC,MAEF,QAFEA,MAEF;AAAA,MACMC,OADN,GACkBF,cADlB,CACME,OADN;AAGA,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAI,CAACD,OAAL,EAAc,OAAO,yBAAP;AACf;;AAGM,SAASE,MAAT,QAELJ,cAFK,EAGG;AAAA,MAFNC,MAEM,SAFNA,MAEM;AAAA,MACFC,OADE,GACUF,cADV,CACFE,OADE;AAGR,uCAA8BD,MAAM,CAACE,YAArC,sBAA6DE,kBAAMC,YAAN,CAAmBJ,OAAnB,CAA7D;AACD;;AAEM,SAASK,iBAAT,QAAsD;AAAA,MAAzBN,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLC,OADK,EAELX,cAFK,EAGG;AAAA,MACAY,KADA,GACsBZ,cADtB,CACAY,KADA;AAAA,MACOC,KADP,GACsBb,cADtB,CACOa,KADP;AAAA,MACcC,GADd,GACsBd,cADtB,CACcc,GADd;AAER,MAAIC,cAAsB,GAAG,EAA7B;AAEA,MAAIH,KAAJ,EAAWG,cAAc,CAACH,KAAf,GAAuBA,KAAvB;AACX,MAAIC,KAAJ,EAAWE,cAAc,CAACF,KAAf,GAAuBA,KAAvB;AACX,MAAIC,GAAJ,EAASC,cAAc,CAACD,GAAf,GAAqBA,GAArB;AAET,SAAOC,cAAP;AACD;;AAEM,SAASC,cAAT,CACLL,OADK,EAELM,yBAFK,EAGsB;AAE3B,MAAIC,QAAQ,GAAG;AAAEC,IAAAA,IAAI,EAAEF,yBAAyB,CAACE,IAAlC;AAAwCN,IAAAA,KAAK,EAAE,IAA/C;AAAqDC,IAAAA,GAAG,EAAE;AAA1D,GAAf;;AAEA,MAAII,QAAQ,CAACC,IAAT,CAAcC,MAAlB,EAA0B;AACxBF,IAAAA,QAAQ,CAACJ,GAAT,GAAeI,QAAQ,CAACC,IAAT,CAAcD,QAAQ,CAACC,IAAT,CAAcC,MAAd,GAAuB,CAArC,EAAwCC,eAAvD;AACAH,IAAAA,QAAQ,CAACL,KAAT,GAAiBK,QAAQ,CAACC,IAAT,CAAc,CAAd,EAAiBE,eAAlC;AACD;;AAED,SAAOH,QAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n GetMessageActionsInput,\n GetMessageActionsResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\n\nexport function getOperation(): string {\n return operationConstants.PNGetMessageActionsOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: GetMessageActionsInput\n) {\n let { channel } = incomingParams;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!channel) return 'Missing message channel';\n}\n\n\nexport function getURL(\n { config }: ModulesInject,\n incomingParams: GetMessageActionsInput\n): string {\n let { channel } = incomingParams;\n\n return `/v1/message-actions/${config.subscribeKey}/channel/${utils.encodeString(channel)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: GetMessageActionsInput\n): Object {\n const { limit, start, end } = incomingParams;\n let outgoingParams: Object = {};\n\n if (limit) outgoingParams.limit = limit;\n if (start) outgoingParams.start = start;\n if (end) outgoingParams.end = end;\n\n return outgoingParams;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n getMessageActionsResponse: Object\n): GetMessageActionsResponse {\n /** @type GetMessageActionsResponse */\n let response = { data: getMessageActionsResponse.data, start: null, end: null };\n\n if (response.data.length) {\n response.end = response.data[response.data.length - 1].actionTimetoken;\n response.start = response.data[0].actionTimetoken;\n }\n\n return response;\n}\n"],"file":"get_message_actions.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/actions/get_message_actions.js"],"names":["getOperation","operationConstants","PNGetMessageActionsOperation","validateParams","incomingParams","config","channel","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","modules","limit","start","end","outgoingParams","handleResponse","getMessageActionsResponse","response","data","length","actionTimetoken"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAGO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,4BAA1B;AACD;;AAEM,SAASC,cAAT,OAELC,cAFK,EAGL;AAAA,MAFEC,MAEF,QAFEA,MAEF;AACA,MAAMC,OAAN,GAAkBF,cAAlB,CAAME,OAAN;AAEA,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAI,CAACD,OAAL,EAAc,OAAO,yBAAP;AACf;;AAGM,SAASE,MAAT,QAELJ,cAFK,EAGG;AAAA,MAFNC,MAEM,SAFNA,MAEM;AACR,MAAMC,OAAN,GAAkBF,cAAlB,CAAME,OAAN;AAEA,uCAA8BD,MAAM,CAACE,YAArC,sBAA6DE,kBAAMC,YAAN,CAAmBJ,OAAnB,CAA7D;AACD;;AAEM,SAASK,iBAAT,QAAsD;AAAA,MAAzBN,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLC,OADK,EAELX,cAFK,EAGG;AACR,MAAQY,KAAR,GAA8BZ,cAA9B,CAAQY,KAAR;AAAA,MAAeC,KAAf,GAA8Bb,cAA9B,CAAea,KAAf;AAAA,MAAsBC,GAAtB,GAA8Bd,cAA9B,CAAsBc,GAAtB;AACA,MAAIC,cAAsB,GAAG,EAA7B;AAEA,MAAIH,KAAJ,EAAWG,cAAc,CAACH,KAAf,GAAuBA,KAAvB;AACX,MAAIC,KAAJ,EAAWE,cAAc,CAACF,KAAf,GAAuBA,KAAvB;AACX,MAAIC,GAAJ,EAASC,cAAc,CAACD,GAAf,GAAqBA,GAArB;AAET,SAAOC,cAAP;AACD;;AAEM,SAASC,cAAT,CACLL,OADK,EAELM,yBAFK,EAGsB;AAE3B,MAAIC,QAAQ,GAAG;AAAEC,IAAAA,IAAI,EAAEF,yBAAyB,CAACE,IAAlC;AAAwCN,IAAAA,KAAK,EAAE,IAA/C;AAAqDC,IAAAA,GAAG,EAAE;AAA1D,GAAf;;AAEA,MAAII,QAAQ,CAACC,IAAT,CAAcC,MAAlB,EAA0B;AACxBF,IAAAA,QAAQ,CAACJ,GAAT,GAAeI,QAAQ,CAACC,IAAT,CAAcD,QAAQ,CAACC,IAAT,CAAcC,MAAd,GAAuB,CAArC,EAAwCC,eAAvD;AACAH,IAAAA,QAAQ,CAACL,KAAT,GAAiBK,QAAQ,CAACC,IAAT,CAAc,CAAd,EAAiBE,eAAlC;AACD;;AAED,SAAOH,QAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n GetMessageActionsInput,\n GetMessageActionsResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\n\nexport function getOperation(): string {\n return operationConstants.PNGetMessageActionsOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: GetMessageActionsInput\n) {\n let { channel } = incomingParams;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!channel) return 'Missing message channel';\n}\n\n\nexport function getURL(\n { config }: ModulesInject,\n incomingParams: GetMessageActionsInput\n): string {\n let { channel } = incomingParams;\n\n return `/v1/message-actions/${config.subscribeKey}/channel/${utils.encodeString(channel)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: GetMessageActionsInput\n): Object {\n const { limit, start, end } = incomingParams;\n let outgoingParams: Object = {};\n\n if (limit) outgoingParams.limit = limit;\n if (start) outgoingParams.start = start;\n if (end) outgoingParams.end = end;\n\n return outgoingParams;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n getMessageActionsResponse: Object\n): GetMessageActionsResponse {\n /** @type GetMessageActionsResponse */\n let response = { data: getMessageActionsResponse.data, start: null, end: null };\n\n if (response.data.length) {\n response.end = response.data[response.data.length - 1].actionTimetoken;\n response.start = response.data[0].actionTimetoken;\n }\n\n return response;\n}\n"],"file":"get_message_actions.js"} \ No newline at end of file diff --git a/lib/core/endpoints/actions/remove_message_action.js b/lib/core/endpoints/actions/remove_message_action.js index 127a69d09..a2b699b3f 100644 --- a/lib/core/endpoints/actions/remove_message_action.js +++ b/lib/core/endpoints/actions/remove_message_action.js @@ -6,13 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/actions/remove_message_action.js.map b/lib/core/endpoints/actions/remove_message_action.js.map index 3835269b6..1897e016c 100644 --- a/lib/core/endpoints/actions/remove_message_action.js.map +++ b/lib/core/endpoints/actions/remove_message_action.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/actions/remove_message_action.js"],"names":["getOperation","operationConstants","PNRemoveMessageActionOperation","validateParams","incomingParams","config","channel","actionTimetoken","messageTimetoken","subscribeKey","useDelete","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","modules","removeMessageActionResponse","data"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAGO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,8BAA1B;AACD;;AAEM,SAASC,cAAT,OAELC,cAFK,EAGL;AAAA,MAFEC,MAEF,QAFEA,MAEF;AAAA,MACMC,OADN,GACqDF,cADrD,CACME,OADN;AAAA,MACeC,eADf,GACqDH,cADrD,CACeG,eADf;AAAA,MACgCC,gBADhC,GACqDJ,cADrD,CACgCI,gBADhC;AAGA,MAAI,CAACA,gBAAL,EAAuB,OAAO,2BAAP;AACvB,MAAI,CAACD,eAAL,EAAsB,OAAO,0BAAP;AACtB,MAAI,CAACF,MAAM,CAACI,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAI,CAACH,OAAL,EAAc,OAAO,yBAAP;AACf;;AAEM,SAASI,SAAT,GAAqB;AAC1B,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,QAELP,cAFK,EAGG;AAAA,MAFNC,MAEM,SAFNA,MAEM;AAAA,MACFC,OADE,GAC6CF,cAD7C,CACFE,OADE;AAAA,MACOC,eADP,GAC6CH,cAD7C,CACOG,eADP;AAAA,MACwBC,gBADxB,GAC6CJ,cAD7C,CACwBI,gBADxB;AAGR,uCAA8BH,MAAM,CAACI,YAArC,sBAA6DG,kBAAMC,YAAN,CAAmBP,OAAnB,CAA7D,sBAAoGE,gBAApG,qBAA+HD,eAA/H;AACD;;AAEM,SAASO,iBAAT,QAAsD;AAAA,MAAzBT,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACU,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CACLC,OADK,EAELC,2BAFK,EAGwB;AAC7B,SAAO;AAAEC,IAAAA,IAAI,EAAED,2BAA2B,CAACC;AAApC,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n RemoveMessageActionInput,\n RemoveMessageActionResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\n\nexport function getOperation(): string {\n return operationConstants.PNRemoveMessageActionOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: RemoveMessageActionInput\n) {\n let { channel, actionTimetoken, messageTimetoken } = incomingParams;\n\n if (!messageTimetoken) return 'Missing message timetoken';\n if (!actionTimetoken) return 'Missing action timetoken';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!channel) return 'Missing message channel';\n}\n\nexport function useDelete() {\n return true;\n}\n\nexport function getURL(\n { config }: ModulesInject,\n incomingParams: RemoveMessageActionInput\n): string {\n let { channel, actionTimetoken, messageTimetoken } = incomingParams;\n\n return `/v1/message-actions/${config.subscribeKey}/channel/${utils.encodeString(channel)}/message/${messageTimetoken}/action/${actionTimetoken}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n removeMessageActionResponse: Object\n): RemoveMessageActionResponse {\n return { data: removeMessageActionResponse.data };\n}\n"],"file":"remove_message_action.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/actions/remove_message_action.js"],"names":["getOperation","operationConstants","PNRemoveMessageActionOperation","validateParams","incomingParams","config","channel","actionTimetoken","messageTimetoken","subscribeKey","useDelete","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","modules","removeMessageActionResponse","data"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAGO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,8BAA1B;AACD;;AAEM,SAASC,cAAT,OAELC,cAFK,EAGL;AAAA,MAFEC,MAEF,QAFEA,MAEF;AACA,MAAMC,OAAN,GAAqDF,cAArD,CAAME,OAAN;AAAA,MAAeC,eAAf,GAAqDH,cAArD,CAAeG,eAAf;AAAA,MAAgCC,gBAAhC,GAAqDJ,cAArD,CAAgCI,gBAAhC;AAEA,MAAI,CAACA,gBAAL,EAAuB,OAAO,2BAAP;AACvB,MAAI,CAACD,eAAL,EAAsB,OAAO,0BAAP;AACtB,MAAI,CAACF,MAAM,CAACI,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAI,CAACH,OAAL,EAAc,OAAO,yBAAP;AACf;;AAEM,SAASI,SAAT,GAAqB;AAC1B,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,QAELP,cAFK,EAGG;AAAA,MAFNC,MAEM,SAFNA,MAEM;AACR,MAAMC,OAAN,GAAqDF,cAArD,CAAME,OAAN;AAAA,MAAeC,eAAf,GAAqDH,cAArD,CAAeG,eAAf;AAAA,MAAgCC,gBAAhC,GAAqDJ,cAArD,CAAgCI,gBAAhC;AAEA,uCAA8BH,MAAM,CAACI,YAArC,sBAA6DG,kBAAMC,YAAN,CAAmBP,OAAnB,CAA7D,sBAAoGE,gBAApG,qBAA+HD,eAA/H;AACD;;AAEM,SAASO,iBAAT,QAAsD;AAAA,MAAzBT,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACU,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CACLC,OADK,EAELC,2BAFK,EAGwB;AAC7B,SAAO;AAAEC,IAAAA,IAAI,EAAED,2BAA2B,CAACC;AAApC,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n RemoveMessageActionInput,\n RemoveMessageActionResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\n\nexport function getOperation(): string {\n return operationConstants.PNRemoveMessageActionOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: RemoveMessageActionInput\n) {\n let { channel, actionTimetoken, messageTimetoken } = incomingParams;\n\n if (!messageTimetoken) return 'Missing message timetoken';\n if (!actionTimetoken) return 'Missing action timetoken';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (!channel) return 'Missing message channel';\n}\n\nexport function useDelete() {\n return true;\n}\n\nexport function getURL(\n { config }: ModulesInject,\n incomingParams: RemoveMessageActionInput\n): string {\n let { channel, actionTimetoken, messageTimetoken } = incomingParams;\n\n return `/v1/message-actions/${config.subscribeKey}/channel/${utils.encodeString(channel)}/message/${messageTimetoken}/action/${actionTimetoken}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n removeMessageActionResponse: Object\n): RemoveMessageActionResponse {\n return { data: removeMessageActionResponse.data };\n}\n"],"file":"remove_message_action.js"} \ No newline at end of file diff --git a/lib/core/endpoints/channel_groups/add_channels.js b/lib/core/endpoints/channel_groups/add_channels.js index 63dcdefe5..e5d8ee036 100644 --- a/lib/core/endpoints/channel_groups/add_channels.js +++ b/lib/core/endpoints/channel_groups/add_channels.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/channel_groups/add_channels.js.map b/lib/core/endpoints/channel_groups/add_channels.js.map index 816e5a93c..bfb7586a5 100644 --- a/lib/core/endpoints/channel_groups/add_channels.js.map +++ b/lib/core/endpoints/channel_groups/add_channels.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/channel_groups/add_channels.js"],"names":["getOperation","operationConstants","PNAddChannelsToGroupOperation","validateParams","modules","incomingParams","channels","channelGroup","config","length","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","add","join","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,6BAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AAAA,MACjFC,QADiF,GACtDD,cADsD,CACjFC,QADiF;AAAA,MACvEC,YADuE,GACtDF,cADsD,CACvEE,YADuE;AAAA,MAEjFC,MAFiF,GAEtEJ,OAFsE,CAEjFI,MAFiF;AAIvF,MAAI,CAACD,YAAL,EAAmB,OAAO,uBAAP;AACnB,MAAI,CAACD,QAAD,IAAaA,QAAQ,CAACG,MAAT,KAAoB,CAArC,EAAwC,OAAO,kBAAP;AACxC,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBP,OAAhB,EAAwCC,cAAxC,EAAkF;AAAA,MACjFE,YADiF,GAChEF,cADgE,CACjFE,YADiF;AAAA,MAEjFC,MAFiF,GAEtEJ,OAFsE,CAEjFI,MAFiF;AAGvF,oDAA2CA,MAAM,CAACE,YAAlD,4BAAgFE,kBAAMC,YAAN,CAAmBN,YAAnB,CAAhF;AACD;;AAEM,SAASO,iBAAT,OAA8D;AAAA,MAAjCN,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBb,OAAvB,EAA+CC,cAA/C,EAAyF;AAAA,8BACtEA,cADsE,CACxFC,QADwF;AAAA,MACxFA,QADwF,sCAC7E,EAD6E;AAG9F,SAAO;AACLY,IAAAA,GAAG,EAAEZ,QAAQ,CAACa,IAAT,CAAc,GAAd;AADA,GAAP;AAGD;;AAEM,SAASC,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { AddChannelParams, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNAddChannelsToGroupOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: AddChannelParams) {\n let { channels, channelGroup } = incomingParams;\n let { config } = modules;\n\n if (!channelGroup) return 'Missing Channel Group';\n if (!channels || channels.length === 0) return 'Missing Channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: AddChannelParams): string {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group/${utils.encodeString(channelGroup)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: AddChannelParams): Object {\n let { channels = [] } = incomingParams;\n\n return {\n add: channels.join(',')\n };\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"add_channels.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/channel_groups/add_channels.js"],"names":["getOperation","operationConstants","PNAddChannelsToGroupOperation","validateParams","modules","incomingParams","channels","channelGroup","config","length","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","add","join","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,6BAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AACvF,MAAMC,QAAN,GAAiCD,cAAjC,CAAMC,QAAN;AAAA,MAAgBC,YAAhB,GAAiCF,cAAjC,CAAgBE,YAAhB;AACA,MAAMC,MAAN,GAAiBJ,OAAjB,CAAMI,MAAN;AAEA,MAAI,CAACD,YAAL,EAAmB,OAAO,uBAAP;AACnB,MAAI,CAACD,QAAD,IAAaA,QAAQ,CAACG,MAAT,KAAoB,CAArC,EAAwC,OAAO,kBAAP;AACxC,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBP,OAAhB,EAAwCC,cAAxC,EAAkF;AACvF,MAAME,YAAN,GAAuBF,cAAvB,CAAME,YAAN;AACA,MAAMC,MAAN,GAAiBJ,OAAjB,CAAMI,MAAN;AACA,oDAA2CA,MAAM,CAACE,YAAlD,4BAAgFE,kBAAMC,YAAN,CAAmBN,YAAnB,CAAhF;AACD;;AAEM,SAASO,iBAAT,OAA8D;AAAA,MAAjCN,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBb,OAAvB,EAA+CC,cAA/C,EAAyF;AAC9F,8BAAwBA,cAAxB,CAAMC,QAAN;AAAA,MAAMA,QAAN,sCAAiB,EAAjB;AAEA,SAAO;AACLY,IAAAA,GAAG,EAAEZ,QAAQ,CAACa,IAAT,CAAc,GAAd;AADA,GAAP;AAGD;;AAEM,SAASC,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { AddChannelParams, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNAddChannelsToGroupOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: AddChannelParams) {\n let { channels, channelGroup } = incomingParams;\n let { config } = modules;\n\n if (!channelGroup) return 'Missing Channel Group';\n if (!channels || channels.length === 0) return 'Missing Channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: AddChannelParams): string {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group/${utils.encodeString(channelGroup)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: AddChannelParams): Object {\n let { channels = [] } = incomingParams;\n\n return {\n add: channels.join(',')\n };\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"add_channels.js"} \ No newline at end of file diff --git a/lib/core/endpoints/channel_groups/delete_group.js b/lib/core/endpoints/channel_groups/delete_group.js index 0720d59c6..0ffdd1e80 100644 --- a/lib/core/endpoints/channel_groups/delete_group.js +++ b/lib/core/endpoints/channel_groups/delete_group.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; +exports.getRequestTimeout = getRequestTimeout; exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getRequestTimeout = getRequestTimeout; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/channel_groups/delete_group.js.map b/lib/core/endpoints/channel_groups/delete_group.js.map index 490579c35..1073c1bc8 100644 --- a/lib/core/endpoints/channel_groups/delete_group.js.map +++ b/lib/core/endpoints/channel_groups/delete_group.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/channel_groups/delete_group.js"],"names":["getOperation","operationConstants","PNRemoveGroupOperation","validateParams","modules","incomingParams","channelGroup","config","subscribeKey","getURL","utils","encodeString","isAuthSupported","getRequestTimeout","getTransactionTimeout","prepareParams","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,sBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAmF;AAAA,MAClFC,YADkF,GACjED,cADiE,CAClFC,YADkF;AAAA,MAElFC,MAFkF,GAEvEH,OAFuE,CAElFG,MAFkF;AAIxF,MAAI,CAACD,YAAL,EAAmB,OAAO,uBAAP;AACnB,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBL,OAAhB,EAAwCC,cAAxC,EAAmF;AAAA,MAClFC,YADkF,GACjED,cADiE,CAClFC,YADkF;AAAA,MAElFC,MAFkF,GAEvEH,OAFuE,CAElFG,MAFkF;AAGxF,oDAA2CA,MAAM,CAACC,YAAlD,4BAAgFE,kBAAMC,YAAN,CAAmBL,YAAnB,CAAhF;AACD;;AAEM,SAASM,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,iBAAT,OAAsD;AAAA,MAAzBN,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { DeleteGroupParams, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNRemoveGroupOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: DeleteGroupParams) {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n\n if (!channelGroup) return 'Missing Channel Group';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: DeleteGroupParams): string {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group/${utils.encodeString(channelGroup)}/remove`;\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"delete_group.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/channel_groups/delete_group.js"],"names":["getOperation","operationConstants","PNRemoveGroupOperation","validateParams","modules","incomingParams","channelGroup","config","subscribeKey","getURL","utils","encodeString","isAuthSupported","getRequestTimeout","getTransactionTimeout","prepareParams","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,sBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAmF;AACxF,MAAMC,YAAN,GAAuBD,cAAvB,CAAMC,YAAN;AACA,MAAMC,MAAN,GAAiBH,OAAjB,CAAMG,MAAN;AAEA,MAAI,CAACD,YAAL,EAAmB,OAAO,uBAAP;AACnB,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBL,OAAhB,EAAwCC,cAAxC,EAAmF;AACxF,MAAMC,YAAN,GAAuBD,cAAvB,CAAMC,YAAN;AACA,MAAMC,MAAN,GAAiBH,OAAjB,CAAMG,MAAN;AACA,oDAA2CA,MAAM,CAACC,YAAlD,4BAAgFE,kBAAMC,YAAN,CAAmBL,YAAnB,CAAhF;AACD;;AAEM,SAASM,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,iBAAT,OAAsD;AAAA,MAAzBN,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { DeleteGroupParams, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNRemoveGroupOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: DeleteGroupParams) {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n\n if (!channelGroup) return 'Missing Channel Group';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: DeleteGroupParams): string {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group/${utils.encodeString(channelGroup)}/remove`;\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"delete_group.js"} \ No newline at end of file diff --git a/lib/core/endpoints/channel_groups/list_channels.js b/lib/core/endpoints/channel_groups/list_channels.js index 556388973..212a7c7bf 100644 --- a/lib/core/endpoints/channel_groups/list_channels.js +++ b/lib/core/endpoints/channel_groups/list_channels.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/channel_groups/list_channels.js.map b/lib/core/endpoints/channel_groups/list_channels.js.map index fc9a4a179..8e5ac06d9 100644 --- a/lib/core/endpoints/channel_groups/list_channels.js.map +++ b/lib/core/endpoints/channel_groups/list_channels.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/channel_groups/list_channels.js"],"names":["getOperation","operationConstants","PNChannelsForGroupOperation","validateParams","modules","incomingParams","channelGroup","config","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","serverResponse","channels","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,2BAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAoF;AAAA,MACnFC,YADmF,GAClED,cADkE,CACnFC,YADmF;AAAA,MAEnFC,MAFmF,GAExEH,OAFwE,CAEnFG,MAFmF;AAIzF,MAAI,CAACD,YAAL,EAAmB,OAAO,uBAAP;AACnB,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBL,OAAhB,EAAwCC,cAAxC,EAAoF;AAAA,MACnFC,YADmF,GAClED,cADkE,CACnFC,YADmF;AAAA,MAEnFC,MAFmF,GAExEH,OAFwE,CAEnFG,MAFmF;AAGzF,oDAA2CA,MAAM,CAACC,YAAlD,4BAAgFE,kBAAMC,YAAN,CAAmBL,YAAnB,CAAhF;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBL,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACM,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CAAwBZ,OAAxB,EAAgDa,cAAhD,EAA8F;AACnG,SAAO;AACLC,IAAAA,QAAQ,EAAED,cAAc,CAACE,OAAf,CAAuBD;AAD5B,GAAP;AAGD","sourcesContent":["/* @flow */\n\nimport { ListChannelsParams, ListChannelsResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNChannelsForGroupOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: ListChannelsParams) {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n\n if (!channelGroup) return 'Missing Channel Group';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: ListChannelsParams): string {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group/${utils.encodeString(channelGroup)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): ListChannelsResponse {\n return {\n channels: serverResponse.payload.channels\n };\n}\n"],"file":"list_channels.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/channel_groups/list_channels.js"],"names":["getOperation","operationConstants","PNChannelsForGroupOperation","validateParams","modules","incomingParams","channelGroup","config","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","serverResponse","channels","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,2BAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAoF;AACzF,MAAMC,YAAN,GAAuBD,cAAvB,CAAMC,YAAN;AACA,MAAMC,MAAN,GAAiBH,OAAjB,CAAMG,MAAN;AAEA,MAAI,CAACD,YAAL,EAAmB,OAAO,uBAAP;AACnB,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBL,OAAhB,EAAwCC,cAAxC,EAAoF;AACzF,MAAMC,YAAN,GAAuBD,cAAvB,CAAMC,YAAN;AACA,MAAMC,MAAN,GAAiBH,OAAjB,CAAMG,MAAN;AACA,oDAA2CA,MAAM,CAACC,YAAlD,4BAAgFE,kBAAMC,YAAN,CAAmBL,YAAnB,CAAhF;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBL,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACM,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CAAwBZ,OAAxB,EAAgDa,cAAhD,EAA8F;AACnG,SAAO;AACLC,IAAAA,QAAQ,EAAED,cAAc,CAACE,OAAf,CAAuBD;AAD5B,GAAP;AAGD","sourcesContent":["/* @flow */\n\nimport { ListChannelsParams, ListChannelsResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNChannelsForGroupOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: ListChannelsParams) {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n\n if (!channelGroup) return 'Missing Channel Group';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: ListChannelsParams): string {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group/${utils.encodeString(channelGroup)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): ListChannelsResponse {\n return {\n channels: serverResponse.payload.channels\n };\n}\n"],"file":"list_channels.js"} \ No newline at end of file diff --git a/lib/core/endpoints/channel_groups/list_groups.js b/lib/core/endpoints/channel_groups/list_groups.js index eea36067a..3adcfd5b5 100644 --- a/lib/core/endpoints/channel_groups/list_groups.js +++ b/lib/core/endpoints/channel_groups/list_groups.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/channel_groups/list_groups.js.map b/lib/core/endpoints/channel_groups/list_groups.js.map index 64d02de58..361570191 100644 --- a/lib/core/endpoints/channel_groups/list_groups.js.map +++ b/lib/core/endpoints/channel_groups/list_groups.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/channel_groups/list_groups.js"],"names":["getOperation","operationConstants","PNChannelGroupsOperation","validateParams","modules","config","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","serverResponse","groups","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,wBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AAAA,MAC/CC,MAD+C,GACpCD,OADoC,CAC/CC,MAD+C;AAGrD,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAgD;AAAA,MAC/CC,MAD+C,GACpCD,OADoC,CAC/CC,MAD+C;AAErD,oDAA2CA,MAAM,CAACC,YAAlD;AACD;;AAEM,SAASE,iBAAT,OAAsD;AAAA,MAAzBH,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACI,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CAAwBR,OAAxB,EAAgDS,cAAhD,EAA+F;AACpG,SAAO;AACLC,IAAAA,MAAM,EAAED,cAAc,CAACE,OAAf,CAAuBD;AAD1B,GAAP;AAGD","sourcesContent":["/* @flow */\n\nimport { ListAllGroupsResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNChannelGroupsOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): ListAllGroupsResponse {\n return {\n groups: serverResponse.payload.groups\n };\n}\n"],"file":"list_groups.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/channel_groups/list_groups.js"],"names":["getOperation","operationConstants","PNChannelGroupsOperation","validateParams","modules","config","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","serverResponse","groups","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,wBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AACrD,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AAEA,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAgD;AACrD,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AACA,oDAA2CA,MAAM,CAACC,YAAlD;AACD;;AAEM,SAASE,iBAAT,OAAsD;AAAA,MAAzBH,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACI,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CAAwBR,OAAxB,EAAgDS,cAAhD,EAA+F;AACpG,SAAO;AACLC,IAAAA,MAAM,EAAED,cAAc,CAACE,OAAf,CAAuBD;AAD1B,GAAP;AAGD","sourcesContent":["/* @flow */\n\nimport { ListAllGroupsResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNChannelGroupsOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): ListAllGroupsResponse {\n return {\n groups: serverResponse.payload.groups\n };\n}\n"],"file":"list_groups.js"} \ No newline at end of file diff --git a/lib/core/endpoints/channel_groups/remove_channels.js b/lib/core/endpoints/channel_groups/remove_channels.js index 2f7f15f22..462cf952d 100644 --- a/lib/core/endpoints/channel_groups/remove_channels.js +++ b/lib/core/endpoints/channel_groups/remove_channels.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/channel_groups/remove_channels.js.map b/lib/core/endpoints/channel_groups/remove_channels.js.map index d3351a53e..57b8ea9fa 100644 --- a/lib/core/endpoints/channel_groups/remove_channels.js.map +++ b/lib/core/endpoints/channel_groups/remove_channels.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/channel_groups/remove_channels.js"],"names":["getOperation","operationConstants","PNRemoveChannelsFromGroupOperation","validateParams","modules","incomingParams","channels","channelGroup","config","length","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","remove","join","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,kCAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAqF;AAAA,MACpFC,QADoF,GACzDD,cADyD,CACpFC,QADoF;AAAA,MAC1EC,YAD0E,GACzDF,cADyD,CAC1EE,YAD0E;AAAA,MAEpFC,MAFoF,GAEzEJ,OAFyE,CAEpFI,MAFoF;AAI1F,MAAI,CAACD,YAAL,EAAmB,OAAO,uBAAP;AACnB,MAAI,CAACD,QAAD,IAAaA,QAAQ,CAACG,MAAT,KAAoB,CAArC,EAAwC,OAAO,kBAAP;AACxC,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBP,OAAhB,EAAwCC,cAAxC,EAAqF;AAAA,MACpFE,YADoF,GACnEF,cADmE,CACpFE,YADoF;AAAA,MAEpFC,MAFoF,GAEzEJ,OAFyE,CAEpFI,MAFoF;AAG1F,oDAA2CA,MAAM,CAACE,YAAlD,4BAAgFE,kBAAMC,YAAN,CAAmBN,YAAnB,CAAhF;AACD;;AAEM,SAASO,iBAAT,OAAsD;AAAA,MAAzBN,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBb,OAAvB,EAA+CC,cAA/C,EAA4F;AAAA,8BACzEA,cADyE,CAC3FC,QAD2F;AAAA,MAC3FA,QAD2F,sCAChF,EADgF;AAGjG,SAAO;AACLY,IAAAA,MAAM,EAAEZ,QAAQ,CAACa,IAAT,CAAc,GAAd;AADH,GAAP;AAGD;;AAEM,SAASC,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { RemoveChannelParams, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNRemoveChannelsFromGroupOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: RemoveChannelParams) {\n let { channels, channelGroup } = incomingParams;\n let { config } = modules;\n\n if (!channelGroup) return 'Missing Channel Group';\n if (!channels || channels.length === 0) return 'Missing Channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: RemoveChannelParams): string {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group/${utils.encodeString(channelGroup)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: RemoveChannelParams): Object {\n let { channels = [] } = incomingParams;\n\n return {\n remove: channels.join(',')\n };\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"remove_channels.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/channel_groups/remove_channels.js"],"names":["getOperation","operationConstants","PNRemoveChannelsFromGroupOperation","validateParams","modules","incomingParams","channels","channelGroup","config","length","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","remove","join","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,kCAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAqF;AAC1F,MAAMC,QAAN,GAAiCD,cAAjC,CAAMC,QAAN;AAAA,MAAgBC,YAAhB,GAAiCF,cAAjC,CAAgBE,YAAhB;AACA,MAAMC,MAAN,GAAiBJ,OAAjB,CAAMI,MAAN;AAEA,MAAI,CAACD,YAAL,EAAmB,OAAO,uBAAP;AACnB,MAAI,CAACD,QAAD,IAAaA,QAAQ,CAACG,MAAT,KAAoB,CAArC,EAAwC,OAAO,kBAAP;AACxC,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBP,OAAhB,EAAwCC,cAAxC,EAAqF;AAC1F,MAAME,YAAN,GAAuBF,cAAvB,CAAME,YAAN;AACA,MAAMC,MAAN,GAAiBJ,OAAjB,CAAMI,MAAN;AACA,oDAA2CA,MAAM,CAACE,YAAlD,4BAAgFE,kBAAMC,YAAN,CAAmBN,YAAnB,CAAhF;AACD;;AAEM,SAASO,iBAAT,OAAsD;AAAA,MAAzBN,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBb,OAAvB,EAA+CC,cAA/C,EAA4F;AACjG,8BAAwBA,cAAxB,CAAMC,QAAN;AAAA,MAAMA,QAAN,sCAAiB,EAAjB;AAEA,SAAO;AACLY,IAAAA,MAAM,EAAEZ,QAAQ,CAACa,IAAT,CAAc,GAAd;AADH,GAAP;AAGD;;AAEM,SAASC,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { RemoveChannelParams, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNRemoveChannelsFromGroupOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: RemoveChannelParams) {\n let { channels, channelGroup } = incomingParams;\n let { config } = modules;\n\n if (!channelGroup) return 'Missing Channel Group';\n if (!channels || channels.length === 0) return 'Missing Channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: RemoveChannelParams): string {\n let { channelGroup } = incomingParams;\n let { config } = modules;\n return `/v1/channel-registration/sub-key/${config.subscribeKey}/channel-group/${utils.encodeString(channelGroup)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: RemoveChannelParams): Object {\n let { channels = [] } = incomingParams;\n\n return {\n remove: channels.join(',')\n };\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"remove_channels.js"} \ No newline at end of file diff --git a/lib/core/endpoints/fetch_messages.js b/lib/core/endpoints/fetch_messages.js index 04832c2a3..2f2a1aa5a 100644 --- a/lib/core/endpoints/fetch_messages.js +++ b/lib/core/endpoints/fetch_messages.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../flow_interfaces"); diff --git a/lib/core/endpoints/fetch_messages.js.map b/lib/core/endpoints/fetch_messages.js.map index 34afe0566..950192e2a 100644 --- a/lib/core/endpoints/fetch_messages.js.map +++ b/lib/core/endpoints/fetch_messages.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/fetch_messages.js"],"names":["__processMessage","modules","message","config","crypto","cipherKey","decrypt","e","getOperation","operationConstants","PNFetchMessagesOperation","validateParams","incomingParams","channels","includeMessageActions","length","subscribeKey","TypeError","getURL","endpoint","stringifiedChannels","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","start","end","count","stringifiedTimeToken","includeMeta","includeUuid","includeUUID","includeMessageType","outgoingParams","max","string_message_token","include_meta","include_uuid","include_message_type","handleResponse","serverResponse","response","Object","keys","forEach","channelName","messageEnvelope","announce","channel","timetoken","messageType","message_type","uuid","actions","data","meta","push","more"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n FetchMessagesArguments,\n FetchMessagesResponse,\n MessageAnnouncement,\n HistoryV3Response,\n ModulesInject,\n} from '../flow_interfaces';\nimport operationConstants from '../constants/operations';\nimport utils from '../utils';\n\nfunction __processMessage(modules, message: Object): Object | null {\n let { config, crypto } = modules;\n if (!config.cipherKey) return message;\n\n try {\n return crypto.decrypt(message);\n } catch (e) {\n return message;\n }\n}\n\nexport function getOperation(): string {\n return operationConstants.PNFetchMessagesOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: FetchMessagesArguments\n) {\n let { channels, includeMessageActions = false } = incomingParams;\n let { config } = modules;\n\n if (!channels || channels.length === 0) return 'Missing channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (includeMessageActions && channels.length > 1) {\n throw new TypeError('History can return actions data for a single channel only. Either pass a single channel or disable the includeMessageActions flag.');\n }\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: FetchMessagesArguments\n): string {\n let { channels = [], includeMessageActions = false } = incomingParams;\n let { config } = modules;\n const endpoint = !includeMessageActions ? 'history' : 'history-with-actions';\n\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v3/${endpoint}/sub-key/${\n config.subscribeKey\n }/channel/${utils.encodeString(stringifiedChannels)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): boolean {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: FetchMessagesArguments\n): Object {\n const {\n channels,\n start,\n end,\n includeMessageActions,\n count,\n stringifiedTimeToken = false,\n includeMeta = false,\n includeUuid,\n includeUUID = true,\n includeMessageType = true\n } = incomingParams;\n let outgoingParams: Object = {};\n\n if (count) {\n outgoingParams.max = count;\n } else {\n outgoingParams.max = (channels.length > 1 || includeMessageActions === true) ? 25 : 100;\n }\n if (start) outgoingParams.start = start;\n if (end) outgoingParams.end = end;\n if (stringifiedTimeToken) outgoingParams.string_message_token = 'true';\n if (includeMeta) outgoingParams.include_meta = 'true';\n if (includeUUID && includeUuid !== false) outgoingParams.include_uuid = 'true';\n if (includeMessageType) outgoingParams.include_message_type = 'true';\n\n return outgoingParams;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: HistoryV3Response\n): FetchMessagesResponse {\n const response: FetchMessagesResponse = {\n channels: {},\n };\n\n Object.keys(serverResponse.channels || {}).forEach((channelName) => {\n response.channels[channelName] = [];\n\n (serverResponse.channels[channelName] || []).forEach((messageEnvelope) => {\n let announce: MessageAnnouncement = {};\n announce.channel = channelName;\n announce.timetoken = messageEnvelope.timetoken;\n announce.message = __processMessage(modules, messageEnvelope.message);\n announce.messageType = messageEnvelope.message_type;\n announce.uuid = messageEnvelope.uuid;\n\n if (messageEnvelope.actions) {\n announce.actions = messageEnvelope.actions;\n\n // This should be kept for few updates for existing clients consistency.\n announce.data = messageEnvelope.actions;\n }\n if (messageEnvelope.meta) {\n announce.meta = messageEnvelope.meta;\n }\n\n response.channels[channelName].push(announce);\n });\n });\n if (serverResponse.more) {\n response.more = serverResponse.more;\n }\n\n return response;\n}\n"],"file":"fetch_messages.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/fetch_messages.js"],"names":["__processMessage","modules","message","config","crypto","cipherKey","decrypt","e","getOperation","operationConstants","PNFetchMessagesOperation","validateParams","incomingParams","channels","includeMessageActions","length","subscribeKey","TypeError","getURL","endpoint","stringifiedChannels","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","start","end","count","stringifiedTimeToken","includeMeta","includeUuid","includeUUID","includeMessageType","outgoingParams","max","string_message_token","include_meta","include_uuid","include_message_type","handleResponse","serverResponse","response","Object","keys","forEach","channelName","messageEnvelope","announce","channel","timetoken","messageType","message_type","uuid","actions","data","meta","push","more"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n FetchMessagesArguments,\n FetchMessagesResponse,\n MessageAnnouncement,\n HistoryV3Response,\n ModulesInject,\n} from '../flow_interfaces';\nimport operationConstants from '../constants/operations';\nimport utils from '../utils';\n\nfunction __processMessage(modules, message: Object): Object | null {\n let { config, crypto } = modules;\n if (!config.cipherKey) return message;\n\n try {\n return crypto.decrypt(message);\n } catch (e) {\n return message;\n }\n}\n\nexport function getOperation(): string {\n return operationConstants.PNFetchMessagesOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: FetchMessagesArguments\n) {\n let { channels, includeMessageActions = false } = incomingParams;\n let { config } = modules;\n\n if (!channels || channels.length === 0) return 'Missing channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (includeMessageActions && channels.length > 1) {\n throw new TypeError('History can return actions data for a single channel only. Either pass a single channel or disable the includeMessageActions flag.');\n }\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: FetchMessagesArguments\n): string {\n let { channels = [], includeMessageActions = false } = incomingParams;\n let { config } = modules;\n const endpoint = !includeMessageActions ? 'history' : 'history-with-actions';\n\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v3/${endpoint}/sub-key/${\n config.subscribeKey\n }/channel/${utils.encodeString(stringifiedChannels)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): boolean {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: FetchMessagesArguments\n): Object {\n const {\n channels,\n start,\n end,\n includeMessageActions,\n count,\n stringifiedTimeToken = false,\n includeMeta = false,\n includeUuid,\n includeUUID = true,\n includeMessageType = true\n } = incomingParams;\n let outgoingParams: Object = {};\n\n if (count) {\n outgoingParams.max = count;\n } else {\n outgoingParams.max = (channels.length > 1 || includeMessageActions === true) ? 25 : 100;\n }\n if (start) outgoingParams.start = start;\n if (end) outgoingParams.end = end;\n if (stringifiedTimeToken) outgoingParams.string_message_token = 'true';\n if (includeMeta) outgoingParams.include_meta = 'true';\n if (includeUUID && includeUuid !== false) outgoingParams.include_uuid = 'true';\n if (includeMessageType) outgoingParams.include_message_type = 'true';\n\n return outgoingParams;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: HistoryV3Response\n): FetchMessagesResponse {\n const response: FetchMessagesResponse = {\n channels: {},\n };\n\n Object.keys(serverResponse.channels || {}).forEach((channelName) => {\n response.channels[channelName] = [];\n\n (serverResponse.channels[channelName] || []).forEach((messageEnvelope) => {\n let announce: MessageAnnouncement = {};\n announce.channel = channelName;\n announce.timetoken = messageEnvelope.timetoken;\n announce.message = __processMessage(modules, messageEnvelope.message);\n announce.messageType = messageEnvelope.message_type;\n announce.uuid = messageEnvelope.uuid;\n\n if (messageEnvelope.actions) {\n announce.actions = messageEnvelope.actions;\n\n // This should be kept for few updates for existing clients consistency.\n announce.data = messageEnvelope.actions;\n }\n if (messageEnvelope.meta) {\n announce.meta = messageEnvelope.meta;\n }\n\n response.channels[channelName].push(announce);\n });\n });\n if (serverResponse.more) {\n response.more = serverResponse.more;\n }\n\n return response;\n}\n"],"file":"fetch_messages.js"} \ No newline at end of file diff --git a/lib/core/endpoints/file_upload/delete_file.js b/lib/core/endpoints/file_upload/delete_file.js index fd058ad8e..daf14c25c 100644 --- a/lib/core/endpoints/file_upload/delete_file.js +++ b/lib/core/endpoints/file_upload/delete_file.js @@ -16,15 +16,15 @@ var endpoint = { return _operations["default"].PNListFilesOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.id)) { + if (!(params !== null && params !== void 0 && params.id)) { return "file id can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return "file name can't be empty"; } }, @@ -42,10 +42,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams() { return {}; }, diff --git a/lib/core/endpoints/file_upload/delete_file.js.map b/lib/core/endpoints/file_upload/delete_file.js.map index 8fa401c39..906fa231a 100644 --- a/lib/core/endpoints/file_upload/delete_file.js.map +++ b/lib/core/endpoints/file_upload/delete_file.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/file_upload/delete_file.js"],"names":["endpoint","getOperation","operationConstants","PNListFilesOperation","validateParams","_","params","channel","id","name","useDelete","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","handleResponse","response","status"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAEA,IAAMA,QAA4D,GAAG;AACnEC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,oBAAzB;AAAA,GADqD;AAGnEC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,wBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEE,EAAT,CAAJ,EAAiB;AACf,aAAO,wBAAP;AACD;;AAED,QAAI,EAACF,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEG,IAAT,CAAJ,EAAmB;AACjB,aAAO,0BAAP;AACD;AACF,GAfkE;AAiBnEC,EAAAA,SAAS,EAAE;AAAA,WAAM,IAAN;AAAA,GAjBwD;AAkBnEC,EAAAA,MAAM,EAAE,sBAAaL,MAAb;AAAA,QAAGM,MAAH,QAAGA,MAAH;AAAA,+BAAqCA,MAAM,CAACC,YAA5C,uBAAqEC,kBAAMC,YAAN,CAAmBT,MAAM,CAACC,OAA1B,CAArE,oBAAiHD,MAAM,CAACE,EAAxH,cAA8HF,MAAM,CAACG,IAArI;AAAA,GAlB2D;AAoBnEO,EAAAA,iBAAiB,EAAE;AAAA,QAAGJ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACK,qBAAP,EAAhB;AAAA,GApBgD;AAsBnEC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAtBkD;AAwBnEC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,YAAtB,CAAtB;AAAA,GAxBqD;AA0BnEC,EAAAA,aAAa,EAAE;AAAA,WAAO,EAAP;AAAA,GA1BoD;AA4BnEC,EAAAA,cAAc,EAAE,wBAAClB,CAAD,EAAImB,QAAJ;AAAA,WAAoC;AAClDC,MAAAA,MAAM,EAAED,QAAQ,CAACC;AADiC,KAApC;AAAA;AA5BmD,CAArE;eAiCezB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { DeleteFileParams, DeleteFileResult } from './types';\nimport utils from '../../utils';\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNListFilesOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return \"channel can't be empty\";\n }\n\n if (!params?.id) {\n return \"file id can't be empty\";\n }\n\n if (!params?.name) {\n return \"file name can't be empty\";\n }\n },\n\n useDelete: () => true,\n getURL: ({ config }, params) => `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/files/${params.id}/${params.name}`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('fileUpload'),\n\n prepareParams: () => ({}),\n\n handleResponse: (_, response): DeleteFileResult => ({\n status: response.status,\n }),\n};\n\nexport default endpoint;\n"],"file":"delete_file.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/file_upload/delete_file.js"],"names":["endpoint","getOperation","operationConstants","PNListFilesOperation","validateParams","_","params","channel","id","name","useDelete","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","response","status"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAEA,IAAMA,QAA4D,GAAG;AACnEC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,oBAAzB;AAAA,GADqD;AAGnEC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,wBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEE,EAAT,CAAJ,EAAiB;AACf,aAAO,wBAAP;AACD;;AAED,QAAI,EAACF,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEG,IAAT,CAAJ,EAAmB;AACjB,aAAO,0BAAP;AACD;AACF,GAfkE;AAiBnEC,EAAAA,SAAS,EAAE;AAAA,WAAM,IAAN;AAAA,GAjBwD;AAkBnEC,EAAAA,MAAM,EAAE,sBAAaL,MAAb;AAAA,QAAGM,MAAH,QAAGA,MAAH;AAAA,+BAAqCA,MAAM,CAACC,YAA5C,uBAAqEC,kBAAMC,YAAN,CAAmBT,MAAM,CAACC,OAA1B,CAArE,oBAAiHD,MAAM,CAACE,EAAxH,cAA8HF,MAAM,CAACG,IAArI;AAAA,GAlB2D;AAoBnEO,EAAAA,iBAAiB,EAAE;AAAA,QAAGJ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACK,qBAAP,EAAhB;AAAA,GApBgD;AAsBnEC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAtBkD;AAwBnEC,EAAAA,aAAa,EAAE;AAAA,WAAO,EAAP;AAAA,GAxBoD;AA0BnEC,EAAAA,cAAc,EAAE,wBAACf,CAAD,EAAIgB,QAAJ;AAAA,WAAoC;AAClDC,MAAAA,MAAM,EAAED,QAAQ,CAACC;AADiC,KAApC;AAAA;AA1BmD,CAArE;eA+BetB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { DeleteFileParams, DeleteFileResult } from './types';\nimport utils from '../../utils';\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNListFilesOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return \"channel can't be empty\";\n }\n\n if (!params?.id) {\n return \"file id can't be empty\";\n }\n\n if (!params?.name) {\n return \"file name can't be empty\";\n }\n },\n\n useDelete: () => true,\n getURL: ({ config }, params) => `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/files/${params.id}/${params.name}`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: () => ({}),\n\n handleResponse: (_, response): DeleteFileResult => ({\n status: response.status,\n }),\n};\n\nexport default endpoint;\n"],"file":"delete_file.js"} \ No newline at end of file diff --git a/lib/core/endpoints/file_upload/download_file.js b/lib/core/endpoints/file_upload/download_file.js index a543239b8..c08e0159f 100644 --- a/lib/core/endpoints/file_upload/download_file.js +++ b/lib/core/endpoints/file_upload/download_file.js @@ -20,15 +20,15 @@ var endpoint = { return _operations["default"].PNDownloadFileOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return "name can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.id)) { + if (!(params !== null && params !== void 0 && params.id)) { return "id can't be empty"; } }, @@ -57,9 +57,9 @@ var endpoint = { }, handleResponse: function () { var _handleResponse = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(_ref3, res, params) { - var _res$response$name; + var _params$cipherKey, _res$response$name; - var PubNubFile, config, cryptography, body, _params$cipherKey; + var PubNubFile, config, cryptography, body, _params$cipherKey2; return _regenerator["default"].wrap(function _callee$(_context) { while (1) { @@ -68,13 +68,13 @@ var endpoint = { PubNubFile = _ref3.PubNubFile, config = _ref3.config, cryptography = _ref3.cryptography; body = res.response.body; - if (!(PubNubFile.supportsEncryptFile && config.cipherKey)) { + if (!(PubNubFile.supportsEncryptFile && ((_params$cipherKey = params.cipherKey) !== null && _params$cipherKey !== void 0 ? _params$cipherKey : config.cipherKey))) { _context.next = 6; break; } _context.next = 5; - return cryptography.decrypt((_params$cipherKey = params.cipherKey) !== null && _params$cipherKey !== void 0 ? _params$cipherKey : config.cipherKey, body); + return cryptography.decrypt((_params$cipherKey2 = params.cipherKey) !== null && _params$cipherKey2 !== void 0 ? _params$cipherKey2 : config.cipherKey, body); case 5: body = _context.sent; diff --git a/lib/core/endpoints/file_upload/download_file.js.map b/lib/core/endpoints/file_upload/download_file.js.map index 14bd78056..e49eabd87 100644 --- a/lib/core/endpoints/file_upload/download_file.js.map +++ b/lib/core/endpoints/file_upload/download_file.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/file_upload/download_file.js"],"names":["endpoint","getOperation","operationConstants","PNDownloadFileOperation","validateParams","_","params","channel","name","id","useGetFile","getFileURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","ignoreBody","forceBuffered","prepareParams","handleResponse","res","PubNubFile","cryptography","body","response","supportsEncryptFile","cipherKey","decrypt","create","data","mimeType","type"],"mappings":";;;;;;;;;;;;;AAGA;;AAEA;;AAEA,IAAMA,QAAgE,GAAG;AACvEC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,uBAAzB;AAAA,GADyD;AAGvEC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,wBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEE,IAAT,CAAJ,EAAmB;AACjB,aAAO,qBAAP;AACD;;AAED,QAAI,EAACF,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEG,EAAT,CAAJ,EAAiB;AACf,aAAO,mBAAP;AACD;AACF,GAfsE;AAiBvEC,EAAAA,UAAU,EAAE;AAAA,WAAM,IAAN;AAAA,GAjB2D;AAmBvEC,EAAAA,UAAU,EAAE,0BAAaL,MAAb;AAAA,QAAGM,MAAH,QAAGA,MAAH;AAAA,+BACGA,MAAM,CAACC,YADV,uBACmCC,kBAAMC,YAAN,CAAmBT,MAAM,CAACC,OAA1B,CADnC,oBAC+ED,MAAM,CAACG,EADtF,cAC4FH,MAAM,CAACE,IADnG;AAAA,GAnB2D;AAsBvEQ,EAAAA,iBAAiB,EAAE;AAAA,QAAGJ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACK,qBAAP,EAAhB;AAAA,GAtBoD;AAwBvEC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAxBsD;AAyBvEC,EAAAA,UAAU,EAAE;AAAA,WAAM,IAAN;AAAA,GAzB2D;AA0BvEC,EAAAA,aAAa,EAAE;AAAA,WAAM,IAAN;AAAA,GA1BwD;AA4BvEC,EAAAA,aAAa,EAAE;AAAA,WAAO,EAAP;AAAA,GA5BwD;AA8BvEC,EAAAA,cAAc;AAAA,0FAAE,wBAA6CC,GAA7C,EAAkDjB,MAAlD;AAAA;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAASkB,cAAAA,UAAT,SAASA,UAAT,EAAqBZ,MAArB,SAAqBA,MAArB,EAA6Ba,YAA7B,SAA6BA,YAA7B;AACVC,cAAAA,IADU,GACHH,GAAG,CAACI,QAAJ,CAAaD,IADV;;AAAA,oBAGVF,UAAU,CAACI,mBAAX,IAAmChB,MAAM,CAACiB,SAHhC;AAAA;AAAA;AAAA;;AAAA;AAAA,qBAICJ,YAAY,CAACK,OAAb,sBAAqBxB,MAAM,CAACuB,SAA5B,iEAAyCjB,MAAM,CAACiB,SAAhD,EAA2DH,IAA3D,CAJD;;AAAA;AAIZA,cAAAA,IAJY;;AAAA;AAAA,+CAOPF,UAAU,CAACO,MAAX,CAAkB;AACvBC,gBAAAA,IAAI,EAAEN,IADiB;AAEvBlB,gBAAAA,IAAI,wBAAEe,GAAG,CAACI,QAAJ,CAAanB,IAAf,mEAAuBF,MAAM,CAACE,IAFX;AAGvByB,gBAAAA,QAAQ,EAAEV,GAAG,CAACI,QAAJ,CAAaO;AAHA,eAAlB,CAPO;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA;AA9ByD,CAAzE;eA6CelC,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { DownloadFileParams, DownloadFileResult } from './types';\nimport utils from '../../utils';\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNDownloadFileOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return \"channel can't be empty\";\n }\n\n if (!params?.name) {\n return \"name can't be empty\";\n }\n\n if (!params?.id) {\n return \"id can't be empty\";\n }\n },\n\n useGetFile: () => true,\n\n getFileURL: ({ config }, params) =>\n `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/files/${params.id}/${params.name}`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n ignoreBody: () => true,\n forceBuffered: () => true,\n\n prepareParams: () => ({}),\n\n handleResponse: async ({ PubNubFile, config, cryptography }, res, params): Promise => {\n let body = res.response.body;\n\n if (PubNubFile.supportsEncryptFile && (config.cipherKey)) {\n body = await cryptography.decrypt(params.cipherKey ?? config.cipherKey, body);\n }\n\n return PubNubFile.create({\n data: body,\n name: res.response.name ?? params.name,\n mimeType: res.response.type,\n });\n },\n};\n\nexport default endpoint;\n"],"file":"download_file.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/file_upload/download_file.js"],"names":["endpoint","getOperation","operationConstants","PNDownloadFileOperation","validateParams","_","params","channel","name","id","useGetFile","getFileURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","ignoreBody","forceBuffered","prepareParams","handleResponse","res","PubNubFile","cryptography","body","response","supportsEncryptFile","cipherKey","decrypt","create","data","mimeType","type"],"mappings":";;;;;;;;;;;;;AAGA;;AAEA;;AAEA,IAAMA,QAAgE,GAAG;AACvEC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,uBAAzB;AAAA,GADyD;AAGvEC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,wBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEE,IAAT,CAAJ,EAAmB;AACjB,aAAO,qBAAP;AACD;;AAED,QAAI,EAACF,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEG,EAAT,CAAJ,EAAiB;AACf,aAAO,mBAAP;AACD;AACF,GAfsE;AAiBvEC,EAAAA,UAAU,EAAE;AAAA,WAAM,IAAN;AAAA,GAjB2D;AAmBvEC,EAAAA,UAAU,EAAE,0BAAaL,MAAb;AAAA,QAAGM,MAAH,QAAGA,MAAH;AAAA,+BACGA,MAAM,CAACC,YADV,uBACmCC,kBAAMC,YAAN,CAAmBT,MAAM,CAACC,OAA1B,CADnC,oBAC+ED,MAAM,CAACG,EADtF,cAC4FH,MAAM,CAACE,IADnG;AAAA,GAnB2D;AAsBvEQ,EAAAA,iBAAiB,EAAE;AAAA,QAAGJ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACK,qBAAP,EAAhB;AAAA,GAtBoD;AAwBvEC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAxBsD;AAyBvEC,EAAAA,UAAU,EAAE;AAAA,WAAM,IAAN;AAAA,GAzB2D;AA0BvEC,EAAAA,aAAa,EAAE;AAAA,WAAM,IAAN;AAAA,GA1BwD;AA4BvEC,EAAAA,aAAa,EAAE;AAAA,WAAO,EAAP;AAAA,GA5BwD;AA8BvEC,EAAAA,cAAc;AAAA,0FAAE,wBAA6CC,GAA7C,EAAkDjB,MAAlD;AAAA;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAASkB,cAAAA,UAAT,SAASA,UAAT,EAAqBZ,MAArB,SAAqBA,MAArB,EAA6Ba,YAA7B,SAA6BA,YAA7B;AACVC,cAAAA,IADU,GACHH,GAAG,CAACI,QAAJ,CAAaD,IADV;;AAAA,oBAGVF,UAAU,CAACI,mBAAX,0BAAmCtB,MAAM,CAACuB,SAA1C,iEAAuDjB,MAAM,CAACiB,SAA9D,CAHU;AAAA;AAAA;AAAA;;AAAA;AAAA,qBAICJ,YAAY,CAACK,OAAb,uBAAqBxB,MAAM,CAACuB,SAA5B,mEAAyCjB,MAAM,CAACiB,SAAhD,EAA2DH,IAA3D,CAJD;;AAAA;AAIZA,cAAAA,IAJY;;AAAA;AAAA,+CAOPF,UAAU,CAACO,MAAX,CAAkB;AACvBC,gBAAAA,IAAI,EAAEN,IADiB;AAEvBlB,gBAAAA,IAAI,wBAAEe,GAAG,CAACI,QAAJ,CAAanB,IAAf,mEAAuBF,MAAM,CAACE,IAFX;AAGvByB,gBAAAA,QAAQ,EAAEV,GAAG,CAACI,QAAJ,CAAaO;AAHA,eAAlB,CAPO;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA;AA9ByD,CAAzE;eA6CelC,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { DownloadFileParams, DownloadFileResult } from './types';\nimport utils from '../../utils';\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNDownloadFileOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return \"channel can't be empty\";\n }\n\n if (!params?.name) {\n return \"name can't be empty\";\n }\n\n if (!params?.id) {\n return \"id can't be empty\";\n }\n },\n\n useGetFile: () => true,\n\n getFileURL: ({ config }, params) =>\n `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/files/${params.id}/${params.name}`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n ignoreBody: () => true,\n forceBuffered: () => true,\n\n prepareParams: () => ({}),\n\n handleResponse: async ({ PubNubFile, config, cryptography }, res, params): Promise => {\n let body = res.response.body;\n\n if (PubNubFile.supportsEncryptFile && (params.cipherKey ?? config.cipherKey)) {\n body = await cryptography.decrypt(params.cipherKey ?? config.cipherKey, body);\n }\n\n return PubNubFile.create({\n data: body,\n name: res.response.name ?? params.name,\n mimeType: res.response.type,\n });\n },\n};\n\nexport default endpoint;\n"],"file":"download_file.js"} \ No newline at end of file diff --git a/lib/core/endpoints/file_upload/generate_upload_url.js b/lib/core/endpoints/file_upload/generate_upload_url.js index 20033a2b1..043f68723 100644 --- a/lib/core/endpoints/file_upload/generate_upload_url.js +++ b/lib/core/endpoints/file_upload/generate_upload_url.js @@ -16,11 +16,11 @@ var endpoint = { return _operations["default"].PNGenerateUploadUrlOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'channel can\'t be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.name)) { + if (!(params !== null && params !== void 0 && params.name)) { return 'name can\'t be empty'; } }, @@ -43,10 +43,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams() { return {}; }, diff --git a/lib/core/endpoints/file_upload/generate_upload_url.js.map b/lib/core/endpoints/file_upload/generate_upload_url.js.map index 781ecf05f..77e5823df 100644 --- a/lib/core/endpoints/file_upload/generate_upload_url.js.map +++ b/lib/core/endpoints/file_upload/generate_upload_url.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/file_upload/generate_upload_url.js"],"names":["endpoint","getOperation","operationConstants","PNGenerateUploadUrlOperation","validateParams","_","params","channel","name","usePost","postURL","config","subscribeKey","utils","encodeString","postPayload","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","handleResponse","response","status","data","file_upload_request"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAEA,IAAMA,QAA0E,GAAG;AACjFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,4BAAzB;AAAA,GADmE;AAGjFC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEE,IAAT,CAAJ,EAAmB;AACjB,aAAO,sBAAP;AACD;AACF,GAXgF;AAajFC,EAAAA,OAAO,EAAE;AAAA,WAAM,IAAN;AAAA,GAbwE;AAcjFC,EAAAA,OAAO,EAAE,uBAAaJ,MAAb;AAAA,QAAGK,MAAH,QAAGA,MAAH;AAAA,+BAAqCA,MAAM,CAACC,YAA5C,uBAAqEC,kBAAMC,YAAN,CAAmBR,MAAM,CAACC,OAA1B,CAArE;AAAA,GAdwE;AAgBjFQ,EAAAA,WAAW,EAAE,qBAACV,CAAD,EAAIC,MAAJ;AAAA,WAAgB;AAC3BE,MAAAA,IAAI,EAAEF,MAAM,CAACE;AADc,KAAhB;AAAA,GAhBoE;AAoBjFQ,EAAAA,iBAAiB,EAAE;AAAA,QAAGL,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACM,qBAAP,EAAhB;AAAA,GApB8D;AAsBjFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAtBgE;AAwBjFC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,YAAtB,CAAtB;AAAA,GAxBmE;AA0BjFC,EAAAA,aAAa,EAAE;AAAA,WAAO,EAAP;AAAA,GA1BkE;AA4BjFC,EAAAA,cAAc,EAAE,wBAAClB,CAAD,EAAImB,QAAJ;AAAA,WAA2C;AACzDC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADwC;AAEzDC,MAAAA,IAAI,EAAEF,QAAQ,CAACE,IAF0C;AAGzDC,MAAAA,mBAAmB,EAAEH,QAAQ,CAACG;AAH2B,KAA3C;AAAA;AA5BiE,CAAnF;eAmCe3B,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { GenerateUploadUrlParams, GenerateUploadUrlResult } from './types';\nimport utils from '../../utils';\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGenerateUploadUrlOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'channel can\\'t be empty';\n }\n\n if (!params?.name) {\n return 'name can\\'t be empty';\n }\n },\n\n usePost: () => true,\n postURL: ({ config }, params) => `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/generate-upload-url`,\n\n postPayload: (_, params) => ({\n name: params.name\n }),\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('fileUpload'),\n\n prepareParams: () => ({}),\n\n handleResponse: (_, response): GenerateUploadUrlResult => ({\n status: response.status,\n data: response.data,\n file_upload_request: response.file_upload_request,\n }),\n};\n\nexport default endpoint;\n"],"file":"generate_upload_url.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/file_upload/generate_upload_url.js"],"names":["endpoint","getOperation","operationConstants","PNGenerateUploadUrlOperation","validateParams","_","params","channel","name","usePost","postURL","config","subscribeKey","utils","encodeString","postPayload","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","response","status","data","file_upload_request"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAEA,IAAMA,QAA0E,GAAG;AACjFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,4BAAzB;AAAA,GADmE;AAGjFC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEE,IAAT,CAAJ,EAAmB;AACjB,aAAO,sBAAP;AACD;AACF,GAXgF;AAajFC,EAAAA,OAAO,EAAE;AAAA,WAAM,IAAN;AAAA,GAbwE;AAcjFC,EAAAA,OAAO,EAAE,uBAAaJ,MAAb;AAAA,QAAGK,MAAH,QAAGA,MAAH;AAAA,+BAAqCA,MAAM,CAACC,YAA5C,uBAAqEC,kBAAMC,YAAN,CAAmBR,MAAM,CAACC,OAA1B,CAArE;AAAA,GAdwE;AAgBjFQ,EAAAA,WAAW,EAAE,qBAACV,CAAD,EAAIC,MAAJ;AAAA,WAAgB;AAC3BE,MAAAA,IAAI,EAAEF,MAAM,CAACE;AADc,KAAhB;AAAA,GAhBoE;AAoBjFQ,EAAAA,iBAAiB,EAAE;AAAA,QAAGL,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACM,qBAAP,EAAhB;AAAA,GApB8D;AAsBjFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAtBgE;AAwBjFC,EAAAA,aAAa,EAAE;AAAA,WAAO,EAAP;AAAA,GAxBkE;AA0BjFC,EAAAA,cAAc,EAAE,wBAACf,CAAD,EAAIgB,QAAJ;AAAA,WAA2C;AACzDC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADwC;AAEzDC,MAAAA,IAAI,EAAEF,QAAQ,CAACE,IAF0C;AAGzDC,MAAAA,mBAAmB,EAAEH,QAAQ,CAACG;AAH2B,KAA3C;AAAA;AA1BiE,CAAnF;eAiCexB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { GenerateUploadUrlParams, GenerateUploadUrlResult } from './types';\nimport utils from '../../utils';\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGenerateUploadUrlOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'channel can\\'t be empty';\n }\n\n if (!params?.name) {\n return 'name can\\'t be empty';\n }\n },\n\n usePost: () => true,\n postURL: ({ config }, params) => `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/generate-upload-url`,\n\n postPayload: (_, params) => ({\n name: params.name\n }),\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: () => ({}),\n\n handleResponse: (_, response): GenerateUploadUrlResult => ({\n status: response.status,\n data: response.data,\n file_upload_request: response.file_upload_request,\n }),\n};\n\nexport default endpoint;\n"],"file":"generate_upload_url.js"} \ No newline at end of file diff --git a/lib/core/endpoints/file_upload/get_file_url.js b/lib/core/endpoints/file_upload/get_file_url.js index dd80fe333..3735b1ffc 100644 --- a/lib/core/endpoints/file_upload/get_file_url.js +++ b/lib/core/endpoints/file_upload/get_file_url.js @@ -15,7 +15,8 @@ var _default = function _default(modules, _ref) { var channel = _ref.channel, id = _ref.id, name = _ref.name; - var config = modules.config; + var config = modules.config, + networking = modules.networking; if (!channel) { throw new _endpoint.PubNubError('Validation failed, check status for details', (0, _endpoint.createValidationError)("channel can't be empty")); @@ -51,10 +52,10 @@ var _default = function _default(modules, _ref) { }).join('&'); if (queryParams !== '') { - return "https://".concat(config.origin).concat(url, "?").concat(queryParams); + return "".concat(networking.getStandardOrigin()).concat(url, "?").concat(queryParams); } - return "https://".concat(config.origin).concat(url); + return "".concat(networking.getStandardOrigin()).concat(url); }; exports["default"] = _default; diff --git a/lib/core/endpoints/file_upload/get_file_url.js.map b/lib/core/endpoints/file_upload/get_file_url.js.map index d559d2e03..8b4eb5687 100644 --- a/lib/core/endpoints/file_upload/get_file_url.js.map +++ b/lib/core/endpoints/file_upload/get_file_url.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/file_upload/get_file_url.js"],"names":["modules","channel","id","name","config","PubNubError","url","subscribeKey","utils","encodeString","params","uuid","getUUID","pnsdk","getAuthKey","auth","secretKey","getOperation","queryParams","Object","keys","map","key","encodeURIComponent","join","origin"],"mappings":";;;;;;;;;AAEA;;AAGA;;eAEe,kBAACA,OAAD,QAAiF;AAAA,MAA5DC,OAA4D,QAA5DA,OAA4D;AAAA,MAAnDC,EAAmD,QAAnDA,EAAmD;AAAA,MAA/CC,IAA+C,QAA/CA,IAA+C;AAAA,MACtFC,MADsF,GAC3EJ,OAD2E,CACtFI,MADsF;;AAG9F,MAAI,CAACH,OAAL,EAAc;AACZ,UAAM,IAAII,qBAAJ,CACJ,6CADI,EAEJ,qCAAsB,wBAAtB,CAFI,CAAN;AAID;;AAED,MAAI,CAACH,EAAL,EAAS;AACP,UAAM,IAAIG,qBAAJ,CACJ,6CADI,EAEJ,qCAAsB,wBAAtB,CAFI,CAAN;AAID;;AAED,MAAI,CAACF,IAAL,EAAW;AACT,UAAM,IAAIE,qBAAJ,CACJ,6CADI,EAEJ,qCAAsB,0BAAtB,CAFI,CAAN;AAID;;AAED,MAAMC,GAAG,uBAAgBF,MAAM,CAACG,YAAvB,uBAAgDC,kBAAMC,YAAN,CAAmBR,OAAnB,CAAhD,oBAAqFC,EAArF,cAA2FC,IAA3F,CAAT;AACA,MAAMO,MAAM,GAAG,EAAf;AAEAA,EAAAA,MAAM,CAACC,IAAP,GAAcP,MAAM,CAACQ,OAAP,EAAd;AACAF,EAAAA,MAAM,CAACG,KAAP,GAAe,6BAAcT,MAAd,CAAf;;AAEA,MAAIA,MAAM,CAACU,UAAP,EAAJ,EAAyB;AACvBJ,IAAAA,MAAM,CAACK,IAAP,GAAcX,MAAM,CAACU,UAAP,EAAd;AACD;;AAED,MAAIV,MAAM,CAACY,SAAX,EAAsB;AACpB,+BAAYhB,OAAZ,EAAqBM,GAArB,EAA0BI,MAA1B,EAAkC,EAAlC,EAAsC;AACpCO,MAAAA,YAAY,EAAE;AAAA,eAAM,2BAAN;AAAA;AADsB,KAAtC;AAGD;;AAED,MAAMC,WAAW,GAAGC,MAAM,CAACC,IAAP,CAAYV,MAAZ,EAAoBW,GAApB,CAAwB,UAACC,GAAD;AAAA,qBAAYC,kBAAkB,CAACD,GAAD,CAA9B,cAAuCC,kBAAkB,CAACb,MAAM,CAACY,GAAD,CAAP,CAAzD;AAAA,GAAxB,EAAkGE,IAAlG,CAAuG,GAAvG,CAApB;;AAEA,MAAIN,WAAW,KAAK,EAApB,EAAwB;AACtB,6BAAkBd,MAAM,CAACqB,MAAzB,SAAkCnB,GAAlC,cAAyCY,WAAzC;AACD;;AAED,2BAAkBd,MAAM,CAACqB,MAAzB,SAAkCnB,GAAlC;AACD,C","sourcesContent":["/** @flow */\n\nimport { PubNubError, createValidationError, signRequest, generatePNSDK } from '../../components/endpoint';\nimport type { Modules } from '../endpoint';\nimport type { GetFileUrlParams, GetFileUrlResult } from './types';\nimport utils from '../../utils';\n\nexport default (modules: Modules, { channel, id, name }: GetFileUrlParams): GetFileUrlResult => {\n const { config } = modules;\n\n if (!channel) {\n throw new PubNubError(\n 'Validation failed, check status for details',\n createValidationError(\"channel can't be empty\")\n );\n }\n\n if (!id) {\n throw new PubNubError(\n 'Validation failed, check status for details',\n createValidationError(\"file id can't be empty\")\n );\n }\n\n if (!name) {\n throw new PubNubError(\n 'Validation failed, check status for details',\n createValidationError(\"file name can't be empty\")\n );\n }\n\n const url = `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(channel)}/files/${id}/${name}`;\n const params = {};\n\n params.uuid = config.getUUID();\n params.pnsdk = generatePNSDK(config);\n\n if (config.getAuthKey()) {\n params.auth = config.getAuthKey();\n }\n\n if (config.secretKey) {\n signRequest(modules, url, params, {}, {\n getOperation: () => 'PubNubGetFileUrlOperation',\n });\n }\n\n const queryParams = Object.keys(params).map((key) => `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`).join('&');\n\n if (queryParams !== '') {\n return `https://${config.origin}${url}?${queryParams}`;\n }\n\n return `https://${config.origin}${url}`;\n};\n"],"file":"get_file_url.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/file_upload/get_file_url.js"],"names":["modules","channel","id","name","config","networking","PubNubError","url","subscribeKey","utils","encodeString","params","uuid","getUUID","pnsdk","getAuthKey","auth","secretKey","getOperation","queryParams","Object","keys","map","key","encodeURIComponent","join","getStandardOrigin"],"mappings":";;;;;;;;;AAEA;;AAGA;;eAEe,kBAACA,OAAD,QAAiF;AAAA,MAA5DC,OAA4D,QAA5DA,OAA4D;AAAA,MAAnDC,EAAmD,QAAnDA,EAAmD;AAAA,MAA/CC,IAA+C,QAA/CA,IAA+C;AAC9F,MAAQC,MAAR,GAA+BJ,OAA/B,CAAQI,MAAR;AAAA,MAAgBC,UAAhB,GAA+BL,OAA/B,CAAgBK,UAAhB;;AAEA,MAAI,CAACJ,OAAL,EAAc;AACZ,UAAM,IAAIK,qBAAJ,CACJ,6CADI,EAEJ,qCAAsB,wBAAtB,CAFI,CAAN;AAID;;AAED,MAAI,CAACJ,EAAL,EAAS;AACP,UAAM,IAAII,qBAAJ,CACJ,6CADI,EAEJ,qCAAsB,wBAAtB,CAFI,CAAN;AAID;;AAED,MAAI,CAACH,IAAL,EAAW;AACT,UAAM,IAAIG,qBAAJ,CACJ,6CADI,EAEJ,qCAAsB,0BAAtB,CAFI,CAAN;AAID;;AAED,MAAMC,GAAG,uBAAgBH,MAAM,CAACI,YAAvB,uBAAgDC,kBAAMC,YAAN,CAAmBT,OAAnB,CAAhD,oBAAqFC,EAArF,cAA2FC,IAA3F,CAAT;AACA,MAAMQ,MAAM,GAAG,EAAf;AAEAA,EAAAA,MAAM,CAACC,IAAP,GAAcR,MAAM,CAACS,OAAP,EAAd;AACAF,EAAAA,MAAM,CAACG,KAAP,GAAe,6BAAcV,MAAd,CAAf;;AAEA,MAAIA,MAAM,CAACW,UAAP,EAAJ,EAAyB;AACvBJ,IAAAA,MAAM,CAACK,IAAP,GAAcZ,MAAM,CAACW,UAAP,EAAd;AACD;;AAED,MAAIX,MAAM,CAACa,SAAX,EAAsB;AACpB,+BAAYjB,OAAZ,EAAqBO,GAArB,EAA0BI,MAA1B,EAAkC,EAAlC,EAAsC;AACpCO,MAAAA,YAAY,EAAE;AAAA,eAAM,2BAAN;AAAA;AADsB,KAAtC;AAGD;;AAED,MAAMC,WAAW,GAAGC,MAAM,CAACC,IAAP,CAAYV,MAAZ,EAAoBW,GAApB,CAAwB,UAACC,GAAD;AAAA,qBAAYC,kBAAkB,CAACD,GAAD,CAA9B,cAAuCC,kBAAkB,CAACb,MAAM,CAACY,GAAD,CAAP,CAAzD;AAAA,GAAxB,EAAkGE,IAAlG,CAAuG,GAAvG,CAApB;;AAEA,MAAIN,WAAW,KAAK,EAApB,EAAwB;AACtB,qBAAUd,UAAU,CAACqB,iBAAX,EAAV,SAA2CnB,GAA3C,cAAkDY,WAAlD;AACD;;AAED,mBAAUd,UAAU,CAACqB,iBAAX,EAAV,SAA2CnB,GAA3C;AACD,C","sourcesContent":["/** @flow */\n\nimport { PubNubError, createValidationError, signRequest, generatePNSDK } from '../../components/endpoint';\nimport type { Modules } from '../endpoint';\nimport type { GetFileUrlParams, GetFileUrlResult } from './types';\nimport utils from '../../utils';\n\nexport default (modules: Modules, { channel, id, name }: GetFileUrlParams): GetFileUrlResult => {\n const { config, networking } = modules;\n\n if (!channel) {\n throw new PubNubError(\n 'Validation failed, check status for details',\n createValidationError(\"channel can't be empty\")\n );\n }\n\n if (!id) {\n throw new PubNubError(\n 'Validation failed, check status for details',\n createValidationError(\"file id can't be empty\")\n );\n }\n\n if (!name) {\n throw new PubNubError(\n 'Validation failed, check status for details',\n createValidationError(\"file name can't be empty\")\n );\n }\n\n const url = `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(channel)}/files/${id}/${name}`;\n const params = {};\n\n params.uuid = config.getUUID();\n params.pnsdk = generatePNSDK(config);\n\n if (config.getAuthKey()) {\n params.auth = config.getAuthKey();\n }\n\n if (config.secretKey) {\n signRequest(modules, url, params, {}, {\n getOperation: () => 'PubNubGetFileUrlOperation',\n });\n }\n\n const queryParams = Object.keys(params).map((key) => `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`).join('&');\n\n if (queryParams !== '') {\n return `${networking.getStandardOrigin()}${url}?${queryParams}`;\n }\n\n return `${networking.getStandardOrigin()}${url}`;\n};\n"],"file":"get_file_url.js"} \ No newline at end of file diff --git a/lib/core/endpoints/file_upload/list_files.js b/lib/core/endpoints/file_upload/list_files.js index f564eeb76..fbf89ce0a 100644 --- a/lib/core/endpoints/file_upload/list_files.js +++ b/lib/core/endpoints/file_upload/list_files.js @@ -16,7 +16,7 @@ var endpoint = { return _operations["default"].PNListFilesOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'channel can\'t be empty'; } }, @@ -31,10 +31,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams(_, params) { var outParams = {}; diff --git a/lib/core/endpoints/file_upload/list_files.js.map b/lib/core/endpoints/file_upload/list_files.js.map index 8870e027e..550560c9f 100644 --- a/lib/core/endpoints/file_upload/list_files.js.map +++ b/lib/core/endpoints/file_upload/list_files.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/file_upload/list_files.js"],"names":["endpoint","getOperation","operationConstants","PNListFilesOperation","validateParams","_","params","channel","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","outParams","limit","next","handleResponse","response","status","data","count"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAEA,IAAMA,QAA0D,GAAG;AACjEC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,oBAAzB;AAAA,GADmD;AAGjEC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;AACF,GAPgE;AASjEC,EAAAA,MAAM,EAAE,sBAAaF,MAAb;AAAA,QAAGG,MAAH,QAAGA,MAAH;AAAA,+BAAqCA,MAAM,CAACC,YAA5C,uBAAqEC,kBAAMC,YAAN,CAAmBN,MAAM,CAACC,OAA1B,CAArE;AAAA,GATyD;AAWjEM,EAAAA,iBAAiB,EAAE;AAAA,QAAGJ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACK,qBAAP,EAAhB;AAAA,GAX8C;AAajEC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAbgD;AAejEC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,YAAtB,CAAtB;AAAA,GAfmD;AAiBjEC,EAAAA,aAAa,EAAE,uBAACd,CAAD,EAAIC,MAAJ,EAAe;AAC5B,QAAMc,SAAS,GAAG,EAAlB;;AAEA,QAAId,MAAM,CAACe,KAAX,EAAkB;AAChBD,MAAAA,SAAS,CAACC,KAAV,GAAkBf,MAAM,CAACe,KAAzB;AACD;;AAED,QAAIf,MAAM,CAACgB,IAAX,EAAiB;AACfF,MAAAA,SAAS,CAACE,IAAV,GAAiBhB,MAAM,CAACgB,IAAxB;AACD;;AAED,WAAOF,SAAP;AACD,GA7BgE;AA+BjEG,EAAAA,cAAc,EAAE,wBAAClB,CAAD,EAAImB,QAAJ;AAAA,WAAmC;AACjDC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADgC;AAEjDC,MAAAA,IAAI,EAAEF,QAAQ,CAACE,IAFkC;AAGjDJ,MAAAA,IAAI,EAAEE,QAAQ,CAACF,IAHkC;AAIjDK,MAAAA,KAAK,EAAEH,QAAQ,CAACG;AAJiC,KAAnC;AAAA;AA/BiD,CAAnE;eAuCe3B,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { ListFilesParams, ListFilesResult } from './types';\nimport utils from '../../utils';\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNListFilesOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'channel can\\'t be empty';\n }\n },\n\n getURL: ({ config }, params) => `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/files`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('fileUpload'),\n\n prepareParams: (_, params) => {\n const outParams = {};\n\n if (params.limit) {\n outParams.limit = params.limit;\n }\n\n if (params.next) {\n outParams.next = params.next;\n }\n\n return outParams;\n },\n\n handleResponse: (_, response): ListFilesResult => ({\n status: response.status,\n data: response.data,\n next: response.next,\n count: response.count,\n }),\n};\n\nexport default endpoint;\n"],"file":"list_files.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/file_upload/list_files.js"],"names":["endpoint","getOperation","operationConstants","PNListFilesOperation","validateParams","_","params","channel","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","outParams","limit","next","handleResponse","response","status","data","count"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAEA,IAAMA,QAA0D,GAAG;AACjEC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,oBAAzB;AAAA,GADmD;AAGjEC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;AACF,GAPgE;AASjEC,EAAAA,MAAM,EAAE,sBAAaF,MAAb;AAAA,QAAGG,MAAH,QAAGA,MAAH;AAAA,+BAAqCA,MAAM,CAACC,YAA5C,uBAAqEC,kBAAMC,YAAN,CAAmBN,MAAM,CAACC,OAA1B,CAArE;AAAA,GATyD;AAWjEM,EAAAA,iBAAiB,EAAE;AAAA,QAAGJ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACK,qBAAP,EAAhB;AAAA,GAX8C;AAajEC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAbgD;AAejEC,EAAAA,aAAa,EAAE,uBAACX,CAAD,EAAIC,MAAJ,EAAe;AAC5B,QAAMW,SAAS,GAAG,EAAlB;;AAEA,QAAIX,MAAM,CAACY,KAAX,EAAkB;AAChBD,MAAAA,SAAS,CAACC,KAAV,GAAkBZ,MAAM,CAACY,KAAzB;AACD;;AAED,QAAIZ,MAAM,CAACa,IAAX,EAAiB;AACfF,MAAAA,SAAS,CAACE,IAAV,GAAiBb,MAAM,CAACa,IAAxB;AACD;;AAED,WAAOF,SAAP;AACD,GA3BgE;AA6BjEG,EAAAA,cAAc,EAAE,wBAACf,CAAD,EAAIgB,QAAJ;AAAA,WAAmC;AACjDC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADgC;AAEjDC,MAAAA,IAAI,EAAEF,QAAQ,CAACE,IAFkC;AAGjDJ,MAAAA,IAAI,EAAEE,QAAQ,CAACF,IAHkC;AAIjDK,MAAAA,KAAK,EAAEH,QAAQ,CAACG;AAJiC,KAAnC;AAAA;AA7BiD,CAAnE;eAqCexB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { ListFilesParams, ListFilesResult } from './types';\nimport utils from '../../utils';\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNListFilesOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'channel can\\'t be empty';\n }\n },\n\n getURL: ({ config }, params) => `/v1/files/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/files`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_, params) => {\n const outParams = {};\n\n if (params.limit) {\n outParams.limit = params.limit;\n }\n\n if (params.next) {\n outParams.next = params.next;\n }\n\n return outParams;\n },\n\n handleResponse: (_, response): ListFilesResult => ({\n status: response.status,\n data: response.data,\n next: response.next,\n count: response.count,\n }),\n};\n\nexport default endpoint;\n"],"file":"list_files.js"} \ No newline at end of file diff --git a/lib/core/endpoints/file_upload/publish_file.js b/lib/core/endpoints/file_upload/publish_file.js index e2ca01136..a84ddc66b 100644 --- a/lib/core/endpoints/file_upload/publish_file.js +++ b/lib/core/endpoints/file_upload/publish_file.js @@ -31,15 +31,15 @@ var endpoint = { return _operations["default"].PNPublishFileOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return "channel can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.fileId)) { + if (!(params !== null && params !== void 0 && params.fileId)) { return "file id can't be empty"; } - if (!(params === null || params === void 0 ? void 0 : params.fileName)) { + if (!(params !== null && params !== void 0 && params.fileName)) { return "file name can't be empty"; } }, @@ -64,10 +64,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('fileUpload'); - }, prepareParams: function prepareParams(_, params) { var outParams = {}; diff --git a/lib/core/endpoints/file_upload/publish_file.js.map b/lib/core/endpoints/file_upload/publish_file.js.map index 832c9bcc5..49358964c 100644 --- a/lib/core/endpoints/file_upload/publish_file.js.map +++ b/lib/core/endpoints/file_upload/publish_file.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/file_upload/publish_file.js"],"names":["preparePayload","payload","crypto","config","stringifiedPayload","JSON","stringify","cipherKey","encrypt","endpoint","getOperation","operationConstants","PNPublishFileOperation","validateParams","_","params","channel","fileId","fileName","getURL","modules","publishKey","subscribeKey","message","file","name","id","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","outParams","ttl","storeInHistory","undefined","store","meta","handleResponse","response","timetoken"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig, Modules } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { PublishFileParams, PublishFileResult } from './types';\nimport utils from '../../utils';\n\nconst preparePayload = ({ crypto, config }: Modules, payload: any): string => {\n let stringifiedPayload = JSON.stringify(payload);\n\n if (config.cipherKey) {\n stringifiedPayload = crypto.encrypt(stringifiedPayload);\n stringifiedPayload = JSON.stringify(stringifiedPayload);\n }\n\n return stringifiedPayload || '';\n};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNPublishFileOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return \"channel can't be empty\";\n }\n\n if (!params?.fileId) {\n return \"file id can't be empty\";\n }\n\n if (!params?.fileName) {\n return \"file name can't be empty\";\n }\n },\n\n getURL: (modules, params) => {\n const { publishKey, subscribeKey } = modules.config;\n\n const message = {\n message: params.message,\n file: {\n name: params.fileName,\n id: params.fileId,\n },\n };\n\n const payload = preparePayload(modules, message);\n\n return `/v1/files/publish-file/${publishKey}/${subscribeKey}/0/${utils.encodeString(params.channel)}/0/${utils.encodeString(payload)}`;\n },\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('fileUpload'),\n\n prepareParams: (_, params) => {\n const outParams = {};\n\n if (params.ttl) {\n outParams.ttl = params.ttl;\n }\n\n if (params.storeInHistory !== undefined) {\n outParams.store = params.storeInHistory ? '1' : '0';\n }\n\n if (params.meta && typeof params.meta === 'object') {\n outParams.meta = JSON.stringify(params.meta);\n }\n\n return outParams;\n },\n\n handleResponse: (_, response): PublishFileResult => ({\n timetoken: response['2'],\n }),\n};\n\nexport default endpoint;\n"],"file":"publish_file.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/file_upload/publish_file.js"],"names":["preparePayload","payload","crypto","config","stringifiedPayload","JSON","stringify","cipherKey","encrypt","endpoint","getOperation","operationConstants","PNPublishFileOperation","validateParams","_","params","channel","fileId","fileName","getURL","modules","publishKey","subscribeKey","message","file","name","id","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","outParams","ttl","storeInHistory","undefined","store","meta","handleResponse","response","timetoken"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig, Modules } from '../endpoint';\nimport operationConstants from '../../constants/operations';\nimport type { PublishFileParams, PublishFileResult } from './types';\nimport utils from '../../utils';\n\nconst preparePayload = ({ crypto, config }: Modules, payload: any): string => {\n let stringifiedPayload = JSON.stringify(payload);\n\n if (config.cipherKey) {\n stringifiedPayload = crypto.encrypt(stringifiedPayload);\n stringifiedPayload = JSON.stringify(stringifiedPayload);\n }\n\n return stringifiedPayload || '';\n};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNPublishFileOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return \"channel can't be empty\";\n }\n\n if (!params?.fileId) {\n return \"file id can't be empty\";\n }\n\n if (!params?.fileName) {\n return \"file name can't be empty\";\n }\n },\n\n getURL: (modules, params) => {\n const { publishKey, subscribeKey } = modules.config;\n\n const message = {\n message: params.message,\n file: {\n name: params.fileName,\n id: params.fileId,\n },\n };\n\n const payload = preparePayload(modules, message);\n\n return `/v1/files/publish-file/${publishKey}/${subscribeKey}/0/${utils.encodeString(params.channel)}/0/${utils.encodeString(payload)}`;\n },\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_, params) => {\n const outParams = {};\n\n if (params.ttl) {\n outParams.ttl = params.ttl;\n }\n\n if (params.storeInHistory !== undefined) {\n outParams.store = params.storeInHistory ? '1' : '0';\n }\n\n if (params.meta && typeof params.meta === 'object') {\n outParams.meta = JSON.stringify(params.meta);\n }\n\n return outParams;\n },\n\n handleResponse: (_, response): PublishFileResult => ({\n timetoken: response['2'],\n }),\n};\n\nexport default endpoint;\n"],"file":"publish_file.js"} \ No newline at end of file diff --git a/lib/core/endpoints/file_upload/send_file.js b/lib/core/endpoints/file_upload/send_file.js index 92dff50b8..75278f3e2 100644 --- a/lib/core/endpoints/file_upload/send_file.js +++ b/lib/core/endpoints/file_upload/send_file.js @@ -214,20 +214,15 @@ var sendFile = function sendFile(_ref) { throw new _endpoint.PubNubError('Upload to bucket was unsuccessful', result); case 82: - retries = 5; + retries = config.fileUploadPublishRetryLimit; wasSuccessful = false; publishResult = { timetoken: '0' }; case 85: - if (!(!wasSuccessful && retries > 0)) { - _context.next = 98; - break; - } - - _context.prev = 86; - _context.next = 89; + _context.prev = 85; + _context.next = 88; return publishFile({ channel: channel, message: message, @@ -238,24 +233,26 @@ var sendFile = function sendFile(_ref) { ttl: ttl }); - case 89: + case 88: publishResult = _context.sent; wasSuccessful = true; - _context.next = 96; + _context.next = 95; break; - case 93: - _context.prev = 93; - _context.t17 = _context["catch"](86); + case 92: + _context.prev = 92; + _context.t17 = _context["catch"](85); retries -= 1; - case 96: - _context.next = 85; - break; + case 95: + if (!wasSuccessful && retries > 0) { + _context.next = 85; + break; + } - case 98: + case 96: if (wasSuccessful) { - _context.next = 102; + _context.next = 100; break; } @@ -265,19 +262,19 @@ var sendFile = function sendFile(_ref) { name: name }); - case 102: + case 100: return _context.abrupt("return", { timetoken: publishResult.timetoken, id: id, name: name }); - case 103: + case 101: case "end": return _context.stop(); } } - }, _callee, null, [[21, 73], [86, 93]]); + }, _callee, null, [[21, 73], [85, 92]]); })); return function (_x) { diff --git a/lib/core/endpoints/file_upload/send_file.js.map b/lib/core/endpoints/file_upload/send_file.js.map index 94ace6862..44c63d81b 100644 --- a/lib/core/endpoints/file_upload/send_file.js.map +++ b/lib/core/endpoints/file_upload/send_file.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/file_upload/send_file.js"],"names":["getErrorFromResponse","response","Promise","resolve","result","on","data","toString","sendFile","generateUploadUrl","publishFile","modules","PubNubFile","config","cryptography","networking","channel","input","file","message","cipherKey","meta","ttl","storeInHistory","PubNubError","create","name","file_upload_request","url","formFields","form_fields","id","supportsEncryptFile","encryptFile","formFieldsWithMimeType","mimeType","map","entry","key","value","supportsFileUri","uri","toFileUri","POSTFILE","supportsFile","toFile","supportsBuffer","toBuffer","supportsBlob","toBlob","Error","errorBody","reason","exec","status","retries","wasSuccessful","publishResult","timetoken","fileId","fileName","deps","f","params","cb","resultP","then","error"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport { PubNubError, createValidationError } from '../../components/endpoint';\nimport type {\n SendFileParams,\n SendFileResult,\n GenerateUploadUrlParams,\n GenerateUploadUrlResult,\n PublishFileParams,\n PublishFileResult,\n} from './types';\n\nimport type { Modules } from '../endpoint';\n\ntype Dependencies = {|\n generateUploadUrl: (params: GenerateUploadUrlParams) => Promise,\n publishFile: (params: PublishFileParams) => Promise,\n modules: Modules,\n|};\n\nconst getErrorFromResponse = (response) => new Promise((resolve) => {\n let result = '';\n\n response.on('data', (data) => {\n result += data.toString('utf8');\n });\n\n response.on('end', () => {\n resolve(result);\n });\n});\n\nconst sendFile = ({\n generateUploadUrl,\n publishFile,\n modules: { PubNubFile, config, cryptography, networking },\n}: Dependencies) => async ({\n channel,\n file: input,\n message,\n cipherKey,\n meta,\n ttl,\n storeInHistory,\n}: SendFileParams): Promise => {\n if (!channel) {\n throw new PubNubError(\n 'Validation failed, check status for details',\n createValidationError(\"channel can't be empty\")\n );\n }\n\n if (!input) {\n throw new PubNubError('Validation failed, check status for details', createValidationError(\"file can't be empty\"));\n }\n\n let file = PubNubFile.create(input);\n\n const {\n file_upload_request: { url, form_fields: formFields },\n data: { id, name },\n } = await generateUploadUrl({ channel, name: file.name });\n\n if (PubNubFile.supportsEncryptFile && (cipherKey ?? config.cipherKey)) {\n file = await cryptography.encryptFile(cipherKey ?? config.cipherKey, file, PubNubFile);\n }\n\n let formFieldsWithMimeType = formFields;\n\n if (file.mimeType) {\n formFieldsWithMimeType = formFields.map((entry) => {\n if (entry.key === 'Content-Type') return { key: entry.key, value: file.mimeType };\n else return entry;\n });\n }\n\n let result;\n\n try {\n if (PubNubFile.supportsFileUri && input.uri) {\n result = await networking.POSTFILE(url, formFieldsWithMimeType, await file.toFileUri());\n } else if (PubNubFile.supportsFile) {\n result = await networking.POSTFILE(url, formFieldsWithMimeType, await file.toFile());\n } else if (PubNubFile.supportsBuffer) {\n result = await networking.POSTFILE(url, formFieldsWithMimeType, await file.toBuffer());\n } else if (PubNubFile.supportsBlob) {\n result = await networking.POSTFILE(url, formFieldsWithMimeType, await file.toBlob());\n } else {\n throw new Error('Unsupported environment');\n }\n } catch (e) {\n const errorBody = await getErrorFromResponse(e.response);\n\n const reason = /(.*)<\\/Message>/gi.exec(errorBody);\n\n throw new PubNubError(reason ? `Upload to bucket failed: ${reason[1]}` : 'Upload to bucket failed.', e);\n }\n\n if (result.status !== 204) {\n throw new PubNubError('Upload to bucket was unsuccessful', result);\n }\n\n let retries = 5;\n let wasSuccessful = false;\n\n let publishResult = { timetoken: '0' };\n\n while (!wasSuccessful && retries > 0) {\n try {\n publishResult = await publishFile({\n channel,\n message,\n fileId: id,\n fileName: name,\n meta,\n storeInHistory,\n ttl,\n });\n\n wasSuccessful = true;\n } catch (e) {\n retries -= 1;\n }\n }\n\n if (!wasSuccessful) {\n throw new PubNubError('Publish failed. You may want to execute that operation manually using pubnub.publishFile', {\n channel,\n id,\n name,\n });\n } else {\n return {\n timetoken: publishResult.timetoken,\n id,\n name,\n };\n }\n};\n\nexport default (deps: Dependencies) => {\n const f = sendFile(deps);\n\n return (params: SendFileParams, cb?: (error: any, params: SendFileResult) => void): Promise => {\n const resultP = f(params);\n\n if (typeof cb === 'function') {\n resultP.then((result) => cb(null, result)).catch((error) => cb(error, (null: any)));\n\n return resultP;\n } else {\n return resultP;\n }\n };\n};\n"],"file":"send_file.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/file_upload/send_file.js"],"names":["getErrorFromResponse","response","Promise","resolve","result","on","data","toString","sendFile","generateUploadUrl","publishFile","modules","PubNubFile","config","cryptography","networking","channel","input","file","message","cipherKey","meta","ttl","storeInHistory","PubNubError","create","name","file_upload_request","url","formFields","form_fields","id","supportsEncryptFile","encryptFile","formFieldsWithMimeType","mimeType","map","entry","key","value","supportsFileUri","uri","toFileUri","POSTFILE","supportsFile","toFile","supportsBuffer","toBuffer","supportsBlob","toBlob","Error","errorBody","reason","exec","status","retries","fileUploadPublishRetryLimit","wasSuccessful","publishResult","timetoken","fileId","fileName","deps","f","params","cb","resultP","then","error"],"mappings":";;;;;;;;;;;;;AAEA;;AAkBA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,QAAD;AAAA,SAAc,IAAIC,OAAJ,CAAY,UAACC,OAAD,EAAa;AAClE,QAAIC,MAAM,GAAG,EAAb;AAEAH,IAAAA,QAAQ,CAACI,EAAT,CAAY,MAAZ,EAAoB,UAACC,IAAD,EAAU;AAC5BF,MAAAA,MAAM,IAAIE,IAAI,CAACC,QAAL,CAAc,MAAd,CAAV;AACD,KAFD;AAIAN,IAAAA,QAAQ,CAACI,EAAT,CAAY,KAAZ,EAAmB,YAAM;AACvBF,MAAAA,OAAO,CAACC,MAAD,CAAP;AACD,KAFD;AAGD,GAV0C,CAAd;AAAA,CAA7B;;AAYA,IAAMI,QAAQ,GAAG,SAAXA,QAAW;AAAA,MACfC,iBADe,QACfA,iBADe;AAAA,MAEfC,WAFe,QAEfA,WAFe;AAAA,0BAGfC,OAHe;AAAA,MAGJC,UAHI,gBAGJA,UAHI;AAAA,MAGQC,MAHR,gBAGQA,MAHR;AAAA,MAGgBC,YAHhB,gBAGgBA,YAHhB;AAAA,MAG8BC,UAH9B,gBAG8BA,UAH9B;AAAA;AAAA,gFAIG;AAAA;;AAAA;AAAA;AAAA;AAAA;AAClBC,cAAAA,OADkB,SAClBA,OADkB,EAEZC,KAFY,SAElBC,IAFkB,EAGlBC,OAHkB,SAGlBA,OAHkB,EAIlBC,SAJkB,SAIlBA,SAJkB,EAKlBC,IALkB,SAKlBA,IALkB,EAMlBC,GANkB,SAMlBA,GANkB,EAOlBC,cAPkB,SAOlBA,cAPkB;;AAAA,kBASbP,OATa;AAAA;AAAA;AAAA;;AAAA,oBAUV,IAAIQ,qBAAJ,CACJ,6CADI,EAEJ,qCAAsB,wBAAtB,CAFI,CAVU;;AAAA;AAAA,kBAgBbP,KAhBa;AAAA;AAAA;AAAA;;AAAA,oBAiBV,IAAIO,qBAAJ,CAAgB,6CAAhB,EAA+D,qCAAsB,qBAAtB,CAA/D,CAjBU;;AAAA;AAoBdN,cAAAA,IApBc,GAoBPN,UAAU,CAACa,MAAX,CAAkBR,KAAlB,CApBO;AAAA;AAAA,qBAyBRR,iBAAiB,CAAC;AAAEO,gBAAAA,OAAO,EAAPA,OAAF;AAAWU,gBAAAA,IAAI,EAAER,IAAI,CAACQ;AAAtB,eAAD,CAzBT;;AAAA;AAAA;AAAA,6DAuBhBC,mBAvBgB;AAuBOC,cAAAA,GAvBP,0BAuBOA,GAvBP;AAuByBC,cAAAA,UAvBzB,0BAuBYC,WAvBZ;AAAA,6DAwBhBxB,IAxBgB;AAwBRyB,cAAAA,EAxBQ,0BAwBRA,EAxBQ;AAwBJL,cAAAA,IAxBI,0BAwBJA,IAxBI;;AAAA,oBA2Bdd,UAAU,CAACoB,mBAAX,KAAmCZ,SAAnC,aAAmCA,SAAnC,cAAmCA,SAAnC,GAAgDP,MAAM,CAACO,SAAvD,CA3Bc;AAAA;AAAA;AAAA;;AAAA;AAAA,qBA4BHN,YAAY,CAACmB,WAAb,CAAyBb,SAAzB,aAAyBA,SAAzB,cAAyBA,SAAzB,GAAsCP,MAAM,CAACO,SAA7C,EAAwDF,IAAxD,EAA8DN,UAA9D,CA5BG;;AAAA;AA4BhBM,cAAAA,IA5BgB;;AAAA;AA+BdgB,cAAAA,sBA/Bc,GA+BWL,UA/BX;;AAiClB,kBAAIX,IAAI,CAACiB,QAAT,EAAmB;AACjBD,gBAAAA,sBAAsB,GAAGL,UAAU,CAACO,GAAX,CAAe,UAACC,KAAD,EAAW;AACjD,sBAAIA,KAAK,CAACC,GAAN,KAAc,cAAlB,EAAkC,OAAO;AAAEA,oBAAAA,GAAG,EAAED,KAAK,CAACC,GAAb;AAAkBC,oBAAAA,KAAK,EAAErB,IAAI,CAACiB;AAA9B,mBAAP,CAAlC,KACK,OAAOE,KAAP;AACN,iBAHwB,CAAzB;AAID;;AAtCiB;;AAAA,oBA2CZzB,UAAU,CAAC4B,eAAX,IAA8BvB,KAAK,CAACwB,GA3CxB;AAAA;AAAA;AAAA;;AAAA,4BA4CC1B,UA5CD;AAAA,4BA4CqBa,GA5CrB;AAAA,4BA4C0BM,sBA5C1B;AAAA;AAAA,qBA4CwDhB,IAAI,CAACwB,SAAL,EA5CxD;;AAAA;AAAA;AAAA;AAAA,iCA4CYC,QA5CZ;;AAAA;AA4CdvC,cAAAA,MA5Cc;AAAA;AAAA;;AAAA;AAAA,mBA6CLQ,UAAU,CAACgC,YA7CN;AAAA;AAAA;AAAA;;AAAA,4BA8CC7B,UA9CD;AAAA,4BA8CqBa,GA9CrB;AAAA,4BA8C0BM,sBA9C1B;AAAA;AAAA,qBA8CwDhB,IAAI,CAAC2B,MAAL,EA9CxD;;AAAA;AAAA;AAAA;AAAA,iCA8CYF,QA9CZ;;AAAA;AA8CdvC,cAAAA,MA9Cc;AAAA;AAAA;;AAAA;AAAA,mBA+CLQ,UAAU,CAACkC,cA/CN;AAAA;AAAA;AAAA;;AAAA,4BAgDC/B,UAhDD;AAAA,4BAgDqBa,GAhDrB;AAAA,6BAgD0BM,sBAhD1B;AAAA;AAAA,qBAgDwDhB,IAAI,CAAC6B,QAAL,EAhDxD;;AAAA;AAAA;AAAA;AAAA,iCAgDYJ,QAhDZ;;AAAA;AAgDdvC,cAAAA,MAhDc;AAAA;AAAA;;AAAA;AAAA,mBAiDLQ,UAAU,CAACoC,YAjDN;AAAA;AAAA;AAAA;;AAAA,6BAkDCjC,UAlDD;AAAA,6BAkDqBa,GAlDrB;AAAA,6BAkD0BM,sBAlD1B;AAAA;AAAA,qBAkDwDhB,IAAI,CAAC+B,MAAL,EAlDxD;;AAAA;AAAA;AAAA;AAAA,kCAkDYN,QAlDZ;;AAAA;AAkDdvC,cAAAA,MAlDc;AAAA;AAAA;;AAAA;AAAA,oBAoDR,IAAI8C,KAAJ,CAAU,yBAAV,CApDQ;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,qBAuDQlD,oBAAoB,CAAC,aAAEC,QAAH,CAvD5B;;AAAA;AAuDVkD,cAAAA,SAvDU;AAyDVC,cAAAA,MAzDU,GAyDD,6BAA6BC,IAA7B,CAAkCF,SAAlC,CAzDC;AAAA,oBA2DV,IAAI3B,qBAAJ,CAAgB4B,MAAM,sCAA+BA,MAAM,CAAC,CAAD,CAArC,IAA6C,0BAAnE,eA3DU;;AAAA;AAAA,oBA8DdhD,MAAM,CAACkD,MAAP,KAAkB,GA9DJ;AAAA;AAAA;AAAA;;AAAA,oBA+DV,IAAI9B,qBAAJ,CAAgB,mCAAhB,EAAqDpB,MAArD,CA/DU;;AAAA;AAkEdmD,cAAAA,OAlEc,GAkEJ1C,MAAM,CAAC2C,2BAlEH;AAmEdC,cAAAA,aAnEc,GAmEE,KAnEF;AAqEdC,cAAAA,aArEc,GAqEE;AAAEC,gBAAAA,SAAS,EAAE;AAAb,eArEF;;AAAA;AAAA;AAAA;AAAA,qBAyEQjD,WAAW,CAAC;AAChCM,gBAAAA,OAAO,EAAPA,OADgC;AAEhCG,gBAAAA,OAAO,EAAPA,OAFgC;AAGhCyC,gBAAAA,MAAM,EAAE7B,EAHwB;AAIhC8B,gBAAAA,QAAQ,EAAEnC,IAJsB;AAKhCL,gBAAAA,IAAI,EAAJA,IALgC;AAMhCE,gBAAAA,cAAc,EAAdA,cANgC;AAOhCD,gBAAAA,GAAG,EAAHA;AAPgC,eAAD,CAzEnB;;AAAA;AAyEdoC,cAAAA,aAzEc;AAmFdD,cAAAA,aAAa,GAAG,IAAhB;AAnFc;AAAA;;AAAA;AAAA;AAAA;AAqFdF,cAAAA,OAAO,IAAI,CAAX;;AArFc;AAAA,kBAuFT,CAACE,aAAD,IAAkBF,OAAO,GAAG,CAvFnB;AAAA;AAAA;AAAA;;AAAA;AAAA,kBAyFbE,aAzFa;AAAA;AAAA;AAAA;;AAAA,oBA0FV,IAAIjC,qBAAJ,CAAgB,0FAAhB,EAA4G;AAChHR,gBAAAA,OAAO,EAAPA,OADgH;AAEhHe,gBAAAA,EAAE,EAAFA,EAFgH;AAGhHL,gBAAAA,IAAI,EAAJA;AAHgH,eAA5G,CA1FU;;AAAA;AAAA,+CAgGT;AACLiC,gBAAAA,SAAS,EAAED,aAAa,CAACC,SADpB;AAEL5B,gBAAAA,EAAE,EAAFA,EAFK;AAGLL,gBAAAA,IAAI,EAAJA;AAHK,eAhGS;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAJH;;AAAA;AAAA;AAAA;AAAA;AAAA,CAAjB;;eA4Ge,kBAACoC,IAAD,EAAwB;AACrC,MAAMC,CAAC,GAAGvD,QAAQ,CAACsD,IAAD,CAAlB;AAEA,SAAO,UAACE,MAAD,EAAyBC,EAAzB,EAAwG;AAC7G,QAAMC,OAAO,GAAGH,CAAC,CAACC,MAAD,CAAjB;;AAEA,QAAI,OAAOC,EAAP,KAAc,UAAlB,EAA8B;AAC5BC,MAAAA,OAAO,CAACC,IAAR,CAAa,UAAC/D,MAAD;AAAA,eAAY6D,EAAE,CAAC,IAAD,EAAO7D,MAAP,CAAd;AAAA,OAAb,WAAiD,UAACgE,KAAD;AAAA,eAAWH,EAAE,CAACG,KAAD,EAAS,IAAT,CAAb;AAAA,OAAjD;AAEA,aAAOF,OAAP;AACD,KAJD,MAIO;AACL,aAAOA,OAAP;AACD;AACF,GAVD;AAWD,C","sourcesContent":["/** @flow */\n\nimport { PubNubError, createValidationError } from '../../components/endpoint';\nimport type {\n SendFileParams,\n SendFileResult,\n GenerateUploadUrlParams,\n GenerateUploadUrlResult,\n PublishFileParams,\n PublishFileResult,\n} from './types';\n\nimport type { Modules } from '../endpoint';\n\ntype Dependencies = {|\n generateUploadUrl: (params: GenerateUploadUrlParams) => Promise,\n publishFile: (params: PublishFileParams) => Promise,\n modules: Modules,\n|};\n\nconst getErrorFromResponse = (response) => new Promise((resolve) => {\n let result = '';\n\n response.on('data', (data) => {\n result += data.toString('utf8');\n });\n\n response.on('end', () => {\n resolve(result);\n });\n});\n\nconst sendFile = ({\n generateUploadUrl,\n publishFile,\n modules: { PubNubFile, config, cryptography, networking },\n}: Dependencies) => async ({\n channel,\n file: input,\n message,\n cipherKey,\n meta,\n ttl,\n storeInHistory,\n}: SendFileParams): Promise => {\n if (!channel) {\n throw new PubNubError(\n 'Validation failed, check status for details',\n createValidationError(\"channel can't be empty\")\n );\n }\n\n if (!input) {\n throw new PubNubError('Validation failed, check status for details', createValidationError(\"file can't be empty\"));\n }\n\n let file = PubNubFile.create(input);\n\n const {\n file_upload_request: { url, form_fields: formFields },\n data: { id, name },\n } = await generateUploadUrl({ channel, name: file.name });\n\n if (PubNubFile.supportsEncryptFile && (cipherKey ?? config.cipherKey)) {\n file = await cryptography.encryptFile(cipherKey ?? config.cipherKey, file, PubNubFile);\n }\n\n let formFieldsWithMimeType = formFields;\n\n if (file.mimeType) {\n formFieldsWithMimeType = formFields.map((entry) => {\n if (entry.key === 'Content-Type') return { key: entry.key, value: file.mimeType };\n else return entry;\n });\n }\n\n let result;\n\n try {\n if (PubNubFile.supportsFileUri && input.uri) {\n result = await networking.POSTFILE(url, formFieldsWithMimeType, await file.toFileUri());\n } else if (PubNubFile.supportsFile) {\n result = await networking.POSTFILE(url, formFieldsWithMimeType, await file.toFile());\n } else if (PubNubFile.supportsBuffer) {\n result = await networking.POSTFILE(url, formFieldsWithMimeType, await file.toBuffer());\n } else if (PubNubFile.supportsBlob) {\n result = await networking.POSTFILE(url, formFieldsWithMimeType, await file.toBlob());\n } else {\n throw new Error('Unsupported environment');\n }\n } catch (e) {\n const errorBody = await getErrorFromResponse(e.response);\n\n const reason = /(.*)<\\/Message>/gi.exec(errorBody);\n\n throw new PubNubError(reason ? `Upload to bucket failed: ${reason[1]}` : 'Upload to bucket failed.', e);\n }\n\n if (result.status !== 204) {\n throw new PubNubError('Upload to bucket was unsuccessful', result);\n }\n\n let retries = config.fileUploadPublishRetryLimit;\n let wasSuccessful = false;\n\n let publishResult = { timetoken: '0' };\n\n do {\n try {\n publishResult = await publishFile({\n channel,\n message,\n fileId: id,\n fileName: name,\n meta,\n storeInHistory,\n ttl,\n });\n\n wasSuccessful = true;\n } catch (e) {\n retries -= 1;\n }\n } while (!wasSuccessful && retries > 0);\n\n if (!wasSuccessful) {\n throw new PubNubError('Publish failed. You may want to execute that operation manually using pubnub.publishFile', {\n channel,\n id,\n name,\n });\n } else {\n return {\n timetoken: publishResult.timetoken,\n id,\n name,\n };\n }\n};\n\nexport default (deps: Dependencies) => {\n const f = sendFile(deps);\n\n return (params: SendFileParams, cb?: (error: any, params: SendFileResult) => void): Promise => {\n const resultP = f(params);\n\n if (typeof cb === 'function') {\n resultP.then((result) => cb(null, result)).catch((error) => cb(error, (null: any)));\n\n return resultP;\n } else {\n return resultP;\n }\n };\n};\n"],"file":"send_file.js"} \ No newline at end of file diff --git a/lib/core/endpoints/history/delete_messages.js b/lib/core/endpoints/history/delete_messages.js index c7d571b84..c2fe94ba7 100644 --- a/lib/core/endpoints/history/delete_messages.js +++ b/lib/core/endpoints/history/delete_messages.js @@ -6,13 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/history/delete_messages.js.map b/lib/core/endpoints/history/delete_messages.js.map index 264987c66..a18611fcc 100644 --- a/lib/core/endpoints/history/delete_messages.js.map +++ b/lib/core/endpoints/history/delete_messages.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/history/delete_messages.js"],"names":["getOperation","operationConstants","PNDeleteMessagesOperation","validateParams","modules","incomingParams","channel","config","subscribeKey","useDelete","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","start","end","outgoingParams","handleResponse","serverResponse","payload"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,yBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAuF;AAAA,MACtFC,OADsF,GAC1ED,cAD0E,CACtFC,OADsF;AAAA,MAEtFC,MAFsF,GAE3EH,OAF2E,CAEtFG,MAFsF;AAI5F,MAAI,CAACD,OAAL,EAAc,OAAO,iBAAP;AACd,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,SAAT,GAAqB;AAC1B,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,CAAgBN,OAAhB,EAAwCC,cAAxC,EAAuF;AAAA,MACtFC,OADsF,GAC1ED,cAD0E,CACtFC,OADsF;AAAA,MAEtFC,MAFsF,GAE3EH,OAF2E,CAEtFG,MAFsF;AAI5F,uCAA8BA,MAAM,CAACC,YAArC,sBAA6DG,kBAAMC,YAAN,CAAmBN,OAAnB,CAA7D;AACD;;AAEM,SAASO,iBAAT,OAA+D;AAAA,MAAlCN,MAAkC,QAAlCA,MAAkC;AACpE,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBZ,OAAvB,EAA+CC,cAA/C,EAA8F;AAAA,MAC3FY,KAD2F,GAC5EZ,cAD4E,CAC3FY,KAD2F;AAAA,MACpFC,GADoF,GAC5Eb,cAD4E,CACpFa,GADoF;AAGnG,MAAIC,cAAsB,GAAG,EAA7B;AAEA,MAAIF,KAAJ,EAAWE,cAAc,CAACF,KAAf,GAAuBA,KAAvB;AACX,MAAIC,GAAJ,EAASC,cAAc,CAACD,GAAf,GAAqBA,GAArB;AAET,SAAOC,cAAP;AACD;;AAEM,SAASC,cAAT,CAAwBhB,OAAxB,EAAgDiB,cAAhD,EAAyF;AAC9F,SAAOA,cAAc,CAACC,OAAtB;AACD","sourcesContent":["/* @flow */\n\nimport { FetchHistoryArguments, HistoryResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNDeleteMessagesOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: FetchHistoryArguments) {\n let { channel } = incomingParams;\n let { config } = modules;\n\n if (!channel) return 'Missing channel';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function useDelete() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: FetchHistoryArguments): string {\n let { channel } = incomingParams;\n let { config } = modules;\n\n return `/v3/history/sub-key/${config.subscribeKey}/channel/${utils.encodeString(channel)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): boolean {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: FetchHistoryArguments): Object {\n const { start, end } = incomingParams;\n\n let outgoingParams: Object = {};\n\n if (start) outgoingParams.start = start;\n if (end) outgoingParams.end = end;\n\n return outgoingParams;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): HistoryResponse {\n return serverResponse.payload;\n}\n"],"file":"delete_messages.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/history/delete_messages.js"],"names":["getOperation","operationConstants","PNDeleteMessagesOperation","validateParams","modules","incomingParams","channel","config","subscribeKey","useDelete","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","start","end","outgoingParams","handleResponse","serverResponse","payload"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,yBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAuF;AAC5F,MAAMC,OAAN,GAAkBD,cAAlB,CAAMC,OAAN;AACA,MAAMC,MAAN,GAAiBH,OAAjB,CAAMG,MAAN;AAEA,MAAI,CAACD,OAAL,EAAc,OAAO,iBAAP;AACd,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,SAAT,GAAqB;AAC1B,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,CAAgBN,OAAhB,EAAwCC,cAAxC,EAAuF;AAC5F,MAAMC,OAAN,GAAkBD,cAAlB,CAAMC,OAAN;AACA,MAAMC,MAAN,GAAiBH,OAAjB,CAAMG,MAAN;AAEA,uCAA8BA,MAAM,CAACC,YAArC,sBAA6DG,kBAAMC,YAAN,CAAmBN,OAAnB,CAA7D;AACD;;AAEM,SAASO,iBAAT,OAA+D;AAAA,MAAlCN,MAAkC,QAAlCA,MAAkC;AACpE,SAAOA,MAAM,CAACO,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBZ,OAAvB,EAA+CC,cAA/C,EAA8F;AACnG,MAAQY,KAAR,GAAuBZ,cAAvB,CAAQY,KAAR;AAAA,MAAeC,GAAf,GAAuBb,cAAvB,CAAea,GAAf;AAEA,MAAIC,cAAsB,GAAG,EAA7B;AAEA,MAAIF,KAAJ,EAAWE,cAAc,CAACF,KAAf,GAAuBA,KAAvB;AACX,MAAIC,GAAJ,EAASC,cAAc,CAACD,GAAf,GAAqBA,GAArB;AAET,SAAOC,cAAP;AACD;;AAEM,SAASC,cAAT,CAAwBhB,OAAxB,EAAgDiB,cAAhD,EAAyF;AAC9F,SAAOA,cAAc,CAACC,OAAtB;AACD","sourcesContent":["/* @flow */\n\nimport { FetchHistoryArguments, HistoryResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNDeleteMessagesOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: FetchHistoryArguments) {\n let { channel } = incomingParams;\n let { config } = modules;\n\n if (!channel) return 'Missing channel';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function useDelete() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: FetchHistoryArguments): string {\n let { channel } = incomingParams;\n let { config } = modules;\n\n return `/v3/history/sub-key/${config.subscribeKey}/channel/${utils.encodeString(channel)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): boolean {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: FetchHistoryArguments): Object {\n const { start, end } = incomingParams;\n\n let outgoingParams: Object = {};\n\n if (start) outgoingParams.start = start;\n if (end) outgoingParams.end = end;\n\n return outgoingParams;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): HistoryResponse {\n return serverResponse.payload;\n}\n"],"file":"delete_messages.js"} \ No newline at end of file diff --git a/lib/core/endpoints/history/get_history.js b/lib/core/endpoints/history/get_history.js index 1b84607ae..dd55f50f1 100644 --- a/lib/core/endpoints/history/get_history.js +++ b/lib/core/endpoints/history/get_history.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/history/get_history.js.map b/lib/core/endpoints/history/get_history.js.map index 6e2fc975c..383af1df9 100644 --- a/lib/core/endpoints/history/get_history.js.map +++ b/lib/core/endpoints/history/get_history.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/history/get_history.js"],"names":["__processMessage","modules","message","config","crypto","cipherKey","decrypt","e","getOperation","operationConstants","PNHistoryOperation","validateParams","incomingParams","channel","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","start","end","reverse","count","stringifiedTimeToken","includeMeta","outgoingParams","include_token","string_message_token","toString","include_meta","handleResponse","serverResponse","response","messages","startTimeToken","endTimeToken","Array","isArray","forEach","serverHistoryItem","item","timetoken","entry","meta","push"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n FetchHistoryArguments,\n HistoryResponse,\n HistoryItem,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction __processMessage(modules, message: Object): Object | null {\n let { config, crypto } = modules;\n if (!config.cipherKey) return message;\n\n try {\n return crypto.decrypt(message);\n } catch (e) {\n return message;\n }\n}\n\nexport function getOperation(): string {\n return operationConstants.PNHistoryOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: FetchHistoryArguments\n) {\n let { channel } = incomingParams;\n let { config } = modules;\n\n if (!channel) return 'Missing channel';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: FetchHistoryArguments\n): string {\n let { channel } = incomingParams;\n let { config } = modules;\n return `/v2/history/sub-key/${\n config.subscribeKey\n }/channel/${utils.encodeString(channel)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): boolean {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: FetchHistoryArguments\n): Object {\n const {\n start,\n end,\n reverse,\n count = 100,\n stringifiedTimeToken = false,\n includeMeta = false,\n } = incomingParams;\n let outgoingParams: Object = {\n include_token: 'true',\n };\n\n outgoingParams.count = count;\n if (start) outgoingParams.start = start;\n if (end) outgoingParams.end = end;\n if (stringifiedTimeToken) outgoingParams.string_message_token = 'true';\n if (reverse != null) outgoingParams.reverse = reverse.toString();\n if (includeMeta) outgoingParams.include_meta = 'true';\n\n return outgoingParams;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: FetchHistoryArguments\n): HistoryResponse {\n const response: HistoryResponse = {\n messages: [],\n startTimeToken: serverResponse[1],\n endTimeToken: serverResponse[2],\n };\n\n if (Array.isArray(serverResponse[0])) {\n serverResponse[0].forEach((serverHistoryItem) => {\n const item: HistoryItem = {\n timetoken: serverHistoryItem.timetoken,\n entry: __processMessage(modules, serverHistoryItem.message),\n };\n\n if (serverHistoryItem.meta) {\n item.meta = serverHistoryItem.meta;\n }\n\n response.messages.push(item);\n });\n }\n\n return response;\n}\n"],"file":"get_history.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/history/get_history.js"],"names":["__processMessage","modules","message","config","crypto","cipherKey","decrypt","e","getOperation","operationConstants","PNHistoryOperation","validateParams","incomingParams","channel","subscribeKey","getURL","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","start","end","reverse","count","stringifiedTimeToken","includeMeta","outgoingParams","include_token","string_message_token","toString","include_meta","handleResponse","serverResponse","response","messages","startTimeToken","endTimeToken","Array","isArray","forEach","serverHistoryItem","item","timetoken","entry","meta","push"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n FetchHistoryArguments,\n HistoryResponse,\n HistoryItem,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction __processMessage(modules, message: Object): Object | null {\n let { config, crypto } = modules;\n if (!config.cipherKey) return message;\n\n try {\n return crypto.decrypt(message);\n } catch (e) {\n return message;\n }\n}\n\nexport function getOperation(): string {\n return operationConstants.PNHistoryOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: FetchHistoryArguments\n) {\n let { channel } = incomingParams;\n let { config } = modules;\n\n if (!channel) return 'Missing channel';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: FetchHistoryArguments\n): string {\n let { channel } = incomingParams;\n let { config } = modules;\n return `/v2/history/sub-key/${\n config.subscribeKey\n }/channel/${utils.encodeString(channel)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): boolean {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: FetchHistoryArguments\n): Object {\n const {\n start,\n end,\n reverse,\n count = 100,\n stringifiedTimeToken = false,\n includeMeta = false,\n } = incomingParams;\n let outgoingParams: Object = {\n include_token: 'true',\n };\n\n outgoingParams.count = count;\n if (start) outgoingParams.start = start;\n if (end) outgoingParams.end = end;\n if (stringifiedTimeToken) outgoingParams.string_message_token = 'true';\n if (reverse != null) outgoingParams.reverse = reverse.toString();\n if (includeMeta) outgoingParams.include_meta = 'true';\n\n return outgoingParams;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: FetchHistoryArguments\n): HistoryResponse {\n const response: HistoryResponse = {\n messages: [],\n startTimeToken: serverResponse[1],\n endTimeToken: serverResponse[2],\n };\n\n if (Array.isArray(serverResponse[0])) {\n serverResponse[0].forEach((serverHistoryItem) => {\n const item: HistoryItem = {\n timetoken: serverHistoryItem.timetoken,\n entry: __processMessage(modules, serverHistoryItem.message),\n };\n\n if (serverHistoryItem.meta) {\n item.meta = serverHistoryItem.meta;\n }\n\n response.messages.push(item);\n });\n }\n\n return response;\n}\n"],"file":"get_history.js"} \ No newline at end of file diff --git a/lib/core/endpoints/history/message_counts.js b/lib/core/endpoints/history/message_counts.js index 2eaf3b753..95c58b93b 100644 --- a/lib/core/endpoints/history/message_counts.js +++ b/lib/core/endpoints/history/message_counts.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); diff --git a/lib/core/endpoints/history/message_counts.js.map b/lib/core/endpoints/history/message_counts.js.map index afb5b9274..87d08fe04 100644 --- a/lib/core/endpoints/history/message_counts.js.map +++ b/lib/core/endpoints/history/message_counts.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/history/message_counts.js"],"names":["getOperation","operationConstants","PNMessageCounts","validateParams","modules","incomingParams","channels","timetoken","channelTimetokens","config","length","subscribeKey","getURL","stringifiedChannels","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","outgoingParams","tt","channelsTimetoken","handleResponse","serverResponse"],"mappings":";;;;;;;;;;;;;;;;;AAEA;;AACA;;AAQO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,eAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAyF;AAAA,MACxFC,QADwF,GAC7CD,cAD6C,CACxFC,QADwF;AAAA,MAC9EC,SAD8E,GAC7CF,cAD6C,CAC9EE,SAD8E;AAAA,MACnEC,iBADmE,GAC7CH,cAD6C,CACnEG,iBADmE;AAAA,MAExFC,MAFwF,GAE7EL,OAF6E,CAExFK,MAFwF;AAI9F,MAAI,CAACH,QAAL,EAAe,OAAO,iBAAP;AACf,MAAIC,SAAS,IAAIC,iBAAjB,EAAoC,OAAO,2DAAP;AACpC,MAAKD,SAAS,IAAIC,iBAAd,IAAqCA,iBAAiB,CAACE,MAAlB,GAA2B,CAAhE,IAAuEJ,QAAQ,CAACI,MAAT,KAAoBF,iBAAiB,CAACE,MAAjH,EAA0H,OAAO,uDAAP;AAC1H,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBR,OAAhB,EAAwCC,cAAxC,EAAyF;AAAA,MACxFC,QADwF,GAC3ED,cAD2E,CACxFC,QADwF;AAAA,MAExFG,MAFwF,GAE7EL,OAF6E,CAExFK,MAFwF;AAI9F,MAAII,mBAAmB,GAAGP,QAAQ,CAACQ,IAAT,CAAc,GAAd,CAA1B;AAEA,uCAA8BL,MAAM,CAACE,YAArC,6BAAoEI,kBAAMC,YAAN,CAAmBH,mBAAnB,CAApE;AACD;;AAEM,SAASI,iBAAT,OAA+D;AAAA,MAAlCR,MAAkC,QAAlCA,MAAkC;AACpE,SAAOA,MAAM,CAACS,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBhB,OAAvB,EAA+CC,cAA/C,EAAgG;AAAA,MAC7FE,SAD6F,GAC5DF,cAD4D,CAC7FE,SAD6F;AAAA,MAClFC,iBADkF,GAC5DH,cAD4D,CAClFG,iBADkF;AAErG,MAAIa,cAAsB,GAAG,EAA7B;;AAEA,MAAKb,iBAAD,IAAwBA,iBAAiB,CAACE,MAAlB,KAA6B,CAAzD,EAA6D;AAAA,6DAChDF,iBADgD;AAAA,QACtDc,EADsD;;AAE3DD,IAAAA,cAAc,CAACd,SAAf,GAA2Be,EAA3B;AACD,GAHD,MAGO,IAAId,iBAAJ,EAAuB;AAC5Ba,IAAAA,cAAc,CAACE,iBAAf,GAAmCf,iBAAiB,CAACM,IAAlB,CAAuB,GAAvB,CAAnC;AACD,GAFM,MAEA,IAAIP,SAAJ,EAAe;AACpBc,IAAAA,cAAc,CAACd,SAAf,GAA2BA,SAA3B;AACD;;AAED,SAAOc,cAAP;AACD;;AAEM,SAASG,cAAT,CAAwBpB,OAAxB,EAAgDqB,cAAhD,EAAkH;AACvH,SAAO;AAAEnB,IAAAA,QAAQ,EAAEmB,cAAc,CAACnB;AAA3B,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\nimport type {\n MessageCounterArguments,\n MessageCountersResponse,\n ModulesInject\n} from '../../flow_interfaces';\n\n\nexport function getOperation(): string {\n return operationConstants.PNMessageCounts;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: MessageCounterArguments) {\n let { channels, timetoken, channelTimetokens } = incomingParams;\n let { config } = modules;\n\n if (!channels) return 'Missing channel';\n if (timetoken && channelTimetokens) return 'timetoken and channelTimetokens are incompatible together';\n if ((timetoken && channelTimetokens) && (channelTimetokens.length > 1) && (channels.length !== channelTimetokens.length)) return 'Length of channelTimetokens and channels do not match';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: MessageCounterArguments): string {\n let { channels } = incomingParams;\n let { config } = modules;\n\n let stringifiedChannels = channels.join(',');\n\n return `/v3/history/sub-key/${config.subscribeKey}/message-counts/${utils.encodeString(stringifiedChannels)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): boolean {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: MessageCounterArguments): Object {\n const { timetoken, channelTimetokens } = incomingParams;\n let outgoingParams: Object = {};\n\n if ((channelTimetokens) && (channelTimetokens.length === 1)) {\n let [tt] = channelTimetokens;\n outgoingParams.timetoken = tt;\n } else if (channelTimetokens) {\n outgoingParams.channelsTimetoken = channelTimetokens.join(',');\n } else if (timetoken) {\n outgoingParams.timetoken = timetoken;\n }\n\n return outgoingParams;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: MessageCounterArguments): MessageCountersResponse {\n return { channels: serverResponse.channels };\n}\n"],"file":"message_counts.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/history/message_counts.js"],"names":["getOperation","operationConstants","PNMessageCounts","validateParams","modules","incomingParams","channels","timetoken","channelTimetokens","config","length","subscribeKey","getURL","stringifiedChannels","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","outgoingParams","tt","channelsTimetoken","handleResponse","serverResponse"],"mappings":";;;;;;;;;;;;;;;;;AAEA;;AACA;;AAQO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,eAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAyF;AAC9F,MAAMC,QAAN,GAAiDD,cAAjD,CAAMC,QAAN;AAAA,MAAgBC,SAAhB,GAAiDF,cAAjD,CAAgBE,SAAhB;AAAA,MAA2BC,iBAA3B,GAAiDH,cAAjD,CAA2BG,iBAA3B;AACA,MAAMC,MAAN,GAAiBL,OAAjB,CAAMK,MAAN;AAEA,MAAI,CAACH,QAAL,EAAe,OAAO,iBAAP;AACf,MAAIC,SAAS,IAAIC,iBAAjB,EAAoC,OAAO,2DAAP;AACpC,MAAKD,SAAS,IAAIC,iBAAd,IAAqCA,iBAAiB,CAACE,MAAlB,GAA2B,CAAhE,IAAuEJ,QAAQ,CAACI,MAAT,KAAoBF,iBAAiB,CAACE,MAAjH,EAA0H,OAAO,uDAAP;AAC1H,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBR,OAAhB,EAAwCC,cAAxC,EAAyF;AAC9F,MAAMC,QAAN,GAAmBD,cAAnB,CAAMC,QAAN;AACA,MAAMG,MAAN,GAAiBL,OAAjB,CAAMK,MAAN;AAEA,MAAII,mBAAmB,GAAGP,QAAQ,CAACQ,IAAT,CAAc,GAAd,CAA1B;AAEA,uCAA8BL,MAAM,CAACE,YAArC,6BAAoEI,kBAAMC,YAAN,CAAmBH,mBAAnB,CAApE;AACD;;AAEM,SAASI,iBAAT,OAA+D;AAAA,MAAlCR,MAAkC,QAAlCA,MAAkC;AACpE,SAAOA,MAAM,CAACS,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBhB,OAAvB,EAA+CC,cAA/C,EAAgG;AACrG,MAAQE,SAAR,GAAyCF,cAAzC,CAAQE,SAAR;AAAA,MAAmBC,iBAAnB,GAAyCH,cAAzC,CAAmBG,iBAAnB;AACA,MAAIa,cAAsB,GAAG,EAA7B;;AAEA,MAAKb,iBAAD,IAAwBA,iBAAiB,CAACE,MAAlB,KAA6B,CAAzD,EAA6D;AAC3D,6DAAWF,iBAAX;AAAA,QAAKc,EAAL;;AACAD,IAAAA,cAAc,CAACd,SAAf,GAA2Be,EAA3B;AACD,GAHD,MAGO,IAAId,iBAAJ,EAAuB;AAC5Ba,IAAAA,cAAc,CAACE,iBAAf,GAAmCf,iBAAiB,CAACM,IAAlB,CAAuB,GAAvB,CAAnC;AACD,GAFM,MAEA,IAAIP,SAAJ,EAAe;AACpBc,IAAAA,cAAc,CAACd,SAAf,GAA2BA,SAA3B;AACD;;AAED,SAAOc,cAAP;AACD;;AAEM,SAASG,cAAT,CAAwBpB,OAAxB,EAAgDqB,cAAhD,EAAkH;AACvH,SAAO;AAAEnB,IAAAA,QAAQ,EAAEmB,cAAc,CAACnB;AAA3B,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\nimport type {\n MessageCounterArguments,\n MessageCountersResponse,\n ModulesInject\n} from '../../flow_interfaces';\n\n\nexport function getOperation(): string {\n return operationConstants.PNMessageCounts;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: MessageCounterArguments) {\n let { channels, timetoken, channelTimetokens } = incomingParams;\n let { config } = modules;\n\n if (!channels) return 'Missing channel';\n if (timetoken && channelTimetokens) return 'timetoken and channelTimetokens are incompatible together';\n if ((timetoken && channelTimetokens) && (channelTimetokens.length > 1) && (channels.length !== channelTimetokens.length)) return 'Length of channelTimetokens and channels do not match';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: MessageCounterArguments): string {\n let { channels } = incomingParams;\n let { config } = modules;\n\n let stringifiedChannels = channels.join(',');\n\n return `/v3/history/sub-key/${config.subscribeKey}/message-counts/${utils.encodeString(stringifiedChannels)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): boolean {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: MessageCounterArguments): Object {\n const { timetoken, channelTimetokens } = incomingParams;\n let outgoingParams: Object = {};\n\n if ((channelTimetokens) && (channelTimetokens.length === 1)) {\n let [tt] = channelTimetokens;\n outgoingParams.timetoken = tt;\n } else if (channelTimetokens) {\n outgoingParams.channelsTimetoken = channelTimetokens.join(',');\n } else if (timetoken) {\n outgoingParams.timetoken = timetoken;\n }\n\n return outgoingParams;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: MessageCounterArguments): MessageCountersResponse {\n return { channels: serverResponse.channels };\n}\n"],"file":"message_counts.js"} \ No newline at end of file diff --git a/lib/core/endpoints/memberships/add_members.js b/lib/core/endpoints/memberships/add_members.js index f7b7408ad..f2159faf1 100644 --- a/lib/core/endpoints/memberships/add_members.js +++ b/lib/core/endpoints/memberships/add_members.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -79,11 +78,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/memberships/add_members.js.map b/lib/core/endpoints/memberships/add_members.js.map index 487452c0e..e85d3e2b1 100644 --- a/lib/core/endpoints/memberships/add_members.js.map +++ b/lib/core/endpoints/memberships/add_members.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/memberships/add_members.js"],"names":["prepareMessagePayload","modules","incomingParams","users","payload","length","add","forEach","addMember","currentAdd","id","custom","push","getOperation","operationConstants","PNUpdateMembersOperation","validateParams","spaceId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n AddMembers,\n MembersInput,\n MembersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { users } = incomingParams;\n let payload = {};\n\n if (users && users.length > 0) {\n payload.add = [];\n\n users.forEach((addMember) => {\n let currentAdd: AddMembers = { id: addMember.id };\n\n if (addMember.custom) {\n currentAdd.custom = addMember.custom;\n }\n\n payload.add.push(currentAdd);\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembersOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n) {\n let { spaceId, users } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n if (!users) return 'Missing users';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: MembersInput): string {\n let token =\n modules.tokenManager.getToken('space', incomingParams.spaceId) ||\n modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membersResponse: Object\n): MembersListResponse {\n return membersResponse;\n}\n"],"file":"add_members.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/memberships/add_members.js"],"names":["prepareMessagePayload","modules","incomingParams","users","payload","length","add","forEach","addMember","currentAdd","id","custom","push","getOperation","operationConstants","PNUpdateMembersOperation","validateParams","spaceId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n AddMembers,\n MembersInput,\n MembersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { users } = incomingParams;\n let payload = {};\n\n if (users && users.length > 0) {\n payload.add = [];\n\n users.forEach((addMember) => {\n let currentAdd: AddMembers = { id: addMember.id };\n\n if (addMember.custom) {\n currentAdd.custom = addMember.custom;\n }\n\n payload.add.push(currentAdd);\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembersOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n) {\n let { spaceId, users } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n if (!users) return 'Missing users';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membersResponse: Object\n): MembersListResponse {\n return membersResponse;\n}\n"],"file":"add_members.js"} \ No newline at end of file diff --git a/lib/core/endpoints/memberships/get_members.js b/lib/core/endpoints/memberships/get_members.js index b6dcd74d2..91b11ae3c 100644 --- a/lib/core/endpoints/memberships/get_members.js +++ b/lib/core/endpoints/memberships/get_members.js @@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -43,11 +42,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/memberships/get_members.js.map b/lib/core/endpoints/memberships/get_members.js.map index 12fb41bcf..ca1063f15 100644 --- a/lib/core/endpoints/memberships/get_members.js.map +++ b/lib/core/endpoints/memberships/get_members.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/memberships/get_members.js"],"names":["getOperation","operationConstants","PNGetMembersOperation","validateParams","modules","incomingParams","spaceId","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","limit","page","filter","params","includes","totalCount","count","customFields","push","userFields","customUserFields","includesString","join","length","next","start","prev","end","handleResponse","membersResponse"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,qBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAA8E;AAAA,MAC7EC,OAD6E,GACjED,cADiE,CAC7EC,OAD6E;AAGnF,MAAI,CAACA,OAAL,EAAc,OAAO,iBAAP;AACf;;AAEM,SAASC,MAAT,CACLH,OADK,EAELC,cAFK,EAGG;AAAA,MACFG,MADE,GACSJ,OADT,CACFI,MADE;AAGR,+BAAsBA,MAAM,CAACC,YAA7B,qBAAoDC,kBAAMC,YAAN,CAAmBN,cAAc,CAACC,OAAlC,CAApD;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,YAAT,CAAsBX,OAAtB,EAA8CC,cAA9C,EAAoF;AACzF,MAAIW,KAAK,GACPZ,OAAO,CAACa,YAAR,CAAqBC,QAArB,CAA8B,OAA9B,EAAuCb,cAAc,CAACC,OAAtD,KACAF,OAAO,CAACa,YAAR,CAAqBC,QAArB,CAA8B,OAA9B,CAFF;AAIA,SAAOF,KAAP;AACD;;AAEM,SAASG,aAAT,CACLf,OADK,EAELC,cAFK,EAGG;AAAA,MACAe,OADA,GACiCf,cADjC,CACAe,OADA;AAAA,MACSC,KADT,GACiChB,cADjC,CACSgB,KADT;AAAA,MACgBC,IADhB,GACiCjB,cADjC,CACgBiB,IADhB;AAAA,MACsBC,MADtB,GACiClB,cADjC,CACsBkB,MADtB;AAER,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,KAAJ,EAAW;AACTG,IAAAA,MAAM,CAACH,KAAP,GAAeA,KAAf;AACD;;AAED,MAAID,OAAJ,EAAa;AACX,QAAIK,QAAQ,GAAG,EAAf;;AAEA,QAAIL,OAAO,CAACM,UAAZ,EAAwB;AACtBF,MAAAA,MAAM,CAACG,KAAP,GAAe,IAAf;AACD;;AAED,QAAIP,OAAO,CAACQ,YAAZ,EAA0B;AACxBH,MAAAA,QAAQ,CAACI,IAAT,CAAc,QAAd;AACD;;AAED,QAAIT,OAAO,CAACU,UAAZ,EAAwB;AACtBL,MAAAA,QAAQ,CAACI,IAAT,CAAc,MAAd;AACD;;AAED,QAAIT,OAAO,CAACW,gBAAZ,EAA8B;AAC5BN,MAAAA,QAAQ,CAACI,IAAT,CAAc,aAAd;AACD;;AAED,QAAIG,cAAc,GAAGP,QAAQ,CAACQ,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BV,MAAAA,MAAM,CAACJ,OAAP,GAAiBY,cAAjB;AACD;AACF;;AAED,MAAIV,IAAJ,EAAU;AACR,QAAIA,IAAI,CAACa,IAAT,EAAe;AACbX,MAAAA,MAAM,CAACY,KAAP,GAAed,IAAI,CAACa,IAApB;AACD;;AACD,QAAIb,IAAI,CAACe,IAAT,EAAe;AACbb,MAAAA,MAAM,CAACc,GAAP,GAAahB,IAAI,CAACe,IAAlB;AACD;AACF;;AAED,MAAId,MAAJ,EAAY;AACVC,IAAAA,MAAM,CAACD,MAAP,GAAgBA,MAAhB;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASe,cAAT,CACLnC,OADK,EAELoC,eAFK,EAGgB;AACrB,SAAOA,eAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n MembersInput,\n MembersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetMembersOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: MembersInput) {\n let { spaceId } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: MembersInput): string {\n let token =\n modules.tokenManager.getToken('space', incomingParams.spaceId) ||\n modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n const { include, limit, page, filter } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.userFields) {\n includes.push('user');\n }\n\n if (include.customUserFields) {\n includes.push('user.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n if (filter) {\n params.filter = filter;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membersResponse: Object\n): MembersListResponse {\n return membersResponse;\n}\n"],"file":"get_members.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/memberships/get_members.js"],"names":["getOperation","operationConstants","PNGetMembersOperation","validateParams","modules","incomingParams","spaceId","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","limit","page","filter","params","includes","totalCount","count","customFields","push","userFields","customUserFields","includesString","join","length","next","start","prev","end","handleResponse","membersResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,qBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAA8E;AACnF,MAAMC,OAAN,GAAkBD,cAAlB,CAAMC,OAAN;AAEA,MAAI,CAACA,OAAL,EAAc,OAAO,iBAAP;AACf;;AAEM,SAASC,MAAT,CACLH,OADK,EAELC,cAFK,EAGG;AACR,MAAMG,MAAN,GAAiBJ,OAAjB,CAAMI,MAAN;AAEA,+BAAsBA,MAAM,CAACC,YAA7B,qBAAoDC,kBAAMC,YAAN,CAAmBN,cAAc,CAACC,OAAlC,CAApD;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLX,OADK,EAELC,cAFK,EAGG;AACR,MAAQW,OAAR,GAAyCX,cAAzC,CAAQW,OAAR;AAAA,MAAiBC,KAAjB,GAAyCZ,cAAzC,CAAiBY,KAAjB;AAAA,MAAwBC,IAAxB,GAAyCb,cAAzC,CAAwBa,IAAxB;AAAA,MAA8BC,MAA9B,GAAyCd,cAAzC,CAA8Bc,MAA9B;AACA,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,KAAJ,EAAW;AACTG,IAAAA,MAAM,CAACH,KAAP,GAAeA,KAAf;AACD;;AAED,MAAID,OAAJ,EAAa;AACX,QAAIK,QAAQ,GAAG,EAAf;;AAEA,QAAIL,OAAO,CAACM,UAAZ,EAAwB;AACtBF,MAAAA,MAAM,CAACG,KAAP,GAAe,IAAf;AACD;;AAED,QAAIP,OAAO,CAACQ,YAAZ,EAA0B;AACxBH,MAAAA,QAAQ,CAACI,IAAT,CAAc,QAAd;AACD;;AAED,QAAIT,OAAO,CAACU,UAAZ,EAAwB;AACtBL,MAAAA,QAAQ,CAACI,IAAT,CAAc,MAAd;AACD;;AAED,QAAIT,OAAO,CAACW,gBAAZ,EAA8B;AAC5BN,MAAAA,QAAQ,CAACI,IAAT,CAAc,aAAd;AACD;;AAED,QAAIG,cAAc,GAAGP,QAAQ,CAACQ,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BV,MAAAA,MAAM,CAACJ,OAAP,GAAiBY,cAAjB;AACD;AACF;;AAED,MAAIV,IAAJ,EAAU;AACR,QAAIA,IAAI,CAACa,IAAT,EAAe;AACbX,MAAAA,MAAM,CAACY,KAAP,GAAed,IAAI,CAACa,IAApB;AACD;;AACD,QAAIb,IAAI,CAACe,IAAT,EAAe;AACbb,MAAAA,MAAM,CAACc,GAAP,GAAahB,IAAI,CAACe,IAAlB;AACD;AACF;;AAED,MAAId,MAAJ,EAAY;AACVC,IAAAA,MAAM,CAACD,MAAP,GAAgBA,MAAhB;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASe,cAAT,CACL/B,OADK,EAELgC,eAFK,EAGgB;AACrB,SAAOA,eAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n MembersInput,\n MembersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetMembersOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: MembersInput) {\n let { spaceId } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n const { include, limit, page, filter } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.userFields) {\n includes.push('user');\n }\n\n if (include.customUserFields) {\n includes.push('user.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n if (filter) {\n params.filter = filter;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membersResponse: Object\n): MembersListResponse {\n return membersResponse;\n}\n"],"file":"get_members.js"} \ No newline at end of file diff --git a/lib/core/endpoints/memberships/get_memberships.js b/lib/core/endpoints/memberships/get_memberships.js index 402d56852..f4ce3ee6c 100644 --- a/lib/core/endpoints/memberships/get_memberships.js +++ b/lib/core/endpoints/memberships/get_memberships.js @@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -43,11 +42,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/memberships/get_memberships.js.map b/lib/core/endpoints/memberships/get_memberships.js.map index 8760b604c..cca312382 100644 --- a/lib/core/endpoints/memberships/get_memberships.js.map +++ b/lib/core/endpoints/memberships/get_memberships.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/memberships/get_memberships.js"],"names":["getOperation","operationConstants","PNGetMembershipsOperation","validateParams","modules","incomingParams","userId","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","limit","page","filter","params","includes","totalCount","count","customFields","push","spaceFields","customSpaceFields","includesString","join","length","next","start","prev","end","handleResponse","membershipsResponse"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,yBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AAAA,MACjFC,MADiF,GACtED,cADsE,CACjFC,MADiF;AAGvF,MAAI,CAACA,MAAL,EAAa,OAAO,gBAAP;AACd;;AAEM,SAASC,MAAT,CACLH,OADK,EAELC,cAFK,EAGG;AAAA,MACFG,MADE,GACSJ,OADT,CACFI,MADE;AAGR,+BAAsBA,MAAM,CAACC,YAA7B,oBAAmDC,kBAAMC,YAAN,CAAmBN,cAAc,CAACC,MAAlC,CAAnD;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,YAAT,CAAsBX,OAAtB,EAA8CC,cAA9C,EAAwF;AAC7F,MAAIW,KAAK,GACPZ,OAAO,CAACa,YAAR,CAAqBC,QAArB,CAA8B,MAA9B,EAAsCb,cAAc,CAACC,MAArD,KACAF,OAAO,CAACa,YAAR,CAAqBC,QAArB,CAA8B,MAA9B,CAFF;AAIA,SAAOF,KAAP;AACD;;AAEM,SAASG,aAAT,CACLf,OADK,EAELC,cAFK,EAGG;AAAA,MACAe,OADA,GACiCf,cADjC,CACAe,OADA;AAAA,MACSC,KADT,GACiChB,cADjC,CACSgB,KADT;AAAA,MACgBC,IADhB,GACiCjB,cADjC,CACgBiB,IADhB;AAAA,MACsBC,MADtB,GACiClB,cADjC,CACsBkB,MADtB;AAER,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,KAAJ,EAAW;AACTG,IAAAA,MAAM,CAACH,KAAP,GAAeA,KAAf;AACD;;AAED,MAAID,OAAJ,EAAa;AACX,QAAIK,QAAQ,GAAG,EAAf;;AAEA,QAAIL,OAAO,CAACM,UAAZ,EAAwB;AACtBF,MAAAA,MAAM,CAACG,KAAP,GAAe,IAAf;AACD;;AAED,QAAIP,OAAO,CAACQ,YAAZ,EAA0B;AACxBH,MAAAA,QAAQ,CAACI,IAAT,CAAc,QAAd;AACD;;AAED,QAAIT,OAAO,CAACU,WAAZ,EAAyB;AACvBL,MAAAA,QAAQ,CAACI,IAAT,CAAc,OAAd;AACD;;AAED,QAAIT,OAAO,CAACW,iBAAZ,EAA+B;AAC7BN,MAAAA,QAAQ,CAACI,IAAT,CAAc,cAAd;AACD;;AAED,QAAIG,cAAc,GAAGP,QAAQ,CAACQ,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BV,MAAAA,MAAM,CAACJ,OAAP,GAAiBY,cAAjB;AACD;AACF;;AAED,MAAIV,IAAJ,EAAU;AACR,QAAIA,IAAI,CAACa,IAAT,EAAe;AACbX,MAAAA,MAAM,CAACY,KAAP,GAAed,IAAI,CAACa,IAApB;AACD;;AACD,QAAIb,IAAI,CAACe,IAAT,EAAe;AACbb,MAAAA,MAAM,CAACc,GAAP,GAAahB,IAAI,CAACe,IAAlB;AACD;AACF;;AAED,MAAId,MAAJ,EAAY;AACVC,IAAAA,MAAM,CAACD,MAAP,GAAgBA,MAAhB;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASe,cAAT,CACLnC,OADK,EAELoC,mBAFK,EAGoB;AACzB,SAAOA,mBAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n MembershipsInput,\n MembershipsListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetMembershipsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: MembershipsInput) {\n let { userId } = incomingParams;\n\n if (!userId) return 'Missing userId';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: MembershipsInput): string {\n let token =\n modules.tokenManager.getToken('user', incomingParams.userId) ||\n modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n const { include, limit, page, filter } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n if (filter) {\n params.filter = filter;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membershipsResponse: Object\n): MembershipsListResponse {\n return membershipsResponse;\n}\n"],"file":"get_memberships.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/memberships/get_memberships.js"],"names":["getOperation","operationConstants","PNGetMembershipsOperation","validateParams","modules","incomingParams","userId","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","limit","page","filter","params","includes","totalCount","count","customFields","push","spaceFields","customSpaceFields","includesString","join","length","next","start","prev","end","handleResponse","membershipsResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,yBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AACvF,MAAMC,MAAN,GAAiBD,cAAjB,CAAMC,MAAN;AAEA,MAAI,CAACA,MAAL,EAAa,OAAO,gBAAP;AACd;;AAEM,SAASC,MAAT,CACLH,OADK,EAELC,cAFK,EAGG;AACR,MAAMG,MAAN,GAAiBJ,OAAjB,CAAMI,MAAN;AAEA,+BAAsBA,MAAM,CAACC,YAA7B,oBAAmDC,kBAAMC,YAAN,CAAmBN,cAAc,CAACC,MAAlC,CAAnD;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLX,OADK,EAELC,cAFK,EAGG;AACR,MAAQW,OAAR,GAAyCX,cAAzC,CAAQW,OAAR;AAAA,MAAiBC,KAAjB,GAAyCZ,cAAzC,CAAiBY,KAAjB;AAAA,MAAwBC,IAAxB,GAAyCb,cAAzC,CAAwBa,IAAxB;AAAA,MAA8BC,MAA9B,GAAyCd,cAAzC,CAA8Bc,MAA9B;AACA,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,KAAJ,EAAW;AACTG,IAAAA,MAAM,CAACH,KAAP,GAAeA,KAAf;AACD;;AAED,MAAID,OAAJ,EAAa;AACX,QAAIK,QAAQ,GAAG,EAAf;;AAEA,QAAIL,OAAO,CAACM,UAAZ,EAAwB;AACtBF,MAAAA,MAAM,CAACG,KAAP,GAAe,IAAf;AACD;;AAED,QAAIP,OAAO,CAACQ,YAAZ,EAA0B;AACxBH,MAAAA,QAAQ,CAACI,IAAT,CAAc,QAAd;AACD;;AAED,QAAIT,OAAO,CAACU,WAAZ,EAAyB;AACvBL,MAAAA,QAAQ,CAACI,IAAT,CAAc,OAAd;AACD;;AAED,QAAIT,OAAO,CAACW,iBAAZ,EAA+B;AAC7BN,MAAAA,QAAQ,CAACI,IAAT,CAAc,cAAd;AACD;;AAED,QAAIG,cAAc,GAAGP,QAAQ,CAACQ,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BV,MAAAA,MAAM,CAACJ,OAAP,GAAiBY,cAAjB;AACD;AACF;;AAED,MAAIV,IAAJ,EAAU;AACR,QAAIA,IAAI,CAACa,IAAT,EAAe;AACbX,MAAAA,MAAM,CAACY,KAAP,GAAed,IAAI,CAACa,IAApB;AACD;;AACD,QAAIb,IAAI,CAACe,IAAT,EAAe;AACbb,MAAAA,MAAM,CAACc,GAAP,GAAahB,IAAI,CAACe,IAAlB;AACD;AACF;;AAED,MAAId,MAAJ,EAAY;AACVC,IAAAA,MAAM,CAACD,MAAP,GAAgBA,MAAhB;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASe,cAAT,CACL/B,OADK,EAELgC,mBAFK,EAGoB;AACzB,SAAOA,mBAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n MembershipsInput,\n MembershipsListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetMembershipsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: MembershipsInput) {\n let { userId } = incomingParams;\n\n if (!userId) return 'Missing userId';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n const { include, limit, page, filter } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n if (filter) {\n params.filter = filter;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membershipsResponse: Object\n): MembershipsListResponse {\n return membershipsResponse;\n}\n"],"file":"get_memberships.js"} \ No newline at end of file diff --git a/lib/core/endpoints/memberships/join_spaces.js b/lib/core/endpoints/memberships/join_spaces.js index 672f10a47..b5a69ad9b 100644 --- a/lib/core/endpoints/memberships/join_spaces.js +++ b/lib/core/endpoints/memberships/join_spaces.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -79,11 +78,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/memberships/join_spaces.js.map b/lib/core/endpoints/memberships/join_spaces.js.map index 1135be7d3..23ae6155f 100644 --- a/lib/core/endpoints/memberships/join_spaces.js.map +++ b/lib/core/endpoints/memberships/join_spaces.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/memberships/join_spaces.js"],"names":["prepareMessagePayload","modules","incomingParams","spaces","payload","length","add","forEach","addMembership","currentAdd","id","custom","push","getOperation","operationConstants","PNUpdateMembershipsOperation","validateParams","userId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membershipsResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n AddMemberships,\n MembershipsInput,\n MembershipsListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { spaces } = incomingParams;\n let payload = {};\n\n if (spaces && spaces.length > 0) {\n payload.add = [];\n\n spaces.forEach((addMembership) => {\n let currentAdd: AddMemberships = { id: addMembership.id };\n\n if (addMembership.custom) {\n currentAdd.custom = addMembership.custom;\n }\n\n payload.add.push(currentAdd);\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembershipsOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n) {\n let { userId, spaces } = incomingParams;\n\n if (!userId) return 'Missing userId';\n if (!spaces) return 'Missing spaces';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: MembershipsInput): string {\n let token =\n modules.tokenManager.getToken('user', incomingParams.userId) ||\n modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membershipsResponse: Object\n): MembershipsListResponse {\n return membershipsResponse;\n}\n"],"file":"join_spaces.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/memberships/join_spaces.js"],"names":["prepareMessagePayload","modules","incomingParams","spaces","payload","length","add","forEach","addMembership","currentAdd","id","custom","push","getOperation","operationConstants","PNUpdateMembershipsOperation","validateParams","userId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membershipsResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n AddMemberships,\n MembershipsInput,\n MembershipsListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { spaces } = incomingParams;\n let payload = {};\n\n if (spaces && spaces.length > 0) {\n payload.add = [];\n\n spaces.forEach((addMembership) => {\n let currentAdd: AddMemberships = { id: addMembership.id };\n\n if (addMembership.custom) {\n currentAdd.custom = addMembership.custom;\n }\n\n payload.add.push(currentAdd);\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembershipsOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n) {\n let { userId, spaces } = incomingParams;\n\n if (!userId) return 'Missing userId';\n if (!spaces) return 'Missing spaces';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membershipsResponse: Object\n): MembershipsListResponse {\n return membershipsResponse;\n}\n"],"file":"join_spaces.js"} \ No newline at end of file diff --git a/lib/core/endpoints/memberships/leave_spaces.js b/lib/core/endpoints/memberships/leave_spaces.js index aafef332c..3e4c7d7f9 100644 --- a/lib/core/endpoints/memberships/leave_spaces.js +++ b/lib/core/endpoints/memberships/leave_spaces.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -73,11 +72,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/memberships/leave_spaces.js.map b/lib/core/endpoints/memberships/leave_spaces.js.map index 3cb74ea62..65b9f506d 100644 --- a/lib/core/endpoints/memberships/leave_spaces.js.map +++ b/lib/core/endpoints/memberships/leave_spaces.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/memberships/leave_spaces.js"],"names":["prepareMessagePayload","modules","incomingParams","spaces","payload","length","remove","forEach","removeMembershipId","push","id","getOperation","operationConstants","PNUpdateMembershipsOperation","validateParams","userId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membershipsResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n MembershipsInput,\n MembershipsListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { spaces } = incomingParams;\n let payload = {};\n\n if (spaces && spaces.length > 0) {\n payload.remove = [];\n\n spaces.forEach((removeMembershipId) => {\n payload.remove.push({ id: removeMembershipId });\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembershipsOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n) {\n let { userId, spaces } = incomingParams;\n\n if (!userId) return 'Missing userId';\n if (!spaces) return 'Missing spaces';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: MembershipsInput): string {\n let token =\n modules.tokenManager.getToken('user', incomingParams.userId) ||\n modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membershipsResponse: Object\n): MembershipsListResponse {\n return membershipsResponse;\n}\n"],"file":"leave_spaces.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/memberships/leave_spaces.js"],"names":["prepareMessagePayload","modules","incomingParams","spaces","payload","length","remove","forEach","removeMembershipId","push","id","getOperation","operationConstants","PNUpdateMembershipsOperation","validateParams","userId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membershipsResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n MembershipsInput,\n MembershipsListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { spaces } = incomingParams;\n let payload = {};\n\n if (spaces && spaces.length > 0) {\n payload.remove = [];\n\n spaces.forEach((removeMembershipId) => {\n payload.remove.push({ id: removeMembershipId });\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembershipsOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n) {\n let { userId, spaces } = incomingParams;\n\n if (!userId) return 'Missing userId';\n if (!spaces) return 'Missing spaces';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membershipsResponse: Object\n): MembershipsListResponse {\n return membershipsResponse;\n}\n"],"file":"leave_spaces.js"} \ No newline at end of file diff --git a/lib/core/endpoints/memberships/remove_members.js b/lib/core/endpoints/memberships/remove_members.js index fe4cc139f..d5050bbc9 100644 --- a/lib/core/endpoints/memberships/remove_members.js +++ b/lib/core/endpoints/memberships/remove_members.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -73,11 +72,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/memberships/remove_members.js.map b/lib/core/endpoints/memberships/remove_members.js.map index e2b7fcdcd..7d77837e2 100644 --- a/lib/core/endpoints/memberships/remove_members.js.map +++ b/lib/core/endpoints/memberships/remove_members.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/memberships/remove_members.js"],"names":["prepareMessagePayload","modules","incomingParams","users","payload","length","remove","forEach","removeMemberId","push","id","getOperation","operationConstants","PNUpdateMembersOperation","validateParams","spaceId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n MembersInput,\n MembersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { users } = incomingParams;\n let payload = {};\n\n if (users && users.length > 0) {\n payload.remove = [];\n\n users.forEach((removeMemberId) => {\n payload.remove.push({ id: removeMemberId });\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembersOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n) {\n let { spaceId, users } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n if (!users) return 'Missing users';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: MembersInput): string {\n let token =\n modules.tokenManager.getToken('space', incomingParams.spaceId) ||\n modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membersResponse: Object\n): MembersListResponse {\n return membersResponse;\n}\n"],"file":"remove_members.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/memberships/remove_members.js"],"names":["prepareMessagePayload","modules","incomingParams","users","payload","length","remove","forEach","removeMemberId","push","id","getOperation","operationConstants","PNUpdateMembersOperation","validateParams","spaceId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n MembersInput,\n MembersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { users } = incomingParams;\n let payload = {};\n\n if (users && users.length > 0) {\n payload.remove = [];\n\n users.forEach((removeMemberId) => {\n payload.remove.push({ id: removeMemberId });\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembersOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n) {\n let { spaceId, users } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n if (!users) return 'Missing users';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membersResponse: Object\n): MembersListResponse {\n return membersResponse;\n}\n"],"file":"remove_members.js"} \ No newline at end of file diff --git a/lib/core/endpoints/memberships/update_members.js b/lib/core/endpoints/memberships/update_members.js index 4b66191d9..9fbc1f1ac 100644 --- a/lib/core/endpoints/memberships/update_members.js +++ b/lib/core/endpoints/memberships/update_members.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -121,11 +120,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/memberships/update_members.js.map b/lib/core/endpoints/memberships/update_members.js.map index 823ee4272..71da78d65 100644 --- a/lib/core/endpoints/memberships/update_members.js.map +++ b/lib/core/endpoints/memberships/update_members.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/memberships/update_members.js"],"names":["prepareMessagePayload","modules","incomingParams","addMembers","updateMembers","removeMembers","users","payload","length","add","forEach","addMember","currentAdd","id","custom","push","update","updateMember","currentUpdate","remove","removeMemberId","getOperation","operationConstants","PNUpdateMembersOperation","validateParams","spaceId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n AddMembers,\n UpdateMembers,\n MembersInput,\n MembersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { addMembers, updateMembers, removeMembers, users } = incomingParams;\n let payload = {};\n\n if (addMembers && addMembers.length > 0) {\n payload.add = [];\n\n addMembers.forEach((addMember) => {\n let currentAdd: AddMembers = { id: addMember.id };\n\n if (addMember.custom) {\n currentAdd.custom = addMember.custom;\n }\n\n payload.add.push(currentAdd);\n });\n }\n\n if (updateMembers && updateMembers.length > 0) {\n payload.update = [];\n\n updateMembers.forEach((updateMember) => {\n let currentUpdate: UpdateMembers = { id: updateMember.id };\n\n if (updateMember.custom) {\n currentUpdate.custom = updateMember.custom;\n }\n\n payload.update.push(currentUpdate);\n });\n }\n\n // if users is present then it is an update\n if (users && users.length > 0) {\n payload.update = payload.update || [];\n\n users.forEach((updateMember) => {\n let currentUpdate: UpdateMembers = { id: updateMember.id };\n\n if (updateMember.custom) {\n currentUpdate.custom = updateMember.custom;\n }\n\n payload.update.push(currentUpdate);\n });\n }\n\n if (removeMembers && removeMembers.length > 0) {\n payload.remove = [];\n\n removeMembers.forEach((removeMemberId) => {\n payload.remove.push({ id: removeMemberId });\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembersOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n) {\n let { spaceId, users } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n if (!users) return 'Missing users';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: MembersInput): string {\n let token =\n modules.tokenManager.getToken('space', incomingParams.spaceId) ||\n modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membersResponse: Object\n): MembersListResponse {\n return membersResponse;\n}\n"],"file":"update_members.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/memberships/update_members.js"],"names":["prepareMessagePayload","modules","incomingParams","addMembers","updateMembers","removeMembers","users","payload","length","add","forEach","addMember","currentAdd","id","custom","push","update","updateMember","currentUpdate","remove","removeMemberId","getOperation","operationConstants","PNUpdateMembersOperation","validateParams","spaceId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n AddMembers,\n UpdateMembers,\n MembersInput,\n MembersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { addMembers, updateMembers, removeMembers, users } = incomingParams;\n let payload = {};\n\n if (addMembers && addMembers.length > 0) {\n payload.add = [];\n\n addMembers.forEach((addMember) => {\n let currentAdd: AddMembers = { id: addMember.id };\n\n if (addMember.custom) {\n currentAdd.custom = addMember.custom;\n }\n\n payload.add.push(currentAdd);\n });\n }\n\n if (updateMembers && updateMembers.length > 0) {\n payload.update = [];\n\n updateMembers.forEach((updateMember) => {\n let currentUpdate: UpdateMembers = { id: updateMember.id };\n\n if (updateMember.custom) {\n currentUpdate.custom = updateMember.custom;\n }\n\n payload.update.push(currentUpdate);\n });\n }\n\n // if users is present then it is an update\n if (users && users.length > 0) {\n payload.update = payload.update || [];\n\n users.forEach((updateMember) => {\n let currentUpdate: UpdateMembers = { id: updateMember.id };\n\n if (updateMember.custom) {\n currentUpdate.custom = updateMember.custom;\n }\n\n payload.update.push(currentUpdate);\n });\n }\n\n if (removeMembers && removeMembers.length > 0) {\n payload.remove = [];\n\n removeMembers.forEach((removeMemberId) => {\n payload.remove.push({ id: removeMemberId });\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembersOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n) {\n let { spaceId, users } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n if (!users) return 'Missing users';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembersInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}/users`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembersInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membersResponse: Object\n): MembersListResponse {\n return membersResponse;\n}\n"],"file":"update_members.js"} \ No newline at end of file diff --git a/lib/core/endpoints/memberships/update_memberships.js b/lib/core/endpoints/memberships/update_memberships.js index 92f52e40e..eea375e84 100644 --- a/lib/core/endpoints/memberships/update_memberships.js +++ b/lib/core/endpoints/memberships/update_memberships.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; -exports.patchURL = patchURL; -exports.usePatch = usePatch; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -121,11 +120,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/memberships/update_memberships.js.map b/lib/core/endpoints/memberships/update_memberships.js.map index 7a2f17ff6..fa4324a49 100644 --- a/lib/core/endpoints/memberships/update_memberships.js.map +++ b/lib/core/endpoints/memberships/update_memberships.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/memberships/update_memberships.js"],"names":["prepareMessagePayload","modules","incomingParams","addMemberships","updateMemberships","removeMemberships","spaces","payload","length","add","forEach","addMembership","currentAdd","id","custom","push","update","updateMembership","currentUpdate","remove","removeMembershipId","getOperation","operationConstants","PNUpdateMembershipsOperation","validateParams","userId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membershipsResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n AddMemberships,\n UpdateMemberships,\n MembershipsInput,\n MembershipsListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { addMemberships, updateMemberships, removeMemberships, spaces } = incomingParams;\n let payload = {};\n\n if (addMemberships && addMemberships.length > 0) {\n payload.add = [];\n\n addMemberships.forEach((addMembership) => {\n let currentAdd: AddMemberships = { id: addMembership.id };\n\n if (addMembership.custom) {\n currentAdd.custom = addMembership.custom;\n }\n\n payload.add.push(currentAdd);\n });\n }\n\n if (updateMemberships && updateMemberships.length > 0) {\n payload.update = [];\n\n updateMemberships.forEach((updateMembership) => {\n let currentUpdate: UpdateMemberships = { id: updateMembership.id };\n\n if (updateMembership.custom) {\n currentUpdate.custom = updateMembership.custom;\n }\n\n payload.update.push(currentUpdate);\n });\n }\n\n // if spaces is present then it is an update\n if (spaces && spaces.length > 0) {\n payload.update = payload.update || [];\n\n spaces.forEach((updateMembership) => {\n let currentUpdate: UpdateMemberships = { id: updateMembership.id };\n\n if (updateMembership.custom) {\n currentUpdate.custom = updateMembership.custom;\n }\n\n payload.update.push(currentUpdate);\n });\n }\n\n if (removeMemberships && removeMemberships.length > 0) {\n payload.remove = [];\n\n removeMemberships.forEach((removeMembershipId) => {\n payload.remove.push({ id: removeMembershipId });\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembershipsOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n) {\n let { userId, spaces } = incomingParams;\n\n if (!userId) return 'Missing userId';\n if (!spaces) return 'Missing spaces';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: MembershipsInput): string {\n let token =\n modules.tokenManager.getToken('user', incomingParams.userId) ||\n modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membershipsResponse: Object\n): MembershipsListResponse {\n return membershipsResponse;\n}\n"],"file":"update_memberships.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/memberships/update_memberships.js"],"names":["prepareMessagePayload","modules","incomingParams","addMemberships","updateMemberships","removeMemberships","spaces","payload","length","add","forEach","addMembership","currentAdd","id","custom","push","update","updateMembership","currentUpdate","remove","removeMembershipId","getOperation","operationConstants","PNUpdateMembershipsOperation","validateParams","userId","getURL","config","subscribeKey","utils","encodeString","patchURL","usePatch","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","limit","page","params","includes","totalCount","count","customFields","spaceFields","customSpaceFields","includesString","join","next","start","prev","end","patchPayload","handleResponse","membershipsResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n AddMemberships,\n UpdateMemberships,\n MembershipsInput,\n MembershipsListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n const { addMemberships, updateMemberships, removeMemberships, spaces } = incomingParams;\n let payload = {};\n\n if (addMemberships && addMemberships.length > 0) {\n payload.add = [];\n\n addMemberships.forEach((addMembership) => {\n let currentAdd: AddMemberships = { id: addMembership.id };\n\n if (addMembership.custom) {\n currentAdd.custom = addMembership.custom;\n }\n\n payload.add.push(currentAdd);\n });\n }\n\n if (updateMemberships && updateMemberships.length > 0) {\n payload.update = [];\n\n updateMemberships.forEach((updateMembership) => {\n let currentUpdate: UpdateMemberships = { id: updateMembership.id };\n\n if (updateMembership.custom) {\n currentUpdate.custom = updateMembership.custom;\n }\n\n payload.update.push(currentUpdate);\n });\n }\n\n // if spaces is present then it is an update\n if (spaces && spaces.length > 0) {\n payload.update = payload.update || [];\n\n spaces.forEach((updateMembership) => {\n let currentUpdate: UpdateMemberships = { id: updateMembership.id };\n\n if (updateMembership.custom) {\n currentUpdate.custom = updateMembership.custom;\n }\n\n payload.update.push(currentUpdate);\n });\n }\n\n if (removeMemberships && removeMemberships.length > 0) {\n payload.remove = [];\n\n removeMemberships.forEach((removeMembershipId) => {\n payload.remove.push({ id: removeMembershipId });\n });\n }\n\n return payload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateMembershipsOperation;\n}\n\nexport function validateParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n) {\n let { userId, spaces } = incomingParams;\n\n if (!userId) return 'Missing userId';\n if (!spaces) return 'Missing spaces';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function patchURL(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}/spaces`;\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n const { include, limit, page } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n if (include.spaceFields) {\n includes.push('space');\n }\n\n if (include.customSpaceFields) {\n includes.push('space.custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: MembershipsInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n membershipsResponse: Object\n): MembershipsListResponse {\n return membershipsResponse;\n}\n"],"file":"update_memberships.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/channel/get.js b/lib/core/endpoints/objects/channel/get.js index 8be1abddf..197f683ab 100644 --- a/lib/core/endpoints/objects/channel/get.js +++ b/lib/core/endpoints/objects/channel/get.js @@ -16,7 +16,7 @@ var endpoint = { return _operations["default"].PNGetChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } }, @@ -31,10 +31,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_, params) { var _params$include$custo, _params$include; diff --git a/lib/core/endpoints/objects/channel/get.js.map b/lib/core/endpoints/objects/channel/get.js.map index a66001371..3dc6c6bef 100644 --- a/lib/core/endpoints/objects/channel/get.js.map +++ b/lib/core/endpoints/objects/channel/get.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/channel/get.js"],"names":["endpoint","getOperation","operationConstants","PNGetChannelMetadataOperation","validateParams","_","params","channel","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","include","customFields","handleResponse","response","status","data"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAcA,IAAMA,QAA4E,GAAG;AACnFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,6BAAzB;AAAA,GADqE;AAGnFC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;AACF,GAPkF;AASnFC,EAAAA,MAAM,EAAE,sBAAaF,MAAb;AAAA,QAAGG,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,uBAAuEC,kBAAMC,YAAN,CAAmBN,MAAM,CAACC,OAA1B,CAAvE;AAAA,GAT2E;AAWnFM,EAAAA,iBAAiB,EAAE;AAAA,QAAGJ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACK,qBAAP,EAAhB;AAAA,GAXgE;AAanFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAbkE;AAenFC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,SAAtB,CAAtB;AAAA,GAfqE;AAiBnFC,EAAAA,aAAa,EAAE,uBAACd,CAAD,EAAIC,MAAJ;AAAA;;AAAA,WAAgB;AAC7Bc,MAAAA,OAAO,EAAE,0BAACd,MAAD,aAACA,MAAD,0CAACA,MAAM,CAAEc,OAAT,oDAAC,gBAAiBC,YAAlB,yEAAkC,IAAlC,KAA2C;AADvB,KAAhB;AAAA,GAjBoE;AAqBnFC,EAAAA,cAAc,EAAE,wBAACjB,CAAD,EAAIkB,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AArBmE,CAArF;eA2BezB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { ChannelMetadata } from './channel';\nimport utils from '../../../utils';\n\nexport type GetChannelMetadataParams = {|\n channel: string,\n include?: {|\n customFields: ?boolean,\n |},\n|};\n\nexport type GetChannelMetadataResult = {|\n status: 200,\n data: ChannelMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetChannelMetadataOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'Channel cannot be empty';\n }\n },\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('channel'),\n\n prepareParams: (_, params) => ({\n include: (params?.include?.customFields ?? true) && 'custom',\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"get.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/channel/get.js"],"names":["endpoint","getOperation","operationConstants","PNGetChannelMetadataOperation","validateParams","_","params","channel","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","customFields","handleResponse","response","status","data"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAcA,IAAMA,QAA4E,GAAG;AACnFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,6BAAzB;AAAA,GADqE;AAGnFC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;AACF,GAPkF;AASnFC,EAAAA,MAAM,EAAE,sBAAaF,MAAb;AAAA,QAAGG,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,uBAAuEC,kBAAMC,YAAN,CAAmBN,MAAM,CAACC,OAA1B,CAAvE;AAAA,GAT2E;AAWnFM,EAAAA,iBAAiB,EAAE;AAAA,QAAGJ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACK,qBAAP,EAAhB;AAAA,GAXgE;AAanFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAbkE;AAenFC,EAAAA,aAAa,EAAE,uBAACX,CAAD,EAAIC,MAAJ;AAAA;;AAAA,WAAgB;AAC7BW,MAAAA,OAAO,EAAE,0BAACX,MAAD,aAACA,MAAD,0CAACA,MAAM,CAAEW,OAAT,oDAAC,gBAAiBC,YAAlB,yEAAkC,IAAlC,KAA2C;AADvB,KAAhB;AAAA,GAfoE;AAmBnFC,EAAAA,cAAc,EAAE,wBAACd,CAAD,EAAIe,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AAnBmE,CAArF;eAyBetB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { ChannelMetadata } from './channel';\nimport utils from '../../../utils';\n\nexport type GetChannelMetadataParams = {|\n channel: string,\n include?: {|\n customFields: ?boolean,\n |},\n|};\n\nexport type GetChannelMetadataResult = {|\n status: 200,\n data: ChannelMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetChannelMetadataOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'Channel cannot be empty';\n }\n },\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_, params) => ({\n include: (params?.include?.customFields ?? true) && 'custom',\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"get.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/channel/get_all.js b/lib/core/endpoints/objects/channel/get_all.js index f9c65a99e..7ca75d8e2 100644 --- a/lib/core/endpoints/objects/channel/get_all.js +++ b/lib/core/endpoints/objects/channel/get_all.js @@ -27,50 +27,46 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include, _params$include2, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if (params !== null && params !== void 0 && (_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include = 'custom'; } - if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) { + if (params !== null && params !== void 0 && (_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.totalCount) { var _params$include3; queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); diff --git a/lib/core/endpoints/objects/channel/get_all.js.map b/lib/core/endpoints/objects/channel/get_all.js.map index ad7ffbe0f..3f387f95f 100644 --- a/lib/core/endpoints/objects/channel/get_all.js.map +++ b/lib/core/endpoints/objects/channel/get_all.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/channel/get_all.js"],"names":["endpoint","getOperation","operationConstants","PNGetAllChannelMetadataOperation","validateParams","getURL","config","subscribeKey","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","_modules","params","queryParams","include","customFields","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","map","key","value","handleResponse","_","response","status","data"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { ChannelMetadata } from './channel';\n\nexport type GetAllChannelMetadataParams = {|\n filter?: string,\n sort?: { [key: string]: 'asc' | 'desc' | null },\n limit?: number,\n page?: {|\n next?: string,\n prev?: string,\n |},\n include?: {|\n totalCount?: boolean,\n customFields?: boolean,\n |},\n|};\n\nexport type GetAllChannelMetadataResult = {|\n status: 200,\n data: ChannelMetadata[],\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetAllChannelMetadataOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }) => `/v2/objects/${config.subscribeKey}/channels`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('channel'),\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include?.customFields) {\n queryParams.include = 'custom';\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = params.include?.totalCount;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n queryParams.limit = params?.limit ?? 100;\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response): GetAllChannelMetadataResult => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"get_all.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/channel/get_all.js"],"names":["endpoint","getOperation","operationConstants","PNGetAllChannelMetadataOperation","validateParams","getURL","config","subscribeKey","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","_modules","params","queryParams","include","customFields","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","map","key","value","handleResponse","_","response","status","data"],"mappings":";;;;;;;;;;;AAGA;;AAyBA,IAAMA,QAAkF,GAAG;AACzFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,gCAAzB;AAAA,GAD2E;AAIzFC,EAAAA,cAAc,EAAE,0BAAM,CAAE,CAJiE;AAMzFC,EAAAA,MAAM,EAAE;AAAA,QAAGC,MAAH,QAAGA,MAAH;AAAA,iCAA+BA,MAAM,CAACC,YAAtC;AAAA,GANiF;AAQzFC,EAAAA,iBAAiB,EAAE;AAAA,QAAGF,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACG,qBAAP,EAAhB;AAAA,GARsE;AAUzFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAVwE;AAYzFC,EAAAA,aAAa,EAAE,uBAACC,QAAD,EAAWC,MAAX,EAAsB;AAAA;;AACnC,QAAMC,WAAW,GAAG,EAApB;;AAEA,QAAID,MAAJ,aAAIA,MAAJ,kCAAIA,MAAM,CAAEE,OAAZ,4CAAI,gBAAiBC,YAArB,EAAmC;AACjCF,MAAAA,WAAW,CAACC,OAAZ,GAAsB,QAAtB;AACD;;AAED,QAAIF,MAAJ,aAAIA,MAAJ,mCAAIA,MAAM,CAAEE,OAAZ,6CAAI,iBAAiBE,UAArB,EAAiC;AAAA;;AAC/BH,MAAAA,WAAW,CAACI,KAAZ,uBAAoBL,MAAM,CAACE,OAA3B,qDAAoB,iBAAgBE,UAApC;AACD;;AAED,QAAIJ,MAAJ,aAAIA,MAAJ,+BAAIA,MAAM,CAAEM,IAAZ,yCAAI,aAAcC,IAAlB,EAAwB;AAAA;;AACtBN,MAAAA,WAAW,CAACO,KAAZ,oBAAoBR,MAAM,CAACM,IAA3B,kDAAoB,cAAaC,IAAjC;AACD;;AAED,QAAIP,MAAJ,aAAIA,MAAJ,gCAAIA,MAAM,CAAEM,IAAZ,0CAAI,cAAcG,IAAlB,EAAwB;AAAA;;AACtBR,MAAAA,WAAW,CAACS,GAAZ,oBAAkBV,MAAM,CAACM,IAAzB,kDAAkB,cAAaG,IAA/B;AACD;;AAED,QAAIT,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAEW,MAAZ,EAAoB;AAClBV,MAAAA,WAAW,CAACU,MAAZ,GAAqBX,MAAM,CAACW,MAA5B;AACD;;AAEDV,IAAAA,WAAW,CAACW,KAAZ,oBAAoBZ,MAApB,aAAoBA,MAApB,uBAAoBA,MAAM,CAAEY,KAA5B,yDAAqC,GAArC;;AAEA,QAAIZ,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAEa,IAAZ,EAAkB;AAAA;;AAChBZ,MAAAA,WAAW,CAACY,IAAZ,GAAmBC,MAAM,CAACC,OAAP,iBAAef,MAAM,CAACa,IAAtB,uDAA8B,EAA9B,EAAkCG,GAAlC,CAAsC,iBAAkB;AAAA;AAAA,YAAhBC,GAAgB;AAAA,YAAXC,KAAW;;AACzE,YAAIA,KAAK,KAAK,KAAV,IAAmBA,KAAK,KAAK,MAAjC,EAAyC;AACvC,2BAAUD,GAAV,cAAiBC,KAAjB;AACD,SAFD,MAEO;AACL,iBAAOD,GAAP;AACD;AACF,OANkB,CAAnB;AAOD;;AAED,WAAOhB,WAAP;AACD,GAhDwF;AAkDzFkB,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,QAAJ;AAAA,WAA+C;AAC7DC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MAD4C;AAE7DC,MAAAA,IAAI,EAAEF,QAAQ,CAACE,IAF8C;AAG7DnB,MAAAA,UAAU,EAAEiB,QAAQ,CAACjB,UAHwC;AAI7DK,MAAAA,IAAI,EAAEY,QAAQ,CAACZ,IAJ8C;AAK7DF,MAAAA,IAAI,EAAEc,QAAQ,CAACd;AAL8C,KAA/C;AAAA;AAlDyE,CAA3F;eA2DepB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { ChannelMetadata } from './channel';\n\nexport type GetAllChannelMetadataParams = {|\n filter?: string,\n sort?: { [key: string]: 'asc' | 'desc' | null },\n limit?: number,\n page?: {|\n next?: string,\n prev?: string,\n |},\n include?: {|\n totalCount?: boolean,\n customFields?: boolean,\n |},\n|};\n\nexport type GetAllChannelMetadataResult = {|\n status: 200,\n data: ChannelMetadata[],\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetAllChannelMetadataOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }) => `/v2/objects/${config.subscribeKey}/channels`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include?.customFields) {\n queryParams.include = 'custom';\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = params.include?.totalCount;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n queryParams.limit = params?.limit ?? 100;\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response): GetAllChannelMetadataResult => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"get_all.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/channel/remove.js b/lib/core/endpoints/objects/channel/remove.js index 0563bc5b8..1cc231bce 100644 --- a/lib/core/endpoints/objects/channel/remove.js +++ b/lib/core/endpoints/objects/channel/remove.js @@ -16,7 +16,7 @@ var endpoint = { return _operations["default"].PNRemoveChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } }, @@ -34,10 +34,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams() { return {}; }, diff --git a/lib/core/endpoints/objects/channel/remove.js.map b/lib/core/endpoints/objects/channel/remove.js.map index a1c9aa2d4..7058767bb 100644 --- a/lib/core/endpoints/objects/channel/remove.js.map +++ b/lib/core/endpoints/objects/channel/remove.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/channel/remove.js"],"names":["endpoint","getOperation","operationConstants","PNRemoveChannelMetadataOperation","validateParams","_","params","channel","getURL","config","subscribeKey","utils","encodeString","useDelete","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","handleResponse","response","status","data"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAWA,IAAMA,QAAkF,GAAG;AACzFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,gCAAzB;AAAA,GAD2E;AAGzFC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;AACF,GAPwF;AASzFC,EAAAA,MAAM,EAAE,sBAAaF,MAAb;AAAA,QAAGG,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,uBAAuEC,kBAAMC,YAAN,CAAmBN,MAAM,CAACC,OAA1B,CAAvE;AAAA,GATiF;AAUzFM,EAAAA,SAAS,EAAE;AAAA,WAAM,IAAN;AAAA,GAV8E;AAYzFC,EAAAA,iBAAiB,EAAE;AAAA,QAAGL,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACM,qBAAP,EAAhB;AAAA,GAZsE;AAczFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAdwE;AAgBzFC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,SAAtB,CAAtB;AAAA,GAhB2E;AAkBzFC,EAAAA,aAAa,EAAE;AAAA,WAAO,EAAP;AAAA,GAlB0E;AAoBzFC,EAAAA,cAAc,EAAE,wBAAChB,CAAD,EAAIiB,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AApByE,CAA3F;eA0BexB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { ChannelMetadata } from './channel';\nimport utils from '../../../utils';\n\nexport type RemoveChannelMetadataParams = {|\n channel: string,\n|};\n\nexport type RemoveChannelMetadataResult = {|\n status: 200,\n data: ChannelMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNRemoveChannelMetadataOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'Channel cannot be empty';\n }\n },\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}`,\n useDelete: () => true,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('channel'),\n\n prepareParams: () => ({}),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"remove.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/channel/remove.js"],"names":["endpoint","getOperation","operationConstants","PNRemoveChannelMetadataOperation","validateParams","_","params","channel","getURL","config","subscribeKey","utils","encodeString","useDelete","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","response","status","data"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAWA,IAAMA,QAAkF,GAAG;AACzFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,gCAAzB;AAAA,GAD2E;AAGzFC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;AACF,GAPwF;AASzFC,EAAAA,MAAM,EAAE,sBAAaF,MAAb;AAAA,QAAGG,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,uBAAuEC,kBAAMC,YAAN,CAAmBN,MAAM,CAACC,OAA1B,CAAvE;AAAA,GATiF;AAUzFM,EAAAA,SAAS,EAAE;AAAA,WAAM,IAAN;AAAA,GAV8E;AAYzFC,EAAAA,iBAAiB,EAAE;AAAA,QAAGL,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACM,qBAAP,EAAhB;AAAA,GAZsE;AAczFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAdwE;AAgBzFC,EAAAA,aAAa,EAAE;AAAA,WAAO,EAAP;AAAA,GAhB0E;AAkBzFC,EAAAA,cAAc,EAAE,wBAACb,CAAD,EAAIc,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AAlByE,CAA3F;eAwBerB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { ChannelMetadata } from './channel';\nimport utils from '../../../utils';\n\nexport type RemoveChannelMetadataParams = {|\n channel: string,\n|};\n\nexport type RemoveChannelMetadataResult = {|\n status: 200,\n data: ChannelMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNRemoveChannelMetadataOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'Channel cannot be empty';\n }\n },\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}`,\n useDelete: () => true,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: () => ({}),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"remove.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/channel/set.js b/lib/core/endpoints/objects/channel/set.js index 6bddacb09..52c6faa24 100644 --- a/lib/core/endpoints/objects/channel/set.js +++ b/lib/core/endpoints/objects/channel/set.js @@ -16,11 +16,11 @@ var endpoint = { return _operations["default"].PNSetChannelMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.data)) { + if (!(params !== null && params !== void 0 && params.data)) { return 'Data cannot be empty'; } }, @@ -41,10 +41,6 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('channel'); - }, prepareParams: function prepareParams(_, params) { var _params$include$custo, _params$include; diff --git a/lib/core/endpoints/objects/channel/set.js.map b/lib/core/endpoints/objects/channel/set.js.map index 5e2084e9d..59bd16ce1 100644 --- a/lib/core/endpoints/objects/channel/set.js.map +++ b/lib/core/endpoints/objects/channel/set.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/channel/set.js"],"names":["endpoint","getOperation","operationConstants","PNSetChannelMetadataOperation","validateParams","_","params","channel","data","usePatch","patchURL","config","subscribeKey","utils","encodeString","patchPayload","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","include","customFields","handleResponse","response","status"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAeA,IAAMA,QAA4E,GAAG;AACnFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,6BAAzB;AAAA,GADqE;AAGnFC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEE,IAAT,CAAJ,EAAmB;AACjB,aAAO,sBAAP;AACD;AACF,GAXkF;AAanFC,EAAAA,QAAQ,EAAE;AAAA,WAAM,IAAN;AAAA,GAbyE;AAenFC,EAAAA,QAAQ,EAAE,wBAAaJ,MAAb;AAAA,QAAGK,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,uBAAuEC,kBAAMC,YAAN,CAAmBR,MAAM,CAACC,OAA1B,CAAvE;AAAA,GAfyE;AAiBnFQ,EAAAA,YAAY,EAAE,sBAACV,CAAD,EAAIC,MAAJ;AAAA,WAAeA,MAAM,CAACE,IAAtB;AAAA,GAjBqE;AAmBnFQ,EAAAA,iBAAiB,EAAE;AAAA,QAAGL,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACM,qBAAP,EAAhB;AAAA,GAnBgE;AAqBnFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GArBkE;AAuBnFC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,SAAtB,CAAtB;AAAA,GAvBqE;AAyBnFC,EAAAA,aAAa,EAAE,uBAACjB,CAAD,EAAIC,MAAJ;AAAA;;AAAA,WAAgB;AAC7BiB,MAAAA,OAAO,EAAE,0BAACjB,MAAD,aAACA,MAAD,0CAACA,MAAM,CAAEiB,OAAT,oDAAC,gBAAiBC,YAAlB,yEAAkC,IAAlC,KAA2C;AADvB,KAAhB;AAAA,GAzBoE;AA6BnFC,EAAAA,cAAc,EAAE,wBAACpB,CAAD,EAAIqB,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCnB,MAAAA,IAAI,EAAEkB,QAAQ,CAAClB;AAFiB,KAAlB;AAAA;AA7BmE,CAArF;eAmCeR,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { ChannelMetadata } from './channel';\nimport utils from '../../../utils';\n\nexport type SetChannelMetadataParams = {|\n channel: string,\n include?: {|\n customFields: ?boolean,\n |},\n data: $Shape,\n|};\n\nexport type SetChannelMetadataResult = {|\n status: 200,\n data: ChannelMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNSetChannelMetadataOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'Channel cannot be empty';\n }\n\n if (!params?.data) {\n return 'Data cannot be empty';\n }\n },\n\n usePatch: () => true,\n\n patchURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}`,\n\n patchPayload: (_, params) => params.data,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('channel'),\n\n prepareParams: (_, params) => ({\n include: (params?.include?.customFields ?? true) && 'custom',\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"set.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/channel/set.js"],"names":["endpoint","getOperation","operationConstants","PNSetChannelMetadataOperation","validateParams","_","params","channel","data","usePatch","patchURL","config","subscribeKey","utils","encodeString","patchPayload","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","customFields","handleResponse","response","status"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAeA,IAAMA,QAA4E,GAAG;AACnFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,6BAAzB;AAAA,GADqE;AAGnFC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEE,IAAT,CAAJ,EAAmB;AACjB,aAAO,sBAAP;AACD;AACF,GAXkF;AAanFC,EAAAA,QAAQ,EAAE;AAAA,WAAM,IAAN;AAAA,GAbyE;AAenFC,EAAAA,QAAQ,EAAE,wBAAaJ,MAAb;AAAA,QAAGK,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,uBAAuEC,kBAAMC,YAAN,CAAmBR,MAAM,CAACC,OAA1B,CAAvE;AAAA,GAfyE;AAiBnFQ,EAAAA,YAAY,EAAE,sBAACV,CAAD,EAAIC,MAAJ;AAAA,WAAeA,MAAM,CAACE,IAAtB;AAAA,GAjBqE;AAmBnFQ,EAAAA,iBAAiB,EAAE;AAAA,QAAGL,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACM,qBAAP,EAAhB;AAAA,GAnBgE;AAqBnFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GArBkE;AAuBnFC,EAAAA,aAAa,EAAE,uBAACd,CAAD,EAAIC,MAAJ;AAAA;;AAAA,WAAgB;AAC7Bc,MAAAA,OAAO,EAAE,0BAACd,MAAD,aAACA,MAAD,0CAACA,MAAM,CAAEc,OAAT,oDAAC,gBAAiBC,YAAlB,yEAAkC,IAAlC,KAA2C;AADvB,KAAhB;AAAA,GAvBoE;AA2BnFC,EAAAA,cAAc,EAAE,wBAACjB,CAAD,EAAIkB,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhChB,MAAAA,IAAI,EAAEe,QAAQ,CAACf;AAFiB,KAAlB;AAAA;AA3BmE,CAArF;eAiCeR,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { ChannelMetadata } from './channel';\nimport utils from '../../../utils';\n\nexport type SetChannelMetadataParams = {|\n channel: string,\n include?: {|\n customFields: ?boolean,\n |},\n data: $Shape,\n|};\n\nexport type SetChannelMetadataResult = {|\n status: 200,\n data: ChannelMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNSetChannelMetadataOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'Channel cannot be empty';\n }\n\n if (!params?.data) {\n return 'Data cannot be empty';\n }\n },\n\n usePatch: () => true,\n\n patchURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}`,\n\n patchPayload: (_, params) => params.data,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_, params) => ({\n include: (params?.include?.customFields ?? true) && 'custom',\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"set.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/member/get.js b/lib/core/endpoints/objects/member/get.js index 2b9c3767b..351e4079a 100644 --- a/lib/core/endpoints/objects/member/get.js +++ b/lib/core/endpoints/objects/member/get.js @@ -18,7 +18,7 @@ var endpoint = { return _operations["default"].PNGetMembersOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'UUID cannot be empty'; } }, @@ -33,25 +33,21 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('member'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include$UUIDF, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customUUIDFields) { queryParams.include.push('uuid.custom'); } @@ -62,37 +58,37 @@ var endpoint = { queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { var _params$include5; queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); diff --git a/lib/core/endpoints/objects/member/get.js.map b/lib/core/endpoints/objects/member/get.js.map index 478edee42..ed7c1716f 100644 --- a/lib/core/endpoints/objects/member/get.js.map +++ b/lib/core/endpoints/objects/member/get.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/member/get.js"],"names":["endpoint","getOperation","operationConstants","PNGetMembersOperation","validateParams","_","params","channel","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","_modules","queryParams","include","customFields","push","customUUIDFields","UUIDFields","join","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","map","key","value","handleResponse","response","status","data"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { Member, PaginatedResultParams } from './member';\nimport utils from '../../../utils';\n\nexport type GetMembersParams = {\n channel: string,\n} & PaginatedResultParams;\n\nexport type GetMembersResult = {|\n status: 200,\n data: Member[],\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetMembersOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'UUID cannot be empty';\n }\n },\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/uuids`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('member'),\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include) {\n queryParams.include = [];\n\n if (params.include?.customFields) {\n queryParams.include.push('custom');\n }\n\n if (params.include?.customUUIDFields) {\n queryParams.include.push('uuid.custom');\n }\n\n if (params.include?.UUIDFields ?? true) {\n queryParams.include.push('uuid');\n }\n\n queryParams.include = queryParams.include.join(',');\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = params.include?.totalCount;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n queryParams.limit = params?.limit ?? 100;\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response): GetMembersResult => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"get.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/member/get.js"],"names":["endpoint","getOperation","operationConstants","PNGetMembersOperation","validateParams","_","params","channel","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","_modules","queryParams","include","customFields","push","customUUIDFields","UUIDFields","join","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","map","key","value","handleResponse","response","status","data"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { Member, PaginatedResultParams } from './member';\nimport utils from '../../../utils';\n\nexport type GetMembersParams = {\n channel: string,\n} & PaginatedResultParams;\n\nexport type GetMembersResult = {|\n status: 200,\n data: Member[],\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetMembersOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'UUID cannot be empty';\n }\n },\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/uuids`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include) {\n queryParams.include = [];\n\n if (params.include?.customFields) {\n queryParams.include.push('custom');\n }\n\n if (params.include?.customUUIDFields) {\n queryParams.include.push('uuid.custom');\n }\n\n if (params.include?.UUIDFields ?? true) {\n queryParams.include.push('uuid');\n }\n\n queryParams.include = queryParams.include.join(',');\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = params.include?.totalCount;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n queryParams.limit = params?.limit ?? 100;\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response): GetMembersResult => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"get.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/member/set.js b/lib/core/endpoints/objects/member/set.js index f6690a422..4bd191ef2 100644 --- a/lib/core/endpoints/objects/member/set.js +++ b/lib/core/endpoints/objects/member/set.js @@ -20,11 +20,11 @@ var endpoint = { return _operations["default"].PNSetMembersOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channel)) { + if (!(params !== null && params !== void 0 && params.channel)) { return 'Channel cannot be empty'; } - if (!(params === null || params === void 0 ? void 0 : params.uuids) || (params === null || params === void 0 ? void 0 : params.uuids.length) === 0) { + if (!(params !== null && params !== void 0 && params.uuids) || (params === null || params === void 0 ? void 0 : params.uuids.length) === 0) { return 'UUIDs cannot be empty'; } }, @@ -63,66 +63,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref4) { - var tokenManager = _ref4.tokenManager; - return tokenManager.getToken('member'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customUUIDFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customUUIDFields) { queryParams.include.push('uuid.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.UUIDFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.UUIDFields) { queryParams.include.push('uuid'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { queryParams.count = true; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } - if (params === null || params === void 0 ? void 0 : params.limit) { + if (params !== null && params !== void 0 && params.limit) { queryParams.limit = params.limit; } - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) { - var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2), - key = _ref6[0], - value = _ref6[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { + var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), + key = _ref5[0], + value = _ref5[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); diff --git a/lib/core/endpoints/objects/member/set.js.map b/lib/core/endpoints/objects/member/set.js.map index 77e12ca8b..c642c6b1c 100644 --- a/lib/core/endpoints/objects/member/set.js.map +++ b/lib/core/endpoints/objects/member/set.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/member/set.js"],"names":["endpoint","getOperation","operationConstants","PNSetMembersOperation","validateParams","_","params","channel","uuids","length","usePatch","patchURL","config","subscribeKey","utils","encodeString","patchPayload","set","remove","type","map","uuid","id","custom","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","_modules","queryParams","include","customFields","push","customUUIDFields","UUIDFields","join","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","key","value","handleResponse","response","status","data"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { Member, PaginatedResultParams } from './member';\nimport utils from '../../../utils';\n\ntype CommonParams = {\n channel: string,\n};\n\nexport type RemoveMembersParams = {\n type: 'delete',\n uuids: (string | { id: string, custom?: empty })[],\n} & CommonParams &\n PaginatedResultParams;\n\nexport type UpsertMembersParams = {\n type: 'set',\n uuids: (string | { id: string, custom?: any })[],\n} & CommonParams &\n PaginatedResultParams;\n\nexport type SetMembersParams = RemoveMembersParams | UpsertMembersParams;\n\nexport type SetMembersResult = {|\n status: 200,\n data: Member,\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNSetMembersOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'Channel cannot be empty';\n }\n\n if (!params?.uuids || params?.uuids.length === 0) {\n return 'UUIDs cannot be empty';\n }\n },\n\n usePatch: () => true,\n\n patchURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/uuids`,\n\n patchPayload: (_, params) => ({\n set: [],\n remove: [],\n [params.type]: params.uuids.map((uuid) => {\n if (typeof uuid === 'string') {\n return {\n uuid: {\n id: uuid,\n },\n };\n } else {\n return {\n uuid: { id: uuid.id },\n custom: uuid.custom,\n };\n }\n }),\n }),\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('member'),\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include) {\n queryParams.include = [];\n\n if (params.include?.customFields) {\n queryParams.include.push('custom');\n }\n\n if (params.include?.customUUIDFields) {\n queryParams.include.push('uuid.custom');\n }\n\n if (params.include?.UUIDFields) {\n queryParams.include.push('uuid');\n }\n\n queryParams.include = queryParams.include.join(',');\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = true;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n if (params?.limit) {\n queryParams.limit = params.limit;\n }\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"set.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/member/set.js"],"names":["endpoint","getOperation","operationConstants","PNSetMembersOperation","validateParams","_","params","channel","uuids","length","usePatch","patchURL","config","subscribeKey","utils","encodeString","patchPayload","set","remove","type","map","uuid","id","custom","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","_modules","queryParams","include","customFields","push","customUUIDFields","UUIDFields","join","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","key","value","handleResponse","response","status","data"],"mappings":";;;;;;;;;;;;;AAGA;;AAEA;;AA4BA,IAAMA,QAA4D,GAAG;AACnEC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,qBAAzB;AAAA,GADqD;AAGnEC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,OAAT,CAAJ,EAAsB;AACpB,aAAO,yBAAP;AACD;;AAED,QAAI,EAACD,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEE,KAAT,KAAkB,CAAAF,MAAM,SAAN,IAAAA,MAAM,WAAN,YAAAA,MAAM,CAAEE,KAAR,CAAcC,MAAd,MAAyB,CAA/C,EAAkD;AAChD,aAAO,uBAAP;AACD;AACF,GAXkE;AAanEC,EAAAA,QAAQ,EAAE;AAAA,WAAM,IAAN;AAAA,GAbyD;AAenEC,EAAAA,QAAQ,EAAE,wBAAaL,MAAb;AAAA,QAAGM,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,uBAAuEC,kBAAMC,YAAN,CAAmBT,MAAM,CAACC,OAA1B,CAAvE;AAAA,GAfyD;AAiBnES,EAAAA,YAAY,EAAE,sBAACX,CAAD,EAAIC,MAAJ;AAAA;AACZW,MAAAA,GAAG,EAAE,EADO;AAEZC,MAAAA,MAAM,EAAE;AAFI,OAGXZ,MAAM,CAACa,IAHI,EAGGb,MAAM,CAACE,KAAP,CAAaY,GAAb,CAAiB,UAACC,IAAD,EAAU;AACxC,UAAI,OAAOA,IAAP,KAAgB,QAApB,EAA8B;AAC5B,eAAO;AACLA,UAAAA,IAAI,EAAE;AACJC,YAAAA,EAAE,EAAED;AADA;AADD,SAAP;AAKD,OAND,MAMO;AACL,eAAO;AACLA,UAAAA,IAAI,EAAE;AAAEC,YAAAA,EAAE,EAAED,IAAI,CAACC;AAAX,WADD;AAELC,UAAAA,MAAM,EAAEF,IAAI,CAACE;AAFR,SAAP;AAID;AACF,KAbc,CAHH;AAAA,GAjBqD;AAoCnEC,EAAAA,iBAAiB,EAAE;AAAA,QAAGZ,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACa,qBAAP,EAAhB;AAAA,GApCgD;AAsCnEC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAtCkD;AAwCnEC,EAAAA,aAAa,EAAE,uBAACC,QAAD,EAAWtB,MAAX,EAAsB;AAAA;;AACnC,QAAMuB,WAAW,GAAG,EAApB;;AAEA,QAAIvB,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAEwB,OAAZ,EAAqB;AAAA;;AACnBD,MAAAA,WAAW,CAACC,OAAZ,GAAsB,EAAtB;;AAEA,6BAAIxB,MAAM,CAACwB,OAAX,4CAAI,gBAAgBC,YAApB,EAAkC;AAChCF,QAAAA,WAAW,CAACC,OAAZ,CAAoBE,IAApB,CAAyB,QAAzB;AACD;;AAED,8BAAI1B,MAAM,CAACwB,OAAX,6CAAI,iBAAgBG,gBAApB,EAAsC;AACpCJ,QAAAA,WAAW,CAACC,OAAZ,CAAoBE,IAApB,CAAyB,aAAzB;AACD;;AAED,8BAAI1B,MAAM,CAACwB,OAAX,6CAAI,iBAAgBI,UAApB,EAAgC;AAC9BL,QAAAA,WAAW,CAACC,OAAZ,CAAoBE,IAApB,CAAyB,MAAzB;AACD;;AAEDH,MAAAA,WAAW,CAACC,OAAZ,GAAsBD,WAAW,CAACC,OAAZ,CAAoBK,IAApB,CAAyB,GAAzB,CAAtB;AACD;;AAED,QAAI7B,MAAJ,aAAIA,MAAJ,mCAAIA,MAAM,CAAEwB,OAAZ,6CAAI,iBAAiBM,UAArB,EAAiC;AAC/BP,MAAAA,WAAW,CAACQ,KAAZ,GAAoB,IAApB;AACD;;AAED,QAAI/B,MAAJ,aAAIA,MAAJ,+BAAIA,MAAM,CAAEgC,IAAZ,yCAAI,aAAcC,IAAlB,EAAwB;AAAA;;AACtBV,MAAAA,WAAW,CAACW,KAAZ,oBAAoBlC,MAAM,CAACgC,IAA3B,kDAAoB,cAAaC,IAAjC;AACD;;AAED,QAAIjC,MAAJ,aAAIA,MAAJ,gCAAIA,MAAM,CAAEgC,IAAZ,0CAAI,cAAcG,IAAlB,EAAwB;AAAA;;AACtBZ,MAAAA,WAAW,CAACa,GAAZ,oBAAkBpC,MAAM,CAACgC,IAAzB,kDAAkB,cAAaG,IAA/B;AACD;;AAED,QAAInC,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAEqC,MAAZ,EAAoB;AAClBd,MAAAA,WAAW,CAACc,MAAZ,GAAqBrC,MAAM,CAACqC,MAA5B;AACD;;AAED,QAAIrC,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAEsC,KAAZ,EAAmB;AACjBf,MAAAA,WAAW,CAACe,KAAZ,GAAoBtC,MAAM,CAACsC,KAA3B;AACD;;AAED,QAAItC,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAEuC,IAAZ,EAAkB;AAAA;;AAChBhB,MAAAA,WAAW,CAACgB,IAAZ,GAAmBC,MAAM,CAACC,OAAP,iBAAezC,MAAM,CAACuC,IAAtB,uDAA8B,EAA9B,EAAkCzB,GAAlC,CAAsC,iBAAkB;AAAA;AAAA,YAAhB4B,GAAgB;AAAA,YAAXC,KAAW;;AACzE,YAAIA,KAAK,KAAK,KAAV,IAAmBA,KAAK,KAAK,MAAjC,EAAyC;AACvC,2BAAUD,GAAV,cAAiBC,KAAjB;AACD,SAFD,MAEO;AACL,iBAAOD,GAAP;AACD;AACF,OANkB,CAAnB;AAOD;;AAED,WAAOnB,WAAP;AACD,GA5FkE;AA8FnEqB,EAAAA,cAAc,EAAE,wBAAC7C,CAAD,EAAI8C,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE,IAFiB;AAGhCjB,MAAAA,UAAU,EAAEe,QAAQ,CAACf,UAHW;AAIhCK,MAAAA,IAAI,EAAEU,QAAQ,CAACV,IAJiB;AAKhCF,MAAAA,IAAI,EAAEY,QAAQ,CAACZ;AALiB,KAAlB;AAAA;AA9FmD,CAArE;eAuGevC,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { Member, PaginatedResultParams } from './member';\nimport utils from '../../../utils';\n\ntype CommonParams = {\n channel: string,\n};\n\nexport type RemoveMembersParams = {\n type: 'delete',\n uuids: (string | { id: string, custom?: empty })[],\n} & CommonParams &\n PaginatedResultParams;\n\nexport type UpsertMembersParams = {\n type: 'set',\n uuids: (string | { id: string, custom?: any })[],\n} & CommonParams &\n PaginatedResultParams;\n\nexport type SetMembersParams = RemoveMembersParams | UpsertMembersParams;\n\nexport type SetMembersResult = {|\n status: 200,\n data: Member,\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNSetMembersOperation,\n\n validateParams: (_, params) => {\n if (!params?.channel) {\n return 'Channel cannot be empty';\n }\n\n if (!params?.uuids || params?.uuids.length === 0) {\n return 'UUIDs cannot be empty';\n }\n },\n\n usePatch: () => true,\n\n patchURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/channels/${utils.encodeString(params.channel)}/uuids`,\n\n patchPayload: (_, params) => ({\n set: [],\n remove: [],\n [params.type]: params.uuids.map((uuid) => {\n if (typeof uuid === 'string') {\n return {\n uuid: {\n id: uuid,\n },\n };\n } else {\n return {\n uuid: { id: uuid.id },\n custom: uuid.custom,\n };\n }\n }),\n }),\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include) {\n queryParams.include = [];\n\n if (params.include?.customFields) {\n queryParams.include.push('custom');\n }\n\n if (params.include?.customUUIDFields) {\n queryParams.include.push('uuid.custom');\n }\n\n if (params.include?.UUIDFields) {\n queryParams.include.push('uuid');\n }\n\n queryParams.include = queryParams.include.join(',');\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = true;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n if (params?.limit) {\n queryParams.limit = params.limit;\n }\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"set.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/membership/get.js b/lib/core/endpoints/objects/membership/get.js index 3b2f19731..9a165db46 100644 --- a/lib/core/endpoints/objects/membership/get.js +++ b/lib/core/endpoints/objects/membership/get.js @@ -31,66 +31,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('membership'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customChannelFields) { queryParams.include.push('channel.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.channelFields) { queryParams.include.push('channel'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { var _params$include5; queryParams.count = (_params$include5 = params.include) === null || _params$include5 === void 0 ? void 0 : _params$include5.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); diff --git a/lib/core/endpoints/objects/membership/get.js.map b/lib/core/endpoints/objects/membership/get.js.map index a07facd14..9b0519ec7 100644 --- a/lib/core/endpoints/objects/membership/get.js.map +++ b/lib/core/endpoints/objects/membership/get.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/membership/get.js"],"names":["endpoint","getOperation","operationConstants","PNGetMembershipsOperation","validateParams","getURL","params","config","subscribeKey","utils","encodeString","uuid","getUUID","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","_modules","queryParams","include","customFields","push","customChannelFields","channelFields","join","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","map","key","value","handleResponse","_","response","status","data"],"mappings":";;;;;;;;;;;AAGA;;AAEA;;AAcA,IAAMA,QAAoE,GAAG;AAC3EC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,yBAAzB;AAAA,GAD6D;AAI3EC,EAAAA,cAAc,EAAE,0BAAM,CAAE,CAJmD;AAM3EC,EAAAA,MAAM,EAAE,sBAAaC,MAAb;AAAA;;AAAA,QAAGC,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,oBAAoEC,kBAAMC,YAAN,iBAAmBJ,MAAnB,aAAmBA,MAAnB,uBAAmBA,MAAM,CAAEK,IAA3B,uDAAmCJ,MAAM,CAACK,OAAP,EAAnC,CAApE;AAAA,GANmE;AAQ3EC,EAAAA,iBAAiB,EAAE;AAAA,QAAGN,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACO,qBAAP,EAAhB;AAAA,GARwD;AAU3EC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAV0D;AAY3EC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,YAAtB,CAAtB;AAAA,GAZ6D;AAc3EC,EAAAA,aAAa,EAAE,uBAACC,QAAD,EAAWd,MAAX,EAAsB;AAAA;;AACnC,QAAMe,WAAW,GAAG,EAApB;;AAEA,QAAIf,MAAJ,aAAIA,MAAJ,uBAAIA,MAAM,CAAEgB,OAAZ,EAAqB;AAAA;;AACnBD,MAAAA,WAAW,CAACC,OAAZ,GAAsB,EAAtB;;AAEA,6BAAIhB,MAAM,CAACgB,OAAX,oDAAI,gBAAgBC,YAApB,EAAkC;AAChCF,QAAAA,WAAW,CAACC,OAAZ,CAAoBE,IAApB,CAAyB,QAAzB;AACD;;AAED,8BAAIlB,MAAM,CAACgB,OAAX,qDAAI,iBAAgBG,mBAApB,EAAyC;AACvCJ,QAAAA,WAAW,CAACC,OAAZ,CAAoBE,IAApB,CAAyB,gBAAzB;AACD;;AAED,8BAAIlB,MAAM,CAACgB,OAAX,qDAAI,iBAAgBI,aAApB,EAAmC;AACjCL,QAAAA,WAAW,CAACC,OAAZ,CAAoBE,IAApB,CAAyB,SAAzB;AACD;;AAEDH,MAAAA,WAAW,CAACC,OAAZ,GAAsBD,WAAW,CAACC,OAAZ,CAAoBK,IAApB,CAAyB,GAAzB,CAAtB;AACD;;AAED,QAAIrB,MAAJ,aAAIA,MAAJ,2CAAIA,MAAM,CAAEgB,OAAZ,qDAAI,iBAAiBM,UAArB,EAAiC;AAAA;;AAC/BP,MAAAA,WAAW,CAACQ,KAAZ,uBAAoBvB,MAAM,CAACgB,OAA3B,qDAAoB,iBAAgBM,UAApC;AACD;;AAED,QAAItB,MAAJ,aAAIA,MAAJ,uCAAIA,MAAM,CAAEwB,IAAZ,iDAAI,aAAcC,IAAlB,EAAwB;AAAA;;AACtBV,MAAAA,WAAW,CAACW,KAAZ,oBAAoB1B,MAAM,CAACwB,IAA3B,kDAAoB,cAAaC,IAAjC;AACD;;AAED,QAAIzB,MAAJ,aAAIA,MAAJ,wCAAIA,MAAM,CAAEwB,IAAZ,kDAAI,cAAcG,IAAlB,EAAwB;AAAA;;AACtBZ,MAAAA,WAAW,CAACa,GAAZ,oBAAkB5B,MAAM,CAACwB,IAAzB,kDAAkB,cAAaG,IAA/B;AACD;;AAED,QAAI3B,MAAJ,aAAIA,MAAJ,uBAAIA,MAAM,CAAE6B,MAAZ,EAAoB;AAClBd,MAAAA,WAAW,CAACc,MAAZ,GAAqB7B,MAAM,CAAC6B,MAA5B;AACD;;AAEDd,IAAAA,WAAW,CAACe,KAAZ,oBAAoB9B,MAApB,aAAoBA,MAApB,uBAAoBA,MAAM,CAAE8B,KAA5B,yDAAqC,GAArC;;AAEA,QAAI9B,MAAJ,aAAIA,MAAJ,uBAAIA,MAAM,CAAE+B,IAAZ,EAAkB;AAAA;;AAChBhB,MAAAA,WAAW,CAACgB,IAAZ,GAAmBC,MAAM,CAACC,OAAP,iBAAejC,MAAM,CAAC+B,IAAtB,uDAA8B,EAA9B,EAAkCG,GAAlC,CAAsC,iBAAkB;AAAA;AAAA,YAAhBC,GAAgB;AAAA,YAAXC,KAAW;;AACzE,YAAIA,KAAK,KAAK,KAAV,IAAmBA,KAAK,KAAK,MAAjC,EAAyC;AACvC,2BAAUD,GAAV,cAAiBC,KAAjB;AACD,SAFD,MAEO;AACL,iBAAOD,GAAP;AACD;AACF,OANkB,CAAnB;AAOD;;AAED,WAAOpB,WAAP;AACD,GAhE0E;AAkE3EsB,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,QAAJ;AAAA,WAAwC;AACtDC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADqC;AAEtDC,MAAAA,IAAI,EAAEF,QAAQ,CAACE,IAFuC;AAGtDnB,MAAAA,UAAU,EAAEiB,QAAQ,CAACjB,UAHiC;AAItDK,MAAAA,IAAI,EAAEY,QAAQ,CAACZ,IAJuC;AAKtDF,MAAAA,IAAI,EAAEc,QAAQ,CAACd;AALuC,KAAxC;AAAA;AAlE2D,CAA7E;eA2Ee/B,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { Membership, PaginatedResultParams } from './membership';\nimport utils from '../../../utils';\n\nexport type GetMembershipsParams = {\n uuid: string,\n} & PaginatedResultParams;\n\nexport type GetMembershipsResult = {|\n status: 200,\n data: Membership[],\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetMembershipsOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params?.uuid ?? config.getUUID())}/channels`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('membership'),\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include) {\n queryParams.include = [];\n\n if (params.include?.customFields) {\n queryParams.include.push('custom');\n }\n\n if (params.include?.customChannelFields) {\n queryParams.include.push('channel.custom');\n }\n\n if (params.include?.channelFields) {\n queryParams.include.push('channel');\n }\n\n queryParams.include = queryParams.include.join(',');\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = params.include?.totalCount;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n queryParams.limit = params?.limit ?? 100;\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response): GetMembershipsResult => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"get.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/membership/get.js"],"names":["endpoint","getOperation","operationConstants","PNGetMembershipsOperation","validateParams","getURL","params","config","subscribeKey","utils","encodeString","uuid","getUUID","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","_modules","queryParams","include","customFields","push","customChannelFields","channelFields","join","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","map","key","value","handleResponse","_","response","status","data"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { Membership, PaginatedResultParams } from './membership';\nimport utils from '../../../utils';\n\nexport type GetMembershipsParams = {\n uuid: string,\n} & PaginatedResultParams;\n\nexport type GetMembershipsResult = {|\n status: 200,\n data: Membership[],\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetMembershipsOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params?.uuid ?? config.getUUID())}/channels`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include) {\n queryParams.include = [];\n\n if (params.include?.customFields) {\n queryParams.include.push('custom');\n }\n\n if (params.include?.customChannelFields) {\n queryParams.include.push('channel.custom');\n }\n\n if (params.include?.channelFields) {\n queryParams.include.push('channel');\n }\n\n queryParams.include = queryParams.include.join(',');\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = params.include?.totalCount;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n queryParams.limit = params?.limit ?? 100;\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response): GetMembershipsResult => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"get.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/membership/set.js b/lib/core/endpoints/objects/membership/set.js index e347b9f9b..9486d9228 100644 --- a/lib/core/endpoints/objects/membership/set.js +++ b/lib/core/endpoints/objects/membership/set.js @@ -20,7 +20,7 @@ var endpoint = { return _operations["default"].PNSetMembershipsOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.channels) || (params === null || params === void 0 ? void 0 : params.channels.length) === 0) { + if (!(params !== null && params !== void 0 && params.channels) || (params === null || params === void 0 ? void 0 : params.channels.length) === 0) { return 'Channels cannot be empty'; } }, @@ -61,66 +61,62 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref4) { - var tokenManager = _ref4.tokenManager; - return tokenManager.getToken('membership'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include4, _params$page, _params$page3; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : params.include) { + if (params !== null && params !== void 0 && params.include) { var _params$include, _params$include2, _params$include3; queryParams.include = []; - if ((_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if ((_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include.push('custom'); } - if ((_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.customChannelFields) { + if ((_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.customChannelFields) { queryParams.include.push('channel.custom'); } - if ((_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.channelFields) { + if ((_params$include3 = params.include) !== null && _params$include3 !== void 0 && _params$include3.channelFields) { queryParams.include.push('channel'); } queryParams.include = queryParams.include.join(','); } - if (params === null || params === void 0 ? void 0 : (_params$include4 = params.include) === null || _params$include4 === void 0 ? void 0 : _params$include4.totalCount) { + if (params !== null && params !== void 0 && (_params$include4 = params.include) !== null && _params$include4 !== void 0 && _params$include4.totalCount) { queryParams.count = true; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } - if (params === null || params === void 0 ? void 0 : params.limit) { + if (params !== null && params !== void 0 && params.limit) { queryParams.limit = params.limit; } - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref5) { - var _ref6 = (0, _slicedToArray2["default"])(_ref5, 2), - key = _ref6[0], - value = _ref6[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { + var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), + key = _ref5[0], + value = _ref5[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); diff --git a/lib/core/endpoints/objects/membership/set.js.map b/lib/core/endpoints/objects/membership/set.js.map index a56823c2b..0329b725a 100644 --- a/lib/core/endpoints/objects/membership/set.js.map +++ b/lib/core/endpoints/objects/membership/set.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/membership/set.js"],"names":["endpoint","getOperation","operationConstants","PNSetMembershipsOperation","validateParams","_","params","channels","length","usePatch","patchURL","config","subscribeKey","utils","encodeString","uuid","getUUID","patchPayload","set","remove","type","map","channel","id","custom","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","_modules","queryParams","include","customFields","push","customChannelFields","channelFields","join","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","key","value","handleResponse","response","status","data"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { Membership, PaginatedResultParams } from './membership';\nimport utils from '../../../utils';\n\ntype CommonParams = {|\n uuid?: string,\n|};\n\nexport type RemoveMembershipsParams = {|\n type: 'delete',\n channels: (string | { id: string, custom?: empty })[],\n|} & CommonParams &\n PaginatedResultParams;\n\nexport type UpsertMembershipsParams = {|\n type: 'set',\n channels: (string | { id: string, custom?: any })[],\n|} & CommonParams &\n PaginatedResultParams;\n\nexport type SetMembershipsParams = RemoveMembershipsParams | UpsertMembershipsParams;\n\nexport type SetMembershipsResult = {|\n status: 200,\n data: Membership,\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNSetMembershipsOperation,\n\n validateParams: (_, params) => {\n if (!params?.channels || params?.channels.length === 0) {\n return 'Channels cannot be empty';\n }\n },\n\n usePatch: () => true,\n\n patchURL: ({ config }, params) =>\n `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params.uuid ?? config.getUUID())}/channels`,\n\n patchPayload: (_, params) => ({\n set: [],\n remove: [],\n [params.type]: params.channels.map((channel) => {\n if (typeof channel === 'string') {\n return {\n channel: {\n id: channel,\n },\n };\n } else {\n return {\n channel: { id: channel.id },\n custom: channel.custom,\n };\n }\n }),\n }),\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('membership'),\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include) {\n queryParams.include = [];\n\n if (params.include?.customFields) {\n queryParams.include.push('custom');\n }\n\n if (params.include?.customChannelFields) {\n queryParams.include.push('channel.custom');\n }\n\n if (params.include?.channelFields) {\n queryParams.include.push('channel');\n }\n\n queryParams.include = queryParams.include.join(',');\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = true;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n if (params?.limit) {\n queryParams.limit = params.limit;\n }\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"set.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/membership/set.js"],"names":["endpoint","getOperation","operationConstants","PNSetMembershipsOperation","validateParams","_","params","channels","length","usePatch","patchURL","config","subscribeKey","utils","encodeString","uuid","getUUID","patchPayload","set","remove","type","map","channel","id","custom","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","_modules","queryParams","include","customFields","push","customChannelFields","channelFields","join","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","key","value","handleResponse","response","status","data"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { Membership, PaginatedResultParams } from './membership';\nimport utils from '../../../utils';\n\ntype CommonParams = {|\n uuid?: string,\n|};\n\nexport type RemoveMembershipsParams = {|\n type: 'delete',\n channels: (string | { id: string, custom?: empty })[],\n|} & CommonParams &\n PaginatedResultParams;\n\nexport type UpsertMembershipsParams = {|\n type: 'set',\n channels: (string | { id: string, custom?: any })[],\n|} & CommonParams &\n PaginatedResultParams;\n\nexport type SetMembershipsParams = RemoveMembershipsParams | UpsertMembershipsParams;\n\nexport type SetMembershipsResult = {|\n status: 200,\n data: Membership,\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNSetMembershipsOperation,\n\n validateParams: (_, params) => {\n if (!params?.channels || params?.channels.length === 0) {\n return 'Channels cannot be empty';\n }\n },\n\n usePatch: () => true,\n\n patchURL: ({ config }, params) =>\n `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params.uuid ?? config.getUUID())}/channels`,\n\n patchPayload: (_, params) => ({\n set: [],\n remove: [],\n [params.type]: params.channels.map((channel) => {\n if (typeof channel === 'string') {\n return {\n channel: {\n id: channel,\n },\n };\n } else {\n return {\n channel: { id: channel.id },\n custom: channel.custom,\n };\n }\n }),\n }),\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include) {\n queryParams.include = [];\n\n if (params.include?.customFields) {\n queryParams.include.push('custom');\n }\n\n if (params.include?.customChannelFields) {\n queryParams.include.push('channel.custom');\n }\n\n if (params.include?.channelFields) {\n queryParams.include.push('channel');\n }\n\n queryParams.include = queryParams.include.join(',');\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = true;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n if (params?.limit) {\n queryParams.limit = params.limit;\n }\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n prev: response.prev,\n next: response.next,\n }),\n};\n\nexport default endpoint;\n"],"file":"set.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/uuid/get.js b/lib/core/endpoints/objects/uuid/get.js index 428300749..d706fee5e 100644 --- a/lib/core/endpoints/objects/uuid/get.js +++ b/lib/core/endpoints/objects/uuid/get.js @@ -29,14 +29,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2, _params$include$custo, _params$include; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(), include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom' diff --git a/lib/core/endpoints/objects/uuid/get.js.map b/lib/core/endpoints/objects/uuid/get.js.map index f4c919fd9..805a54351 100644 --- a/lib/core/endpoints/objects/uuid/get.js.map +++ b/lib/core/endpoints/objects/uuid/get.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/uuid/get.js"],"names":["endpoint","getOperation","operationConstants","PNGetUUIDMetadataOperation","validateParams","getURL","params","config","subscribeKey","utils","encodeString","uuid","getUUID","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","include","customFields","handleResponse","_","response","status","data"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAcA,IAAMA,QAAsE,GAAG;AAC7EC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,0BAAzB;AAAA,GAD+D;AAI7EC,EAAAA,cAAc,EAAE,0BAAM,CAAE,CAJqD;AAM7EC,EAAAA,MAAM,EAAE,sBAAaC,MAAb;AAAA;;AAAA,QAAGC,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,oBAAoEC,kBAAMC,YAAN,iBAAmBJ,MAAnB,aAAmBA,MAAnB,uBAAmBA,MAAM,CAAEK,IAA3B,uDAAmCJ,MAAM,CAACK,OAAP,EAAnC,CAApE;AAAA,GANqE;AAQ7EC,EAAAA,iBAAiB,EAAE;AAAA,QAAGN,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACO,qBAAP,EAAhB;AAAA,GAR0D;AAU7EC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAV4D;AAY7EC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,MAAtB,CAAtB;AAAA,GAZ+D;AAc7EC,EAAAA,aAAa,EAAE,8BAAab,MAAb;AAAA;;AAAA,QAAGC,MAAH,SAAGA,MAAH;AAAA,WAAyB;AACtCI,MAAAA,IAAI,mBAAEL,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAEK,IAAV,yDAAkBJ,MAAM,CAACK,OAAP,EADgB;AAEtCQ,MAAAA,OAAO,EAAE,0BAACd,MAAD,aAACA,MAAD,0CAACA,MAAM,CAAEc,OAAT,oDAAC,gBAAiBC,YAAlB,yEAAkC,IAAlC,KAA2C;AAFd,KAAzB;AAAA,GAd8D;AAmB7EC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AAnB6D,CAA/E;eAyBe1B,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { UUIDMetadata } from './uuid';\nimport utils from '../../../utils';\n\nexport type GetUUIDMetadataParams = {|\n uuid?: string,\n include?: {|\n customFields: ?boolean,\n |},\n|};\n\nexport type GetUUIDMetadataResult = {|\n status: 200,\n data: UUIDMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetUUIDMetadataOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params?.uuid ?? config.getUUID())}`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('user'),\n\n prepareParams: ({ config }, params) => ({\n uuid: params?.uuid ?? config.getUUID(),\n include: (params?.include?.customFields ?? true) && 'custom',\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"get.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/uuid/get.js"],"names":["endpoint","getOperation","operationConstants","PNGetUUIDMetadataOperation","validateParams","getURL","params","config","subscribeKey","utils","encodeString","uuid","getUUID","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","customFields","handleResponse","_","response","status","data"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAcA,IAAMA,QAAsE,GAAG;AAC7EC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,0BAAzB;AAAA,GAD+D;AAI7EC,EAAAA,cAAc,EAAE,0BAAM,CAAE,CAJqD;AAM7EC,EAAAA,MAAM,EAAE,sBAAaC,MAAb;AAAA;;AAAA,QAAGC,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,oBAAoEC,kBAAMC,YAAN,iBAAmBJ,MAAnB,aAAmBA,MAAnB,uBAAmBA,MAAM,CAAEK,IAA3B,uDAAmCJ,MAAM,CAACK,OAAP,EAAnC,CAApE;AAAA,GANqE;AAQ7EC,EAAAA,iBAAiB,EAAE;AAAA,QAAGN,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACO,qBAAP,EAAhB;AAAA,GAR0D;AAU7EC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAV4D;AAY7EC,EAAAA,aAAa,EAAE,8BAAaV,MAAb;AAAA;;AAAA,QAAGC,MAAH,SAAGA,MAAH;AAAA,WAAyB;AACtCI,MAAAA,IAAI,mBAAEL,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAEK,IAAV,yDAAkBJ,MAAM,CAACK,OAAP,EADgB;AAEtCK,MAAAA,OAAO,EAAE,0BAACX,MAAD,aAACA,MAAD,0CAACA,MAAM,CAAEW,OAAT,oDAAC,gBAAiBC,YAAlB,yEAAkC,IAAlC,KAA2C;AAFd,KAAzB;AAAA,GAZ8D;AAiB7EC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AAjB6D,CAA/E;eAuBevB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { UUIDMetadata } from './uuid';\nimport utils from '../../../utils';\n\nexport type GetUUIDMetadataParams = {|\n uuid?: string,\n include?: {|\n customFields: ?boolean,\n |},\n|};\n\nexport type GetUUIDMetadataResult = {|\n status: 200,\n data: UUIDMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetUUIDMetadataOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params?.uuid ?? config.getUUID())}`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: ({ config }, params) => ({\n uuid: params?.uuid ?? config.getUUID(),\n include: (params?.include?.customFields ?? true) && 'custom',\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"get.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/uuid/get_all.js b/lib/core/endpoints/objects/uuid/get_all.js index 5c46a8ad7..a3fc6b0d7 100644 --- a/lib/core/endpoints/objects/uuid/get_all.js +++ b/lib/core/endpoints/objects/uuid/get_all.js @@ -27,50 +27,46 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, prepareParams: function prepareParams(_modules, params) { var _params$include, _params$include2, _params$page, _params$page3, _params$limit; var queryParams = {}; - if (params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) { + if (params !== null && params !== void 0 && (_params$include = params.include) !== null && _params$include !== void 0 && _params$include.customFields) { queryParams.include = 'custom'; } - if (params === null || params === void 0 ? void 0 : (_params$include2 = params.include) === null || _params$include2 === void 0 ? void 0 : _params$include2.totalCount) { + if (params !== null && params !== void 0 && (_params$include2 = params.include) !== null && _params$include2 !== void 0 && _params$include2.totalCount) { var _params$include3; queryParams.count = (_params$include3 = params.include) === null || _params$include3 === void 0 ? void 0 : _params$include3.totalCount; } - if (params === null || params === void 0 ? void 0 : (_params$page = params.page) === null || _params$page === void 0 ? void 0 : _params$page.next) { + if (params !== null && params !== void 0 && (_params$page = params.page) !== null && _params$page !== void 0 && _params$page.next) { var _params$page2; queryParams.start = (_params$page2 = params.page) === null || _params$page2 === void 0 ? void 0 : _params$page2.next; } - if (params === null || params === void 0 ? void 0 : (_params$page3 = params.page) === null || _params$page3 === void 0 ? void 0 : _params$page3.prev) { + if (params !== null && params !== void 0 && (_params$page3 = params.page) !== null && _params$page3 !== void 0 && _params$page3.prev) { var _params$page4; queryParams.end = (_params$page4 = params.page) === null || _params$page4 === void 0 ? void 0 : _params$page4.prev; } - if (params === null || params === void 0 ? void 0 : params.filter) { + if (params !== null && params !== void 0 && params.filter) { queryParams.filter = params.filter; } queryParams.limit = (_params$limit = params === null || params === void 0 ? void 0 : params.limit) !== null && _params$limit !== void 0 ? _params$limit : 100; - if (params === null || params === void 0 ? void 0 : params.sort) { + if (params !== null && params !== void 0 && params.sort) { var _params$sort; - queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref4) { - var _ref5 = (0, _slicedToArray2["default"])(_ref4, 2), - key = _ref5[0], - value = _ref5[1]; + queryParams.sort = Object.entries((_params$sort = params.sort) !== null && _params$sort !== void 0 ? _params$sort : {}).map(function (_ref3) { + var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2), + key = _ref4[0], + value = _ref4[1]; if (value === 'asc' || value === 'desc') { return "".concat(key, ":").concat(value); diff --git a/lib/core/endpoints/objects/uuid/get_all.js.map b/lib/core/endpoints/objects/uuid/get_all.js.map index 699e65438..385283823 100644 --- a/lib/core/endpoints/objects/uuid/get_all.js.map +++ b/lib/core/endpoints/objects/uuid/get_all.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/uuid/get_all.js"],"names":["endpoint","getOperation","operationConstants","PNGetAllUUIDMetadataOperation","validateParams","getURL","config","subscribeKey","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","_modules","params","queryParams","include","customFields","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","map","key","value","handleResponse","_","response","status","data"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { UUIDMetadata } from './uuid';\n\nexport type GetAllUUIDMetadataParams = {|\n filter?: string,\n sort?: { [key: string]: 'asc' | 'desc' | null },\n limit?: number,\n page?: {|\n next?: string,\n prev?: string,\n |},\n include?: {|\n totalCount?: boolean,\n customFields?: boolean,\n |},\n|};\n\nexport type GetAllUUIDMetadataResult = {|\n status: 200,\n data: UUIDMetadata[],\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetAllUUIDMetadataOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }) => `/v2/objects/${config.subscribeKey}/uuids`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('user'),\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include?.customFields) {\n queryParams.include = 'custom';\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = params.include?.totalCount;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n queryParams.limit = params?.limit ?? 100;\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response): GetAllUUIDMetadataResult => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n next: response.next,\n prev: response.prev,\n }),\n};\n\nexport default endpoint;\n"],"file":"get_all.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/uuid/get_all.js"],"names":["endpoint","getOperation","operationConstants","PNGetAllUUIDMetadataOperation","validateParams","getURL","config","subscribeKey","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","_modules","params","queryParams","include","customFields","totalCount","count","page","next","start","prev","end","filter","limit","sort","Object","entries","map","key","value","handleResponse","_","response","status","data"],"mappings":";;;;;;;;;;;AAGA;;AAyBA,IAAMA,QAA4E,GAAG;AACnFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,6BAAzB;AAAA,GADqE;AAInFC,EAAAA,cAAc,EAAE,0BAAM,CAAE,CAJ2D;AAMnFC,EAAAA,MAAM,EAAE;AAAA,QAAGC,MAAH,QAAGA,MAAH;AAAA,iCAA+BA,MAAM,CAACC,YAAtC;AAAA,GAN2E;AAQnFC,EAAAA,iBAAiB,EAAE;AAAA,QAAGF,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACG,qBAAP,EAAhB;AAAA,GARgE;AAUnFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAVkE;AAYnFC,EAAAA,aAAa,EAAE,uBAACC,QAAD,EAAWC,MAAX,EAAsB;AAAA;;AACnC,QAAMC,WAAW,GAAG,EAApB;;AAEA,QAAID,MAAJ,aAAIA,MAAJ,kCAAIA,MAAM,CAAEE,OAAZ,4CAAI,gBAAiBC,YAArB,EAAmC;AACjCF,MAAAA,WAAW,CAACC,OAAZ,GAAsB,QAAtB;AACD;;AAED,QAAIF,MAAJ,aAAIA,MAAJ,mCAAIA,MAAM,CAAEE,OAAZ,6CAAI,iBAAiBE,UAArB,EAAiC;AAAA;;AAC/BH,MAAAA,WAAW,CAACI,KAAZ,uBAAoBL,MAAM,CAACE,OAA3B,qDAAoB,iBAAgBE,UAApC;AACD;;AAED,QAAIJ,MAAJ,aAAIA,MAAJ,+BAAIA,MAAM,CAAEM,IAAZ,yCAAI,aAAcC,IAAlB,EAAwB;AAAA;;AACtBN,MAAAA,WAAW,CAACO,KAAZ,oBAAoBR,MAAM,CAACM,IAA3B,kDAAoB,cAAaC,IAAjC;AACD;;AAED,QAAIP,MAAJ,aAAIA,MAAJ,gCAAIA,MAAM,CAAEM,IAAZ,0CAAI,cAAcG,IAAlB,EAAwB;AAAA;;AACtBR,MAAAA,WAAW,CAACS,GAAZ,oBAAkBV,MAAM,CAACM,IAAzB,kDAAkB,cAAaG,IAA/B;AACD;;AAED,QAAIT,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAEW,MAAZ,EAAoB;AAClBV,MAAAA,WAAW,CAACU,MAAZ,GAAqBX,MAAM,CAACW,MAA5B;AACD;;AAEDV,IAAAA,WAAW,CAACW,KAAZ,oBAAoBZ,MAApB,aAAoBA,MAApB,uBAAoBA,MAAM,CAAEY,KAA5B,yDAAqC,GAArC;;AAEA,QAAIZ,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAEa,IAAZ,EAAkB;AAAA;;AAChBZ,MAAAA,WAAW,CAACY,IAAZ,GAAmBC,MAAM,CAACC,OAAP,iBAAef,MAAM,CAACa,IAAtB,uDAA8B,EAA9B,EAAkCG,GAAlC,CAAsC,iBAAkB;AAAA;AAAA,YAAhBC,GAAgB;AAAA,YAAXC,KAAW;;AACzE,YAAIA,KAAK,KAAK,KAAV,IAAmBA,KAAK,KAAK,MAAjC,EAAyC;AACvC,2BAAUD,GAAV,cAAiBC,KAAjB;AACD,SAFD,MAEO;AACL,iBAAOD,GAAP;AACD;AACF,OANkB,CAAnB;AAOD;;AAED,WAAOhB,WAAP;AACD,GAhDkF;AAkDnFkB,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,QAAJ;AAAA,WAA4C;AAC1DC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADyC;AAE1DC,MAAAA,IAAI,EAAEF,QAAQ,CAACE,IAF2C;AAG1DnB,MAAAA,UAAU,EAAEiB,QAAQ,CAACjB,UAHqC;AAI1DG,MAAAA,IAAI,EAAEc,QAAQ,CAACd,IAJ2C;AAK1DE,MAAAA,IAAI,EAAEY,QAAQ,CAACZ;AAL2C,KAA5C;AAAA;AAlDmE,CAArF;eA2DetB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { UUIDMetadata } from './uuid';\n\nexport type GetAllUUIDMetadataParams = {|\n filter?: string,\n sort?: { [key: string]: 'asc' | 'desc' | null },\n limit?: number,\n page?: {|\n next?: string,\n prev?: string,\n |},\n include?: {|\n totalCount?: boolean,\n customFields?: boolean,\n |},\n|};\n\nexport type GetAllUUIDMetadataResult = {|\n status: 200,\n data: UUIDMetadata[],\n totalCount?: number,\n prev?: string,\n next?: string,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNGetAllUUIDMetadataOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }) => `/v2/objects/${config.subscribeKey}/uuids`,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: (_modules, params) => {\n const queryParams = {};\n\n if (params?.include?.customFields) {\n queryParams.include = 'custom';\n }\n\n if (params?.include?.totalCount) {\n queryParams.count = params.include?.totalCount;\n }\n\n if (params?.page?.next) {\n queryParams.start = params.page?.next;\n }\n\n if (params?.page?.prev) {\n queryParams.end = params.page?.prev;\n }\n\n if (params?.filter) {\n queryParams.filter = params.filter;\n }\n\n queryParams.limit = params?.limit ?? 100;\n\n if (params?.sort) {\n queryParams.sort = Object.entries(params.sort ?? {}).map(([key, value]) => {\n if (value === 'asc' || value === 'desc') {\n return `${key}:${value}`;\n } else {\n return key;\n }\n });\n }\n\n return queryParams;\n },\n\n handleResponse: (_, response): GetAllUUIDMetadataResult => ({\n status: response.status,\n data: response.data,\n totalCount: response.totalCount,\n next: response.next,\n prev: response.prev,\n }),\n};\n\nexport default endpoint;\n"],"file":"get_all.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/uuid/remove.js b/lib/core/endpoints/objects/uuid/remove.js index 9bc56a96a..010e2f5ca 100644 --- a/lib/core/endpoints/objects/uuid/remove.js +++ b/lib/core/endpoints/objects/uuid/remove.js @@ -32,14 +32,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID() }; diff --git a/lib/core/endpoints/objects/uuid/remove.js.map b/lib/core/endpoints/objects/uuid/remove.js.map index 7831d7eef..90d63ddf5 100644 --- a/lib/core/endpoints/objects/uuid/remove.js.map +++ b/lib/core/endpoints/objects/uuid/remove.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/uuid/remove.js"],"names":["endpoint","getOperation","operationConstants","PNRemoveUUIDMetadataOperation","validateParams","getURL","params","config","subscribeKey","utils","encodeString","uuid","getUUID","useDelete","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","handleResponse","_","response","status","data"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAWA,IAAMA,QAA4E,GAAG;AACnFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,6BAAzB;AAAA,GADqE;AAInFC,EAAAA,cAAc,EAAE,0BAAM,CAAE,CAJ2D;AAMnFC,EAAAA,MAAM,EAAE,sBAAaC,MAAb;AAAA;;AAAA,QAAGC,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,oBAAoEC,kBAAMC,YAAN,iBAAmBJ,MAAnB,aAAmBA,MAAnB,uBAAmBA,MAAM,CAAEK,IAA3B,uDAAmCJ,MAAM,CAACK,OAAP,EAAnC,CAApE;AAAA,GAN2E;AAOnFC,EAAAA,SAAS,EAAE;AAAA,WAAM,IAAN;AAAA,GAPwE;AASnFC,EAAAA,iBAAiB,EAAE;AAAA,QAAGP,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACQ,qBAAP,EAAhB;AAAA,GATgE;AAWnFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAXkE;AAanFC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,MAAtB,CAAtB;AAAA,GAbqE;AAenFC,EAAAA,aAAa,EAAE,8BAAad,MAAb;AAAA;;AAAA,QAAGC,MAAH,SAAGA,MAAH;AAAA,WAAyB;AACtCI,MAAAA,IAAI,mBAAEL,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAEK,IAAV,yDAAkBJ,MAAM,CAACK,OAAP;AADgB,KAAzB;AAAA,GAfoE;AAmBnFS,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AAnBmE,CAArF;eAyBezB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { UUIDMetadata } from './uuid';\nimport utils from '../../../utils';\n\nexport type RemoveUUIDMetadataParams = {|\n uuid?: string,\n|};\n\nexport type RemoveUUIDMetadataResult = {|\n status: 200,\n data: UUIDMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNRemoveUUIDMetadataOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params?.uuid ?? config.getUUID())}`,\n useDelete: () => true,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('user'),\n\n prepareParams: ({ config }, params) => ({\n uuid: params?.uuid ?? config.getUUID(),\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"remove.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/uuid/remove.js"],"names":["endpoint","getOperation","operationConstants","PNRemoveUUIDMetadataOperation","validateParams","getURL","params","config","subscribeKey","utils","encodeString","uuid","getUUID","useDelete","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","_","response","status","data"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAWA,IAAMA,QAA4E,GAAG;AACnFC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,6BAAzB;AAAA,GADqE;AAInFC,EAAAA,cAAc,EAAE,0BAAM,CAAE,CAJ2D;AAMnFC,EAAAA,MAAM,EAAE,sBAAaC,MAAb;AAAA;;AAAA,QAAGC,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,oBAAoEC,kBAAMC,YAAN,iBAAmBJ,MAAnB,aAAmBA,MAAnB,uBAAmBA,MAAM,CAAEK,IAA3B,uDAAmCJ,MAAM,CAACK,OAAP,EAAnC,CAApE;AAAA,GAN2E;AAOnFC,EAAAA,SAAS,EAAE;AAAA,WAAM,IAAN;AAAA,GAPwE;AASnFC,EAAAA,iBAAiB,EAAE;AAAA,QAAGP,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACQ,qBAAP,EAAhB;AAAA,GATgE;AAWnFC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAXkE;AAanFC,EAAAA,aAAa,EAAE,8BAAaX,MAAb;AAAA;;AAAA,QAAGC,MAAH,SAAGA,MAAH;AAAA,WAAyB;AACtCI,MAAAA,IAAI,mBAAEL,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAEK,IAAV,yDAAkBJ,MAAM,CAACK,OAAP;AADgB,KAAzB;AAAA,GAboE;AAiBnFM,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCC,MAAAA,IAAI,EAAEF,QAAQ,CAACE;AAFiB,KAAlB;AAAA;AAjBmE,CAArF;eAuBetB,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { UUIDMetadata } from './uuid';\nimport utils from '../../../utils';\n\nexport type RemoveUUIDMetadataParams = {|\n uuid?: string,\n|};\n\nexport type RemoveUUIDMetadataResult = {|\n status: 200,\n data: UUIDMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNRemoveUUIDMetadataOperation,\n\n // No required parameters.\n validateParams: () => {},\n\n getURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params?.uuid ?? config.getUUID())}`,\n useDelete: () => true,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: ({ config }, params) => ({\n uuid: params?.uuid ?? config.getUUID(),\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"remove.js"} \ No newline at end of file diff --git a/lib/core/endpoints/objects/uuid/set.js b/lib/core/endpoints/objects/uuid/set.js index c93201978..6c7fa2cdd 100644 --- a/lib/core/endpoints/objects/uuid/set.js +++ b/lib/core/endpoints/objects/uuid/set.js @@ -16,7 +16,7 @@ var endpoint = { return _operations["default"].PNSetUUIDMetadataOperation; }, validateParams: function validateParams(_, params) { - if (!(params === null || params === void 0 ? void 0 : params.data)) { + if (!(params !== null && params !== void 0 && params.data)) { return 'Data cannot be empty'; } }, @@ -39,14 +39,10 @@ var endpoint = { isAuthSupported: function isAuthSupported() { return true; }, - getAuthToken: function getAuthToken(_ref3) { - var tokenManager = _ref3.tokenManager; - return tokenManager.getToken('user'); - }, - prepareParams: function prepareParams(_ref4, params) { + prepareParams: function prepareParams(_ref3, params) { var _params$uuid2, _params$include$custo, _params$include; - var config = _ref4.config; + var config = _ref3.config; return { uuid: (_params$uuid2 = params === null || params === void 0 ? void 0 : params.uuid) !== null && _params$uuid2 !== void 0 ? _params$uuid2 : config.getUUID(), include: ((_params$include$custo = params === null || params === void 0 ? void 0 : (_params$include = params.include) === null || _params$include === void 0 ? void 0 : _params$include.customFields) !== null && _params$include$custo !== void 0 ? _params$include$custo : true) && 'custom' diff --git a/lib/core/endpoints/objects/uuid/set.js.map b/lib/core/endpoints/objects/uuid/set.js.map index 86a1e33cd..10cc5b69b 100644 --- a/lib/core/endpoints/objects/uuid/set.js.map +++ b/lib/core/endpoints/objects/uuid/set.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/objects/uuid/set.js"],"names":["endpoint","getOperation","operationConstants","PNSetUUIDMetadataOperation","validateParams","_","params","data","usePatch","patchURL","config","subscribeKey","utils","encodeString","uuid","getUUID","patchPayload","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","tokenManager","getToken","prepareParams","include","customFields","handleResponse","response","status"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAeA,IAAMA,QAAsE,GAAG;AAC7EC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,0BAAzB;AAAA,GAD+D;AAG7EC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,uBAACA,MAAM,CAAEC,IAAT,CAAJ,EAAmB;AACjB,aAAO,sBAAP;AACD;AACF,GAP4E;AAS7EC,EAAAA,QAAQ,EAAE;AAAA,WAAM,IAAN;AAAA,GATmE;AAW7EC,EAAAA,QAAQ,EAAE,wBAAaH,MAAb;AAAA;;AAAA,QAAGI,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,oBAAoEC,kBAAMC,YAAN,iBAAmBP,MAAM,CAACQ,IAA1B,uDAAkCJ,MAAM,CAACK,OAAP,EAAlC,CAApE;AAAA,GAXmE;AAa7EC,EAAAA,YAAY,EAAE,sBAACX,CAAD,EAAIC,MAAJ;AAAA,WAAeA,MAAM,CAACC,IAAtB;AAAA,GAb+D;AAe7EU,EAAAA,iBAAiB,EAAE;AAAA,QAAGP,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACQ,qBAAP,EAAhB;AAAA,GAf0D;AAiB7EC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAjB4D;AAmB7EC,EAAAA,YAAY,EAAE;AAAA,QAAGC,YAAH,SAAGA,YAAH;AAAA,WAAsBA,YAAY,CAACC,QAAb,CAAsB,MAAtB,CAAtB;AAAA,GAnB+D;AAqB7EC,EAAAA,aAAa,EAAE,8BAAajB,MAAb;AAAA;;AAAA,QAAGI,MAAH,SAAGA,MAAH;AAAA,WAAyB;AACtCI,MAAAA,IAAI,mBAAER,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAEQ,IAAV,yDAAkBJ,MAAM,CAACK,OAAP,EADgB;AAEtCS,MAAAA,OAAO,EAAE,0BAAClB,MAAD,aAACA,MAAD,0CAACA,MAAM,CAAEkB,OAAT,oDAAC,gBAAiBC,YAAlB,yEAAkC,IAAlC,KAA2C;AAFd,KAAzB;AAAA,GArB8D;AA0B7EC,EAAAA,cAAc,EAAE,wBAACrB,CAAD,EAAIsB,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhCrB,MAAAA,IAAI,EAAEoB,QAAQ,CAACpB;AAFiB,KAAlB;AAAA;AA1B6D,CAA/E;eAgCeP,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { UUIDMetadata } from './uuid';\nimport utils from '../../../utils';\n\nexport type SetUUIDMetadataParams = {|\n uuid?: string,\n include?: {|\n customFields: ?boolean,\n |},\n data: $Shape,\n|};\n\nexport type SetUUIDMetadataResult = {|\n status: 200,\n data: UUIDMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNSetUUIDMetadataOperation,\n\n validateParams: (_, params) => {\n if (!params?.data) {\n return 'Data cannot be empty';\n }\n },\n\n usePatch: () => true,\n\n patchURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params.uuid ?? config.getUUID())}`,\n\n patchPayload: (_, params) => params.data,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n getAuthToken: ({ tokenManager }) => tokenManager.getToken('user'),\n\n prepareParams: ({ config }, params) => ({\n uuid: params?.uuid ?? config.getUUID(),\n include: (params?.include?.customFields ?? true) && 'custom',\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"set.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/objects/uuid/set.js"],"names":["endpoint","getOperation","operationConstants","PNSetUUIDMetadataOperation","validateParams","_","params","data","usePatch","patchURL","config","subscribeKey","utils","encodeString","uuid","getUUID","patchPayload","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","customFields","handleResponse","response","status"],"mappings":";;;;;;;;;AAGA;;AAEA;;AAeA,IAAMA,QAAsE,GAAG;AAC7EC,EAAAA,YAAY,EAAE;AAAA,WAAMC,uBAAmBC,0BAAzB;AAAA,GAD+D;AAG7EC,EAAAA,cAAc,EAAE,wBAACC,CAAD,EAAIC,MAAJ,EAAe;AAC7B,QAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEC,IAAT,CAAJ,EAAmB;AACjB,aAAO,sBAAP;AACD;AACF,GAP4E;AAS7EC,EAAAA,QAAQ,EAAE;AAAA,WAAM,IAAN;AAAA,GATmE;AAW7EC,EAAAA,QAAQ,EAAE,wBAAaH,MAAb;AAAA;;AAAA,QAAGI,MAAH,QAAGA,MAAH;AAAA,iCAAuCA,MAAM,CAACC,YAA9C,oBAAoEC,kBAAMC,YAAN,iBAAmBP,MAAM,CAACQ,IAA1B,uDAAkCJ,MAAM,CAACK,OAAP,EAAlC,CAApE;AAAA,GAXmE;AAa7EC,EAAAA,YAAY,EAAE,sBAACX,CAAD,EAAIC,MAAJ;AAAA,WAAeA,MAAM,CAACC,IAAtB;AAAA,GAb+D;AAe7EU,EAAAA,iBAAiB,EAAE;AAAA,QAAGP,MAAH,SAAGA,MAAH;AAAA,WAAgBA,MAAM,CAACQ,qBAAP,EAAhB;AAAA,GAf0D;AAiB7EC,EAAAA,eAAe,EAAE;AAAA,WAAM,IAAN;AAAA,GAjB4D;AAmB7EC,EAAAA,aAAa,EAAE,8BAAad,MAAb;AAAA;;AAAA,QAAGI,MAAH,SAAGA,MAAH;AAAA,WAAyB;AACtCI,MAAAA,IAAI,mBAAER,MAAF,aAAEA,MAAF,uBAAEA,MAAM,CAAEQ,IAAV,yDAAkBJ,MAAM,CAACK,OAAP,EADgB;AAEtCM,MAAAA,OAAO,EAAE,0BAACf,MAAD,aAACA,MAAD,0CAACA,MAAM,CAAEe,OAAT,oDAAC,gBAAiBC,YAAlB,yEAAkC,IAAlC,KAA2C;AAFd,KAAzB;AAAA,GAnB8D;AAwB7EC,EAAAA,cAAc,EAAE,wBAAClB,CAAD,EAAImB,QAAJ;AAAA,WAAkB;AAChCC,MAAAA,MAAM,EAAED,QAAQ,CAACC,MADe;AAEhClB,MAAAA,IAAI,EAAEiB,QAAQ,CAACjB;AAFiB,KAAlB;AAAA;AAxB6D,CAA/E;eA8BeP,Q","sourcesContent":["/** @flow */\n\nimport type { EndpointConfig } from '../../endpoint';\nimport operationConstants from '../../../constants/operations';\nimport type { UUIDMetadata } from './uuid';\nimport utils from '../../../utils';\n\nexport type SetUUIDMetadataParams = {|\n uuid?: string,\n include?: {|\n customFields: ?boolean,\n |},\n data: $Shape,\n|};\n\nexport type SetUUIDMetadataResult = {|\n status: 200,\n data: UUIDMetadata,\n|};\n\nconst endpoint: EndpointConfig = {\n getOperation: () => operationConstants.PNSetUUIDMetadataOperation,\n\n validateParams: (_, params) => {\n if (!params?.data) {\n return 'Data cannot be empty';\n }\n },\n\n usePatch: () => true,\n\n patchURL: ({ config }, params) => `/v2/objects/${config.subscribeKey}/uuids/${utils.encodeString(params.uuid ?? config.getUUID())}`,\n\n patchPayload: (_, params) => params.data,\n\n getRequestTimeout: ({ config }) => config.getTransactionTimeout(),\n\n isAuthSupported: () => true,\n\n prepareParams: ({ config }, params) => ({\n uuid: params?.uuid ?? config.getUUID(),\n include: (params?.include?.customFields ?? true) && 'custom',\n }),\n\n handleResponse: (_, response) => ({\n status: response.status,\n data: response.data,\n }),\n};\n\nexport default endpoint;\n"],"file":"set.js"} \ No newline at end of file diff --git a/lib/core/endpoints/presence/get_state.js b/lib/core/endpoints/presence/get_state.js index 1f3cabb9c..c3b1046b4 100644 --- a/lib/core/endpoints/presence/get_state.js +++ b/lib/core/endpoints/presence/get_state.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/presence/get_state.js.map b/lib/core/endpoints/presence/get_state.js.map index 18a6507d4..961319199 100644 --- a/lib/core/endpoints/presence/get_state.js.map +++ b/lib/core/endpoints/presence/get_state.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/presence/get_state.js"],"names":["getOperation","operationConstants","PNGetStateOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","uuid","UUID","channels","stringifiedChannels","length","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","channelGroups","params","handleResponse","serverResponse","channelsResponse","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AAAA,MAC/CC,MAD+C,GACpCD,OADoC,CAC/CC,MAD+C;AAGrD,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAwCI,cAAxC,EAAmF;AAAA,MAClFH,MADkF,GACvED,OADuE,CAClFC,MADkF;AAAA,6BAE5CG,cAF4C,CAElFC,IAFkF;AAAA,MAElFA,IAFkF,qCAE3EJ,MAAM,CAACK,IAFoE;AAAA,8BAE5CF,cAF4C,CAE9DG,QAF8D;AAAA,MAE9DA,QAF8D,sCAEnD,EAFmD;AAGxF,MAAIC,mBAAmB,GAAGD,QAAQ,CAACE,MAAT,GAAkB,CAAlB,GAAsBF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAAtB,GAA2C,GAArE;AACA,wCAA+BT,MAAM,CAACC,YAAtC,sBAA8DS,kBAAMC,YAAN,CAAmBJ,mBAAnB,CAA9D,mBAA8GH,IAA9G;AACD;;AAEM,SAASQ,iBAAT,OAA8D;AAAA,MAAjCZ,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACa,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBhB,OAAvB,EAA+CI,cAA/C,EAA0F;AAAA,+BAClEA,cADkE,CACzFa,aADyF;AAAA,MACzFA,aADyF,uCACzE,EADyE;AAE/F,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAID,aAAa,CAACR,MAAd,GAAuB,CAA3B,EAA8B;AAC5BS,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0BD,aAAa,CAACP,IAAd,CAAmB,GAAnB,CAA1B;AACD;;AAED,SAAOQ,MAAP;AACD;;AAEM,SAASC,cAAT,CAAwBnB,OAAxB,EAAgDoB,cAAhD,EAAwEhB,cAAxE,EAA6H;AAAA,+BACtFA,cADsF,CAC5HG,QAD4H;AAAA,MAC5HA,QAD4H,uCACjH,EADiH;AAAA,+BACtFH,cADsF,CAC7Ga,aAD6G;AAAA,MAC7GA,aAD6G,uCAC7F,EAD6F;AAElI,MAAII,gBAAgB,GAAG,EAAvB;;AAEA,MAAId,QAAQ,CAACE,MAAT,KAAoB,CAApB,IAAyBQ,aAAa,CAACR,MAAd,KAAyB,CAAtD,EAAyD;AACvDY,IAAAA,gBAAgB,CAACd,QAAQ,CAAC,CAAD,CAAT,CAAhB,GAAgCa,cAAc,CAACE,OAA/C;AACD,GAFD,MAEO;AACLD,IAAAA,gBAAgB,GAAGD,cAAc,CAACE,OAAlC;AACD;;AAED,SAAO;AAAEf,IAAAA,QAAQ,EAAEc;AAAZ,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport { GetStateArguments, GetStateResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetStateOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: GetStateArguments): string {\n let { config } = modules;\n let { uuid = config.UUID, channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/presence/sub-key/${config.subscribeKey}/channel/${utils.encodeString(stringifiedChannels)}/uuid/${uuid}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: GetStateArguments): Object {\n let { channelGroups = [] } = incomingParams;\n const params = {};\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n return params;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object, incomingParams: GetStateArguments): GetStateResponse {\n let { channels = [], channelGroups = [] } = incomingParams;\n let channelsResponse = {};\n\n if (channels.length === 1 && channelGroups.length === 0) {\n channelsResponse[channels[0]] = serverResponse.payload;\n } else {\n channelsResponse = serverResponse.payload;\n }\n\n return { channels: channelsResponse };\n}\n"],"file":"get_state.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/presence/get_state.js"],"names":["getOperation","operationConstants","PNGetStateOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","uuid","UUID","channels","stringifiedChannels","length","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","channelGroups","params","handleResponse","serverResponse","channelsResponse","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AACrD,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AAEA,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAwCI,cAAxC,EAAmF;AACxF,MAAMH,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AACA,6BAA4CG,cAA5C,CAAMC,IAAN;AAAA,MAAMA,IAAN,qCAAaJ,MAAM,CAACK,IAApB;AAAA,8BAA4CF,cAA5C,CAA0BG,QAA1B;AAAA,MAA0BA,QAA1B,sCAAqC,EAArC;AACA,MAAIC,mBAAmB,GAAGD,QAAQ,CAACE,MAAT,GAAkB,CAAlB,GAAsBF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAAtB,GAA2C,GAArE;AACA,wCAA+BT,MAAM,CAACC,YAAtC,sBAA8DS,kBAAMC,YAAN,CAAmBJ,mBAAnB,CAA9D,mBAA8GH,IAA9G;AACD;;AAEM,SAASQ,iBAAT,OAA8D;AAAA,MAAjCZ,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACa,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBhB,OAAvB,EAA+CI,cAA/C,EAA0F;AAC/F,+BAA6BA,cAA7B,CAAMa,aAAN;AAAA,MAAMA,aAAN,uCAAsB,EAAtB;AACA,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAID,aAAa,CAACR,MAAd,GAAuB,CAA3B,EAA8B;AAC5BS,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0BD,aAAa,CAACP,IAAd,CAAmB,GAAnB,CAA1B;AACD;;AAED,SAAOQ,MAAP;AACD;;AAEM,SAASC,cAAT,CAAwBnB,OAAxB,EAAgDoB,cAAhD,EAAwEhB,cAAxE,EAA6H;AAClI,+BAA4CA,cAA5C,CAAMG,QAAN;AAAA,MAAMA,QAAN,uCAAiB,EAAjB;AAAA,+BAA4CH,cAA5C,CAAqBa,aAArB;AAAA,MAAqBA,aAArB,uCAAqC,EAArC;AACA,MAAII,gBAAgB,GAAG,EAAvB;;AAEA,MAAId,QAAQ,CAACE,MAAT,KAAoB,CAApB,IAAyBQ,aAAa,CAACR,MAAd,KAAyB,CAAtD,EAAyD;AACvDY,IAAAA,gBAAgB,CAACd,QAAQ,CAAC,CAAD,CAAT,CAAhB,GAAgCa,cAAc,CAACE,OAA/C;AACD,GAFD,MAEO;AACLD,IAAAA,gBAAgB,GAAGD,cAAc,CAACE,OAAlC;AACD;;AAED,SAAO;AAAEf,IAAAA,QAAQ,EAAEc;AAAZ,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport { GetStateArguments, GetStateResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetStateOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: GetStateArguments): string {\n let { config } = modules;\n let { uuid = config.UUID, channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/presence/sub-key/${config.subscribeKey}/channel/${utils.encodeString(stringifiedChannels)}/uuid/${uuid}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: GetStateArguments): Object {\n let { channelGroups = [] } = incomingParams;\n const params = {};\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n return params;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object, incomingParams: GetStateArguments): GetStateResponse {\n let { channels = [], channelGroups = [] } = incomingParams;\n let channelsResponse = {};\n\n if (channels.length === 1 && channelGroups.length === 0) {\n channelsResponse[channels[0]] = serverResponse.payload;\n } else {\n channelsResponse = serverResponse.payload;\n }\n\n return { channels: channelsResponse };\n}\n"],"file":"get_state.js"} \ No newline at end of file diff --git a/lib/core/endpoints/presence/heartbeat.js b/lib/core/endpoints/presence/heartbeat.js index 6f23aaa6d..cbf1b21f8 100644 --- a/lib/core/endpoints/presence/heartbeat.js +++ b/lib/core/endpoints/presence/heartbeat.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; +exports.getRequestTimeout = getRequestTimeout; exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getRequestTimeout = getRequestTimeout; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/presence/heartbeat.js.map b/lib/core/endpoints/presence/heartbeat.js.map index 9d6231c76..a9a1116bd 100644 --- a/lib/core/endpoints/presence/heartbeat.js.map +++ b/lib/core/endpoints/presence/heartbeat.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/presence/heartbeat.js"],"names":["getOperation","operationConstants","PNHeartbeatOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","channels","stringifiedChannels","length","join","utils","encodeString","isAuthSupported","getRequestTimeout","getTransactionTimeout","prepareParams","channelGroups","state","params","JSON","stringify","heartbeat","getPresenceTimeout","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,oBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AAAA,MAC/CC,MAD+C,GACpCD,OADoC,CAC/CC,MAD+C;AAGrD,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAwCI,cAAxC,EAAoF;AAAA,MACnFH,MADmF,GACxED,OADwE,CACnFC,MADmF;AAAA,8BAEjEG,cAFiE,CAEnFC,QAFmF;AAAA,MAEnFA,QAFmF,sCAExE,EAFwE;AAGzF,MAAIC,mBAAmB,GAAGD,QAAQ,CAACE,MAAT,GAAkB,CAAlB,GAAsBF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAAtB,GAA2C,GAArE;AACA,wCAA+BP,MAAM,CAACC,YAAtC,sBAA8DO,kBAAMC,YAAN,CAAmBJ,mBAAnB,CAA9D;AACD;;AAEM,SAASK,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,iBAAT,OAAsD;AAAA,MAAzBX,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACY,qBAAP,EAAP;AACD;;AAEM,SAASC,aAAT,CAAuBd,OAAvB,EAA+CI,cAA/C,EAA2F;AAAA,+BACvDA,cADuD,CAC1FW,aAD0F;AAAA,MAC1FA,aAD0F,uCAC1E,EAD0E;AAAA,8BACvDX,cADuD,CACtEY,KADsE;AAAA,MACtEA,KADsE,sCAC9D,EAD8D;AAAA,MAE1Ff,MAF0F,GAE/ED,OAF+E,CAE1FC,MAF0F;AAGhG,MAAMgB,MAAM,GAAG,EAAf;;AAEA,MAAIF,aAAa,CAACR,MAAd,GAAuB,CAA3B,EAA8B;AAC5BU,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0BF,aAAa,CAACP,IAAd,CAAmB,GAAnB,CAA1B;AACD;;AAEDS,EAAAA,MAAM,CAACD,KAAP,GAAeE,IAAI,CAACC,SAAL,CAAeH,KAAf,CAAf;AACAC,EAAAA,MAAM,CAACG,SAAP,GAAmBnB,MAAM,CAACoB,kBAAP,EAAnB;AACA,SAAOJ,MAAP;AACD;;AAEM,SAASK,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { HeartbeatArguments, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNHeartbeatOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: HeartbeatArguments): string {\n let { config } = modules;\n let { channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/presence/sub-key/${config.subscribeKey}/channel/${utils.encodeString(stringifiedChannels)}/heartbeat`;\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: HeartbeatArguments): Object {\n let { channelGroups = [], state = {} } = incomingParams;\n let { config } = modules;\n const params = {};\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n params.state = JSON.stringify(state);\n params.heartbeat = config.getPresenceTimeout();\n return params;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"heartbeat.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/presence/heartbeat.js"],"names":["getOperation","operationConstants","PNHeartbeatOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","channels","stringifiedChannels","length","join","utils","encodeString","isAuthSupported","getRequestTimeout","getTransactionTimeout","prepareParams","channelGroups","state","params","JSON","stringify","heartbeat","getPresenceTimeout","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,oBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AACrD,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AAEA,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAwCI,cAAxC,EAAoF;AACzF,MAAMH,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AACA,8BAAwBG,cAAxB,CAAMC,QAAN;AAAA,MAAMA,QAAN,sCAAiB,EAAjB;AACA,MAAIC,mBAAmB,GAAGD,QAAQ,CAACE,MAAT,GAAkB,CAAlB,GAAsBF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAAtB,GAA2C,GAArE;AACA,wCAA+BP,MAAM,CAACC,YAAtC,sBAA8DO,kBAAMC,YAAN,CAAmBJ,mBAAnB,CAA9D;AACD;;AAEM,SAASK,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,iBAAT,OAAsD;AAAA,MAAzBX,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACY,qBAAP,EAAP;AACD;;AAEM,SAASC,aAAT,CAAuBd,OAAvB,EAA+CI,cAA/C,EAA2F;AAChG,+BAAyCA,cAAzC,CAAMW,aAAN;AAAA,MAAMA,aAAN,uCAAsB,EAAtB;AAAA,8BAAyCX,cAAzC,CAA0BY,KAA1B;AAAA,MAA0BA,KAA1B,sCAAkC,EAAlC;AACA,MAAMf,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AACA,MAAMgB,MAAM,GAAG,EAAf;;AAEA,MAAIF,aAAa,CAACR,MAAd,GAAuB,CAA3B,EAA8B;AAC5BU,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0BF,aAAa,CAACP,IAAd,CAAmB,GAAnB,CAA1B;AACD;;AAEDS,EAAAA,MAAM,CAACD,KAAP,GAAeE,IAAI,CAACC,SAAL,CAAeH,KAAf,CAAf;AACAC,EAAAA,MAAM,CAACG,SAAP,GAAmBnB,MAAM,CAACoB,kBAAP,EAAnB;AACA,SAAOJ,MAAP;AACD;;AAEM,SAASK,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { HeartbeatArguments, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNHeartbeatOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: HeartbeatArguments): string {\n let { config } = modules;\n let { channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/presence/sub-key/${config.subscribeKey}/channel/${utils.encodeString(stringifiedChannels)}/heartbeat`;\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: HeartbeatArguments): Object {\n let { channelGroups = [], state = {} } = incomingParams;\n let { config } = modules;\n const params = {};\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n params.state = JSON.stringify(state);\n params.heartbeat = config.getPresenceTimeout();\n return params;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"heartbeat.js"} \ No newline at end of file diff --git a/lib/core/endpoints/presence/here_now.js b/lib/core/endpoints/presence/here_now.js index ecd3e6217..22f872ce4 100644 --- a/lib/core/endpoints/presence/here_now.js +++ b/lib/core/endpoints/presence/here_now.js @@ -6,13 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleError = handleError; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; -exports.handleError = handleError; +exports.validateParams = validateParams; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); @@ -22,7 +22,7 @@ var _operations = _interopRequireDefault(require("../../constants/operations")); var _utils = _interopRequireDefault(require("../../utils")); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } diff --git a/lib/core/endpoints/presence/here_now.js.map b/lib/core/endpoints/presence/here_now.js.map index 5d94328c2..9fccd9787 100644 --- a/lib/core/endpoints/presence/here_now.js.map +++ b/lib/core/endpoints/presence/here_now.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/presence/here_now.js"],"names":["getOperation","operationConstants","PNHereNowOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","channels","channelGroups","baseURL","length","stringifiedChannels","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","includeUUIDs","includeState","queryParameters","params","disable_uuids","state","handleResponse","serverResponse","prepareSingularChannel","response","occupantsList","totalChannels","totalOccupancy","occupancy","occupants","name","uuids","forEach","uuidEntry","push","uuid","prepareMultipleChannel","payload","total_channels","total_occupancy","Object","keys","channelName","channelEntry","handleError","status","statusCode","includes","errorData","message"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport { HereNowArguments, ModulesInject, StatusAnnouncement } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNHereNowOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: HereNowArguments\n): string {\n let { config } = modules;\n let { channels = [], channelGroups = [] } = incomingParams;\n let baseURL = `/v2/presence/sub-key/${config.subscribeKey}`;\n\n if (channels.length > 0 || channelGroups.length > 0) {\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n baseURL += `/channel/${utils.encodeString(stringifiedChannels)}`;\n }\n\n return baseURL;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: HereNowArguments\n): Object {\n let {\n channelGroups = [],\n includeUUIDs = true,\n includeState = false,\n queryParameters = {}\n } = incomingParams;\n let params = {};\n\n if (!includeUUIDs) params.disable_uuids = 1;\n if (includeState) params.state = 1;\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n params = { ...params, ...queryParameters };\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: Object,\n incomingParams: HereNowArguments\n): Object {\n let {\n channels = [],\n channelGroups = [],\n includeUUIDs = true,\n includeState = false,\n } = incomingParams;\n\n let prepareSingularChannel = () => {\n let response = {};\n let occupantsList = [];\n response.totalChannels = 1;\n response.totalOccupancy = serverResponse.occupancy;\n response.channels = {};\n response.channels[channels[0]] = {\n occupants: occupantsList,\n name: channels[0],\n occupancy: serverResponse.occupancy,\n };\n\n // We have had issues in the past with server returning responses\n // that contain no uuids array\n if (includeUUIDs && serverResponse.uuids) {\n serverResponse.uuids.forEach((uuidEntry) => {\n if (includeState) {\n occupantsList.push({ state: uuidEntry.state, uuid: uuidEntry.uuid });\n } else {\n occupantsList.push({ state: null, uuid: uuidEntry });\n }\n });\n }\n\n return response;\n };\n\n let prepareMultipleChannel = () => {\n let response = {};\n response.totalChannels = serverResponse.payload.total_channels;\n response.totalOccupancy = serverResponse.payload.total_occupancy;\n response.channels = {};\n\n Object.keys(serverResponse.payload.channels).forEach((channelName) => {\n let channelEntry = serverResponse.payload.channels[channelName];\n let occupantsList = [];\n response.channels[channelName] = {\n occupants: occupantsList,\n name: channelName,\n occupancy: channelEntry.occupancy,\n };\n\n if (includeUUIDs) {\n channelEntry.uuids.forEach((uuidEntry) => {\n if (includeState) {\n occupantsList.push({\n state: uuidEntry.state,\n uuid: uuidEntry.uuid,\n });\n } else {\n occupantsList.push({ state: null, uuid: uuidEntry });\n }\n });\n }\n\n return response;\n });\n\n return response;\n };\n\n let response;\n if (\n channels.length > 1 ||\n channelGroups.length > 0 ||\n (channelGroups.length === 0 && channels.length === 0)\n ) {\n response = prepareMultipleChannel();\n } else {\n response = prepareSingularChannel();\n }\n\n return response;\n}\n\nexport function handleError(modules: ModulesInject, params: HereNowArguments, status: StatusAnnouncement) {\n if (status.statusCode === 402 && !this.getURL(modules, params).includes('channel')) {\n status.errorData.message = 'You have tried to perform a Global Here Now operation, your keyset configuration does not support that. Please provide a channel, or enable the Global Here Now feature from the Portal.';\n }\n}\n"],"file":"here_now.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/presence/here_now.js"],"names":["getOperation","operationConstants","PNHereNowOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","channels","channelGroups","baseURL","length","stringifiedChannels","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","includeUUIDs","includeState","queryParameters","params","disable_uuids","state","handleResponse","serverResponse","prepareSingularChannel","response","occupantsList","totalChannels","totalOccupancy","occupancy","occupants","name","uuids","forEach","uuidEntry","push","uuid","prepareMultipleChannel","payload","total_channels","total_occupancy","Object","keys","channelName","channelEntry","handleError","status","statusCode","includes","errorData","message"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport { HereNowArguments, ModulesInject, StatusAnnouncement } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNHereNowOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: HereNowArguments\n): string {\n let { config } = modules;\n let { channels = [], channelGroups = [] } = incomingParams;\n let baseURL = `/v2/presence/sub-key/${config.subscribeKey}`;\n\n if (channels.length > 0 || channelGroups.length > 0) {\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n baseURL += `/channel/${utils.encodeString(stringifiedChannels)}`;\n }\n\n return baseURL;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: HereNowArguments\n): Object {\n let {\n channelGroups = [],\n includeUUIDs = true,\n includeState = false,\n queryParameters = {}\n } = incomingParams;\n let params = {};\n\n if (!includeUUIDs) params.disable_uuids = 1;\n if (includeState) params.state = 1;\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n params = { ...params, ...queryParameters };\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: Object,\n incomingParams: HereNowArguments\n): Object {\n let {\n channels = [],\n channelGroups = [],\n includeUUIDs = true,\n includeState = false,\n } = incomingParams;\n\n let prepareSingularChannel = () => {\n let response = {};\n let occupantsList = [];\n response.totalChannels = 1;\n response.totalOccupancy = serverResponse.occupancy;\n response.channels = {};\n response.channels[channels[0]] = {\n occupants: occupantsList,\n name: channels[0],\n occupancy: serverResponse.occupancy,\n };\n\n // We have had issues in the past with server returning responses\n // that contain no uuids array\n if (includeUUIDs && serverResponse.uuids) {\n serverResponse.uuids.forEach((uuidEntry) => {\n if (includeState) {\n occupantsList.push({ state: uuidEntry.state, uuid: uuidEntry.uuid });\n } else {\n occupantsList.push({ state: null, uuid: uuidEntry });\n }\n });\n }\n\n return response;\n };\n\n let prepareMultipleChannel = () => {\n let response = {};\n response.totalChannels = serverResponse.payload.total_channels;\n response.totalOccupancy = serverResponse.payload.total_occupancy;\n response.channels = {};\n\n Object.keys(serverResponse.payload.channels).forEach((channelName) => {\n let channelEntry = serverResponse.payload.channels[channelName];\n let occupantsList = [];\n response.channels[channelName] = {\n occupants: occupantsList,\n name: channelName,\n occupancy: channelEntry.occupancy,\n };\n\n if (includeUUIDs) {\n channelEntry.uuids.forEach((uuidEntry) => {\n if (includeState) {\n occupantsList.push({\n state: uuidEntry.state,\n uuid: uuidEntry.uuid,\n });\n } else {\n occupantsList.push({ state: null, uuid: uuidEntry });\n }\n });\n }\n\n return response;\n });\n\n return response;\n };\n\n let response;\n if (\n channels.length > 1 ||\n channelGroups.length > 0 ||\n (channelGroups.length === 0 && channels.length === 0)\n ) {\n response = prepareMultipleChannel();\n } else {\n response = prepareSingularChannel();\n }\n\n return response;\n}\n\nexport function handleError(modules: ModulesInject, params: HereNowArguments, status: StatusAnnouncement) {\n if (status.statusCode === 402 && !this.getURL(modules, params).includes('channel')) {\n status.errorData.message = 'You have tried to perform a Global Here Now operation, your keyset configuration does not support that. Please provide a channel, or enable the Global Here Now feature from the Portal.';\n }\n}\n"],"file":"here_now.js"} \ No newline at end of file diff --git a/lib/core/endpoints/presence/leave.js b/lib/core/endpoints/presence/leave.js index 8ffe5e666..9b8c472f1 100644 --- a/lib/core/endpoints/presence/leave.js +++ b/lib/core/endpoints/presence/leave.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/presence/leave.js.map b/lib/core/endpoints/presence/leave.js.map index d79d6604b..f4bb813f2 100644 --- a/lib/core/endpoints/presence/leave.js.map +++ b/lib/core/endpoints/presence/leave.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/presence/leave.js"],"names":["getOperation","operationConstants","PNUnsubscribeOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","channels","stringifiedChannels","length","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","channelGroups","params","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,sBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AAAA,MAC/CC,MAD+C,GACpCD,OADoC,CAC/CC,MAD+C;AAGrD,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAwCI,cAAxC,EAAgF;AAAA,MAC/EH,MAD+E,GACpED,OADoE,CAC/EC,MAD+E;AAAA,8BAE7DG,cAF6D,CAE/EC,QAF+E;AAAA,MAE/EA,QAF+E,sCAEpE,EAFoE;AAGrF,MAAIC,mBAAmB,GAAGD,QAAQ,CAACE,MAAT,GAAkB,CAAlB,GAAsBF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAAtB,GAA2C,GAArE;AACA,wCAA+BP,MAAM,CAACC,YAAtC,sBAA8DO,kBAAMC,YAAN,CAAmBJ,mBAAnB,CAA9D;AACD;;AAEM,SAASK,iBAAT,OAAsD;AAAA,MAAzBV,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACW,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBd,OAAvB,EAA+CI,cAA/C,EAAuF;AAAA,+BAC/DA,cAD+D,CACtFW,aADsF;AAAA,MACtFA,aADsF,uCACtE,EADsE;AAE5F,MAAIC,MAAM,GAAG,EAAb;;AAEA,MAAID,aAAa,CAACR,MAAd,GAAuB,CAA3B,EAA8B;AAC5BS,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0BD,aAAa,CAACP,IAAd,CAAmB,GAAnB,CAA1B;AACD;;AAED,SAAOQ,MAAP;AACD;;AAEM,SAASC,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { LeaveArguments, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNUnsubscribeOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: LeaveArguments): string {\n let { config } = modules;\n let { channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/presence/sub-key/${config.subscribeKey}/channel/${utils.encodeString(stringifiedChannels)}/leave`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: LeaveArguments): Object {\n let { channelGroups = [] } = incomingParams;\n let params = {};\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n return params;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"leave.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/presence/leave.js"],"names":["getOperation","operationConstants","PNUnsubscribeOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","channels","stringifiedChannels","length","join","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","channelGroups","params","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,sBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AACrD,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AAEA,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAwCI,cAAxC,EAAgF;AACrF,MAAMH,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AACA,8BAAwBG,cAAxB,CAAMC,QAAN;AAAA,MAAMA,QAAN,sCAAiB,EAAjB;AACA,MAAIC,mBAAmB,GAAGD,QAAQ,CAACE,MAAT,GAAkB,CAAlB,GAAsBF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAAtB,GAA2C,GAArE;AACA,wCAA+BP,MAAM,CAACC,YAAtC,sBAA8DO,kBAAMC,YAAN,CAAmBJ,mBAAnB,CAA9D;AACD;;AAEM,SAASK,iBAAT,OAAsD;AAAA,MAAzBV,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACW,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBd,OAAvB,EAA+CI,cAA/C,EAAuF;AAC5F,+BAA6BA,cAA7B,CAAMW,aAAN;AAAA,MAAMA,aAAN,uCAAsB,EAAtB;AACA,MAAIC,MAAM,GAAG,EAAb;;AAEA,MAAID,aAAa,CAACR,MAAd,GAAuB,CAA3B,EAA8B;AAC5BS,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0BD,aAAa,CAACP,IAAd,CAAmB,GAAnB,CAA1B;AACD;;AAED,SAAOQ,MAAP;AACD;;AAEM,SAASC,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { LeaveArguments, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNUnsubscribeOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: LeaveArguments): string {\n let { config } = modules;\n let { channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/presence/sub-key/${config.subscribeKey}/channel/${utils.encodeString(stringifiedChannels)}/leave`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: LeaveArguments): Object {\n let { channelGroups = [] } = incomingParams;\n let params = {};\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n return params;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"leave.js"} \ No newline at end of file diff --git a/lib/core/endpoints/presence/set_state.js b/lib/core/endpoints/presence/set_state.js index 1caa5a378..5e7fe5443 100644 --- a/lib/core/endpoints/presence/set_state.js +++ b/lib/core/endpoints/presence/set_state.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/presence/set_state.js.map b/lib/core/endpoints/presence/set_state.js.map index 2a637e52a..abd8440f5 100644 --- a/lib/core/endpoints/presence/set_state.js.map +++ b/lib/core/endpoints/presence/set_state.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/presence/set_state.js"],"names":["getOperation","operationConstants","PNSetStateOperation","validateParams","modules","incomingParams","config","state","channels","channelGroups","subscribeKey","length","getURL","stringifiedChannels","join","utils","encodeString","UUID","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","params","JSON","stringify","handleResponse","serverResponse","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAmF;AAAA,MAClFC,MADkF,GACvEF,OADuE,CAClFE,MADkF;AAAA,MAElFC,KAFkF,GAErCF,cAFqC,CAElFE,KAFkF;AAAA,8BAErCF,cAFqC,CAE3EG,QAF2E;AAAA,MAE3EA,QAF2E,sCAEhE,EAFgE;AAAA,+BAErCH,cAFqC,CAE5DI,aAF4D;AAAA,MAE5DA,aAF4D,uCAE5C,EAF4C;AAIxF,MAAI,CAACF,KAAL,EAAY,OAAO,eAAP;AACZ,MAAI,CAACD,MAAM,CAACI,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAIF,QAAQ,CAACG,MAAT,KAAoB,CAApB,IAAyBF,aAAa,CAACE,MAAd,KAAyB,CAAtD,EAAyD,OAAO,yDAAP;AAC1D;;AAEM,SAASC,MAAT,CAAgBR,OAAhB,EAAwCC,cAAxC,EAAmF;AAAA,MAClFC,MADkF,GACvEF,OADuE,CAClFE,MADkF;AAAA,+BAEhED,cAFgE,CAElFG,QAFkF;AAAA,MAElFA,QAFkF,uCAEvE,EAFuE;AAGxF,MAAIK,mBAAmB,GAAGL,QAAQ,CAACG,MAAT,GAAkB,CAAlB,GAAsBH,QAAQ,CAACM,IAAT,CAAc,GAAd,CAAtB,GAA2C,GAArE;AACA,wCAA+BR,MAAM,CAACI,YAAtC,sBAA8DK,kBAAMC,YAAN,CAAmBH,mBAAnB,CAA9D,mBAA8GE,kBAAMC,YAAN,CAAmBV,MAAM,CAACW,IAA1B,CAA9G;AACD;;AAEM,SAASC,iBAAT,OAA8D;AAAA,MAAjCZ,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACa,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBjB,OAAvB,EAA+CC,cAA/C,EAA0F;AAAA,MACzFE,KADyF,GAC3DF,cAD2D,CACzFE,KADyF;AAAA,+BAC3DF,cAD2D,CAClFI,aADkF;AAAA,MAClFA,aADkF,uCAClE,EADkE;AAE/F,MAAMa,MAAM,GAAG,EAAf;AAEAA,EAAAA,MAAM,CAACf,KAAP,GAAegB,IAAI,CAACC,SAAL,CAAejB,KAAf,CAAf;;AAEA,MAAIE,aAAa,CAACE,MAAd,GAAuB,CAA3B,EAA8B;AAC5BW,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0Bb,aAAa,CAACK,IAAd,CAAmB,GAAnB,CAA1B;AACD;;AAED,SAAOQ,MAAP;AACD;;AAEM,SAASG,cAAT,CAAwBrB,OAAxB,EAAgDsB,cAAhD,EAA0F;AAC/F,SAAO;AAAEnB,IAAAA,KAAK,EAAEmB,cAAc,CAACC;AAAxB,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport { SetStateArguments, SetStateResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNSetStateOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: SetStateArguments) {\n let { config } = modules;\n let { state, channels = [], channelGroups = [] } = incomingParams;\n\n if (!state) return 'Missing State';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (channels.length === 0 && channelGroups.length === 0) return 'Please provide a list of channels and/or channel-groups';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: SetStateArguments): string {\n let { config } = modules;\n let { channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/presence/sub-key/${config.subscribeKey}/channel/${utils.encodeString(stringifiedChannels)}/uuid/${utils.encodeString(config.UUID)}/data`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: SetStateArguments): Object {\n let { state, channelGroups = [] } = incomingParams;\n const params = {};\n\n params.state = JSON.stringify(state);\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n return params;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): SetStateResponse {\n return { state: serverResponse.payload };\n}\n"],"file":"set_state.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/presence/set_state.js"],"names":["getOperation","operationConstants","PNSetStateOperation","validateParams","modules","incomingParams","config","state","channels","channelGroups","subscribeKey","length","getURL","stringifiedChannels","join","utils","encodeString","UUID","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","params","JSON","stringify","handleResponse","serverResponse","payload"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAmF;AACxF,MAAMC,MAAN,GAAiBF,OAAjB,CAAME,MAAN;AACA,MAAMC,KAAN,GAAmDF,cAAnD,CAAME,KAAN;AAAA,8BAAmDF,cAAnD,CAAaG,QAAb;AAAA,MAAaA,QAAb,sCAAwB,EAAxB;AAAA,+BAAmDH,cAAnD,CAA4BI,aAA5B;AAAA,MAA4BA,aAA5B,uCAA4C,EAA5C;AAEA,MAAI,CAACF,KAAL,EAAY,OAAO,eAAP;AACZ,MAAI,CAACD,MAAM,CAACI,YAAZ,EAA0B,OAAO,uBAAP;AAC1B,MAAIF,QAAQ,CAACG,MAAT,KAAoB,CAApB,IAAyBF,aAAa,CAACE,MAAd,KAAyB,CAAtD,EAAyD,OAAO,yDAAP;AAC1D;;AAEM,SAASC,MAAT,CAAgBR,OAAhB,EAAwCC,cAAxC,EAAmF;AACxF,MAAMC,MAAN,GAAiBF,OAAjB,CAAME,MAAN;AACA,+BAAwBD,cAAxB,CAAMG,QAAN;AAAA,MAAMA,QAAN,uCAAiB,EAAjB;AACA,MAAIK,mBAAmB,GAAGL,QAAQ,CAACG,MAAT,GAAkB,CAAlB,GAAsBH,QAAQ,CAACM,IAAT,CAAc,GAAd,CAAtB,GAA2C,GAArE;AACA,wCAA+BR,MAAM,CAACI,YAAtC,sBAA8DK,kBAAMC,YAAN,CAAmBH,mBAAnB,CAA9D,mBAA8GE,kBAAMC,YAAN,CAAmBV,MAAM,CAACW,IAA1B,CAA9G;AACD;;AAEM,SAASC,iBAAT,OAA8D;AAAA,MAAjCZ,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACa,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBjB,OAAvB,EAA+CC,cAA/C,EAA0F;AAC/F,MAAME,KAAN,GAAoCF,cAApC,CAAME,KAAN;AAAA,+BAAoCF,cAApC,CAAaI,aAAb;AAAA,MAAaA,aAAb,uCAA6B,EAA7B;AACA,MAAMa,MAAM,GAAG,EAAf;AAEAA,EAAAA,MAAM,CAACf,KAAP,GAAegB,IAAI,CAACC,SAAL,CAAejB,KAAf,CAAf;;AAEA,MAAIE,aAAa,CAACE,MAAd,GAAuB,CAA3B,EAA8B;AAC5BW,IAAAA,MAAM,CAAC,eAAD,CAAN,GAA0Bb,aAAa,CAACK,IAAd,CAAmB,GAAnB,CAA1B;AACD;;AAED,SAAOQ,MAAP;AACD;;AAEM,SAASG,cAAT,CAAwBrB,OAAxB,EAAgDsB,cAAhD,EAA0F;AAC/F,SAAO;AAAEnB,IAAAA,KAAK,EAAEmB,cAAc,CAACC;AAAxB,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport { SetStateArguments, SetStateResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNSetStateOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: SetStateArguments) {\n let { config } = modules;\n let { state, channels = [], channelGroups = [] } = incomingParams;\n\n if (!state) return 'Missing State';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n if (channels.length === 0 && channelGroups.length === 0) return 'Please provide a list of channels and/or channel-groups';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: SetStateArguments): string {\n let { config } = modules;\n let { channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/presence/sub-key/${config.subscribeKey}/channel/${utils.encodeString(stringifiedChannels)}/uuid/${utils.encodeString(config.UUID)}/data`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: SetStateArguments): Object {\n let { state, channelGroups = [] } = incomingParams;\n const params = {};\n\n params.state = JSON.stringify(state);\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n return params;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): SetStateResponse {\n return { state: serverResponse.payload };\n}\n"],"file":"set_state.js"} \ No newline at end of file diff --git a/lib/core/endpoints/presence/where_now.js b/lib/core/endpoints/presence/where_now.js index b4c83a022..ec9ca8597 100644 --- a/lib/core/endpoints/presence/where_now.js +++ b/lib/core/endpoints/presence/where_now.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/presence/where_now.js.map b/lib/core/endpoints/presence/where_now.js.map index 3eb04b949..5b0c89821 100644 --- a/lib/core/endpoints/presence/where_now.js.map +++ b/lib/core/endpoints/presence/where_now.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/presence/where_now.js"],"names":["getOperation","operationConstants","PNWhereNowOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","uuid","UUID","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","serverResponse","payload","channels"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AAAA,MAC/CC,MAD+C,GACpCD,OADoC,CAC/CC,MAD+C;AAGrD,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAwCI,cAAxC,EAAmF;AAAA,MAClFH,MADkF,GACvED,OADuE,CAClFC,MADkF;AAAA,6BAE3DG,cAF2D,CAElFC,IAFkF;AAAA,MAElFA,IAFkF,qCAE3EJ,MAAM,CAACK,IAFoE;AAGxF,wCAA+BL,MAAM,CAACC,YAAtC,mBAA2DK,kBAAMC,YAAN,CAAmBH,IAAnB,CAA3D;AACD;;AAEM,SAASI,iBAAT,OAAsD;AAAA,MAAzBR,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACS,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CAAwBb,OAAxB,EAAgDc,cAAhD,EAA0F;AAG/F,MAAI,CAACA,cAAc,CAACC,OAApB,EAA6B;AAC3B,WAAO;AAAEC,MAAAA,QAAQ,EAAE;AAAZ,KAAP;AACD;;AACD,SAAO;AAAEA,IAAAA,QAAQ,EAAEF,cAAc,CAACC,OAAf,CAAuBC;AAAnC,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport { WhereNowArguments, WhereNowResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNWhereNowOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: WhereNowArguments): string {\n let { config } = modules;\n let { uuid = config.UUID } = incomingParams;\n return `/v2/presence/sub-key/${config.subscribeKey}/uuid/${utils.encodeString(uuid)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): WhereNowResponse {\n // This is a quick fix for when the server does not include a payload\n // in where now responses\n if (!serverResponse.payload) {\n return { channels: [] };\n }\n return { channels: serverResponse.payload.channels };\n}\n"],"file":"where_now.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/presence/where_now.js"],"names":["getOperation","operationConstants","PNWhereNowOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","uuid","UUID","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","serverResponse","payload","channels"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgD;AACrD,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AAEA,MAAI,CAACA,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBH,OAAhB,EAAwCI,cAAxC,EAAmF;AACxF,MAAMH,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AACA,6BAA6BG,cAA7B,CAAMC,IAAN;AAAA,MAAMA,IAAN,qCAAaJ,MAAM,CAACK,IAApB;AACA,wCAA+BL,MAAM,CAACC,YAAtC,mBAA2DK,kBAAMC,YAAN,CAAmBH,IAAnB,CAA3D;AACD;;AAEM,SAASI,iBAAT,OAAsD;AAAA,MAAzBR,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACS,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CAAwBb,OAAxB,EAAgDc,cAAhD,EAA0F;AAG/F,MAAI,CAACA,cAAc,CAACC,OAApB,EAA6B;AAC3B,WAAO;AAAEC,MAAAA,QAAQ,EAAE;AAAZ,KAAP;AACD;;AACD,SAAO;AAAEA,IAAAA,QAAQ,EAAEF,cAAc,CAACC,OAAf,CAAuBC;AAAnC,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport { WhereNowArguments, WhereNowResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNWhereNowOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: WhereNowArguments): string {\n let { config } = modules;\n let { uuid = config.UUID } = incomingParams;\n return `/v2/presence/sub-key/${config.subscribeKey}/uuid/${utils.encodeString(uuid)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): WhereNowResponse {\n // This is a quick fix for when the server does not include a payload\n // in where now responses\n if (!serverResponse.payload) {\n return { channels: [] };\n }\n return { channels: serverResponse.payload.channels };\n}\n"],"file":"where_now.js"} \ No newline at end of file diff --git a/lib/core/endpoints/publish.js b/lib/core/endpoints/publish.js index 872d0e1f9..3be3a0366 100644 --- a/lib/core/endpoints/publish.js +++ b/lib/core/endpoints/publish.js @@ -6,15 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.postPayload = postPayload; +exports.postURL = postURL; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.usePost = usePost; +exports.validateParams = validateParams; var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof")); diff --git a/lib/core/endpoints/publish.js.map b/lib/core/endpoints/publish.js.map index 7d845bc3f..c70438873 100644 --- a/lib/core/endpoints/publish.js.map +++ b/lib/core/endpoints/publish.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/publish.js"],"names":["prepareMessagePayload","modules","messagePayload","crypto","config","stringifiedPayload","JSON","stringify","cipherKey","encrypt","getOperation","operationConstants","PNPublishOperation","validateParams","incomingParams","message","channel","subscribeKey","usePost","sendByPost","getURL","publishKey","utils","encodeString","postURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","postPayload","prepareParams","meta","replicate","storeInHistory","ttl","params","store","norep","handleResponse","serverResponse","timetoken"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport { PublishResponse, PublishArguments, ModulesInject } from '../flow_interfaces';\nimport operationConstants from '../constants/operations';\nimport utils from '../utils';\n\nfunction prepareMessagePayload(modules, messagePayload) {\n const { crypto, config } = modules;\n let stringifiedPayload = JSON.stringify(messagePayload);\n\n if (config.cipherKey) {\n stringifiedPayload = crypto.encrypt(stringifiedPayload);\n stringifiedPayload = JSON.stringify(stringifiedPayload);\n }\n\n return stringifiedPayload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNPublishOperation;\n}\n\nexport function validateParams({ config }: ModulesInject, incomingParams: PublishArguments) {\n let { message, channel } = incomingParams;\n\n if (!channel) return 'Missing Channel';\n if (!message) return 'Missing Message';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function usePost(modules: ModulesInject, incomingParams: PublishArguments) {\n let { sendByPost = false } = incomingParams;\n return sendByPost;\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: PublishArguments): string {\n const { config } = modules;\n const { channel, message } = incomingParams;\n let stringifiedPayload = prepareMessagePayload(modules, message);\n return `/publish/${config.publishKey}/${config.subscribeKey}/0/${utils.encodeString(channel)}/0/${utils.encodeString(stringifiedPayload)}`;\n}\n\nexport function postURL(modules: ModulesInject, incomingParams: PublishArguments): string {\n const { config } = modules;\n const { channel } = incomingParams;\n return `/publish/${config.publishKey}/${config.subscribeKey}/0/${utils.encodeString(channel)}/0`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function postPayload(modules: ModulesInject, incomingParams: PublishArguments): string {\n const { message } = incomingParams;\n return prepareMessagePayload(modules, message);\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: PublishArguments): Object {\n const { meta, replicate = true, storeInHistory, ttl } = incomingParams;\n const params = {};\n\n if (storeInHistory != null) {\n if (storeInHistory) {\n params.store = '1';\n } else {\n params.store = '0';\n }\n }\n\n if (ttl) {\n params.ttl = ttl;\n }\n\n if (replicate === false) {\n params.norep = 'true';\n }\n\n if (meta && typeof meta === 'object') {\n params.meta = JSON.stringify(meta);\n }\n\n return params;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): PublishResponse {\n return { timetoken: serverResponse[2] };\n}\n"],"file":"publish.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/publish.js"],"names":["prepareMessagePayload","modules","messagePayload","crypto","config","stringifiedPayload","JSON","stringify","cipherKey","encrypt","getOperation","operationConstants","PNPublishOperation","validateParams","incomingParams","message","channel","subscribeKey","usePost","sendByPost","getURL","publishKey","utils","encodeString","postURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","postPayload","prepareParams","meta","replicate","storeInHistory","ttl","params","store","norep","handleResponse","serverResponse","timetoken"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport { PublishResponse, PublishArguments, ModulesInject } from '../flow_interfaces';\nimport operationConstants from '../constants/operations';\nimport utils from '../utils';\n\nfunction prepareMessagePayload(modules, messagePayload) {\n const { crypto, config } = modules;\n let stringifiedPayload = JSON.stringify(messagePayload);\n\n if (config.cipherKey) {\n stringifiedPayload = crypto.encrypt(stringifiedPayload);\n stringifiedPayload = JSON.stringify(stringifiedPayload);\n }\n\n return stringifiedPayload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNPublishOperation;\n}\n\nexport function validateParams({ config }: ModulesInject, incomingParams: PublishArguments) {\n let { message, channel } = incomingParams;\n\n if (!channel) return 'Missing Channel';\n if (!message) return 'Missing Message';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function usePost(modules: ModulesInject, incomingParams: PublishArguments) {\n let { sendByPost = false } = incomingParams;\n return sendByPost;\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: PublishArguments): string {\n const { config } = modules;\n const { channel, message } = incomingParams;\n let stringifiedPayload = prepareMessagePayload(modules, message);\n return `/publish/${config.publishKey}/${config.subscribeKey}/0/${utils.encodeString(channel)}/0/${utils.encodeString(stringifiedPayload)}`;\n}\n\nexport function postURL(modules: ModulesInject, incomingParams: PublishArguments): string {\n const { config } = modules;\n const { channel } = incomingParams;\n return `/publish/${config.publishKey}/${config.subscribeKey}/0/${utils.encodeString(channel)}/0`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function postPayload(modules: ModulesInject, incomingParams: PublishArguments): string {\n const { message } = incomingParams;\n return prepareMessagePayload(modules, message);\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: PublishArguments): Object {\n const { meta, replicate = true, storeInHistory, ttl } = incomingParams;\n const params = {};\n\n if (storeInHistory != null) {\n if (storeInHistory) {\n params.store = '1';\n } else {\n params.store = '0';\n }\n }\n\n if (ttl) {\n params.ttl = ttl;\n }\n\n if (replicate === false) {\n params.norep = 'true';\n }\n\n if (meta && typeof meta === 'object') {\n params.meta = JSON.stringify(meta);\n }\n\n return params;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Object): PublishResponse {\n return { timetoken: serverResponse[2] };\n}\n"],"file":"publish.js"} \ No newline at end of file diff --git a/lib/core/endpoints/push/add_push_channels.js b/lib/core/endpoints/push/add_push_channels.js index 1a5a89fd4..8c6b191b3 100644 --- a/lib/core/endpoints/push/add_push_channels.js +++ b/lib/core/endpoints/push/add_push_channels.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/push/add_push_channels.js.map b/lib/core/endpoints/push/add_push_channels.js.map index b9bb98ea9..c3f40eeac 100644 --- a/lib/core/endpoints/push/add_push_channels.js.map +++ b/lib/core/endpoints/push/add_push_channels.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/push/add_push_channels.js"],"names":["getOperation","operationConstants","PNPushNotificationEnabledChannelsOperation","validateParams","modules","incomingParams","device","pushGateway","channels","topic","config","length","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","environment","parameters","type","add","join","Object","assign","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,0CAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AAAA,MACjFC,MADiF,GACxCD,cADwC,CACjFC,MADiF;AAAA,MACzEC,WADyE,GACxCF,cADwC,CACzEE,WADyE;AAAA,MAC5DC,QAD4D,GACxCH,cADwC,CAC5DG,QAD4D;AAAA,MAClDC,KADkD,GACxCJ,cADwC,CAClDI,KADkD;AAAA,MAEjFC,MAFiF,GAEtEN,OAFsE,CAEjFM,MAFiF;AAIvF,MAAI,CAACJ,MAAL,EAAa,OAAO,4BAAP;AACb,MAAI,CAACC,WAAL,EAAkB,OAAO,mDAAP;AAClB,MAAIA,WAAW,KAAK,OAAhB,IAA2B,CAACE,KAAhC,EAAuC,OAAO,qBAAP;AACvC,MAAI,CAACD,QAAD,IAAaA,QAAQ,CAACG,MAAT,KAAoB,CAArC,EAAwC,OAAO,kBAAP;AACxC,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBT,OAAhB,EAAwCC,cAAxC,EAAkF;AAAA,MACjFC,MADiF,GACzDD,cADyD,CACjFC,MADiF;AAAA,MACzEC,WADyE,GACzDF,cADyD,CACzEE,WADyE;AAAA,MAEjFG,MAFiF,GAEtEN,OAFsE,CAEjFM,MAFiF;;AAIvF,MAAIH,WAAW,KAAK,OAApB,EAA6B;AAC3B,sCAA2BG,MAAM,CAACE,YAAlC,4BAAgEN,MAAhE;AACD;;AAED,oCAA2BI,MAAM,CAACE,YAAlC,sBAA0DN,MAA1D;AACD;;AAEM,SAASQ,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBb,OAAvB,EAA+CC,cAA/C,EAAyF;AAAA,MACxFE,WADwF,GACrBF,cADqB,CACxFE,WADwF;AAAA,8BACrBF,cADqB,CAC3EG,QAD2E;AAAA,MAC3EA,QAD2E,sCAChE,EADgE;AAAA,8BACrBH,cADqB,CAC5Da,WAD4D;AAAA,MAC5DA,WAD4D,sCAC9C,aAD8C;AAAA,MAC/BT,KAD+B,GACrBJ,cADqB,CAC/BI,KAD+B;AAE9F,MAAIU,UAAU,GAAG;AAAEC,IAAAA,IAAI,EAAEb,WAAR;AAAqBc,IAAAA,GAAG,EAAEb,QAAQ,CAACc,IAAT,CAAc,GAAd;AAA1B,GAAjB;;AAEA,MAAIf,WAAW,KAAK,OAApB,EAA6B;AAC3BY,IAAAA,UAAU,GAAGI,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBL,UAAlB,EAA8B;AAAED,MAAAA,WAAW,EAAXA,WAAF;AAAeT,MAAAA,KAAK,EAALA;AAAf,KAA9B,CAAb;AACA,WAAOU,UAAU,CAACC,IAAlB;AACD;;AAED,SAAOD,UAAP;AACD;;AAEM,SAASM,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { ModifyDeviceArgs, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNPushNotificationEnabledChannelsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: ModifyDeviceArgs) {\n let { device, pushGateway, channels, topic } = incomingParams;\n let { config } = modules;\n\n if (!device) return 'Missing Device ID (device)';\n if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n if (!channels || channels.length === 0) return 'Missing Channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: ModifyDeviceArgs): string {\n let { device, pushGateway } = incomingParams;\n let { config } = modules;\n\n if (pushGateway === 'apns2') {\n return `/v2/push/sub-key/${config.subscribeKey}/devices-apns2/${device}`;\n }\n\n return `/v1/push/sub-key/${config.subscribeKey}/devices/${device}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: ModifyDeviceArgs): Object {\n let { pushGateway, channels = [], environment = 'development', topic } = incomingParams;\n let parameters = { type: pushGateway, add: channels.join(',') };\n\n if (pushGateway === 'apns2') {\n parameters = Object.assign({}, parameters, { environment, topic });\n delete parameters.type;\n }\n\n return parameters;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"add_push_channels.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/push/add_push_channels.js"],"names":["getOperation","operationConstants","PNPushNotificationEnabledChannelsOperation","validateParams","modules","incomingParams","device","pushGateway","channels","topic","config","length","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","environment","parameters","type","add","join","Object","assign","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,0CAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AACvF,MAAMC,MAAN,GAA+CD,cAA/C,CAAMC,MAAN;AAAA,MAAcC,WAAd,GAA+CF,cAA/C,CAAcE,WAAd;AAAA,MAA2BC,QAA3B,GAA+CH,cAA/C,CAA2BG,QAA3B;AAAA,MAAqCC,KAArC,GAA+CJ,cAA/C,CAAqCI,KAArC;AACA,MAAMC,MAAN,GAAiBN,OAAjB,CAAMM,MAAN;AAEA,MAAI,CAACJ,MAAL,EAAa,OAAO,4BAAP;AACb,MAAI,CAACC,WAAL,EAAkB,OAAO,mDAAP;AAClB,MAAIA,WAAW,KAAK,OAAhB,IAA2B,CAACE,KAAhC,EAAuC,OAAO,qBAAP;AACvC,MAAI,CAACD,QAAD,IAAaA,QAAQ,CAACG,MAAT,KAAoB,CAArC,EAAwC,OAAO,kBAAP;AACxC,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBT,OAAhB,EAAwCC,cAAxC,EAAkF;AACvF,MAAMC,MAAN,GAA8BD,cAA9B,CAAMC,MAAN;AAAA,MAAcC,WAAd,GAA8BF,cAA9B,CAAcE,WAAd;AACA,MAAMG,MAAN,GAAiBN,OAAjB,CAAMM,MAAN;;AAEA,MAAIH,WAAW,KAAK,OAApB,EAA6B;AAC3B,sCAA2BG,MAAM,CAACE,YAAlC,4BAAgEN,MAAhE;AACD;;AAED,oCAA2BI,MAAM,CAACE,YAAlC,sBAA0DN,MAA1D;AACD;;AAEM,SAASQ,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBb,OAAvB,EAA+CC,cAA/C,EAAyF;AAC9F,MAAME,WAAN,GAAyEF,cAAzE,CAAME,WAAN;AAAA,8BAAyEF,cAAzE,CAAmBG,QAAnB;AAAA,MAAmBA,QAAnB,sCAA8B,EAA9B;AAAA,8BAAyEH,cAAzE,CAAkCa,WAAlC;AAAA,MAAkCA,WAAlC,sCAAgD,aAAhD;AAAA,MAA+DT,KAA/D,GAAyEJ,cAAzE,CAA+DI,KAA/D;AACA,MAAIU,UAAU,GAAG;AAAEC,IAAAA,IAAI,EAAEb,WAAR;AAAqBc,IAAAA,GAAG,EAAEb,QAAQ,CAACc,IAAT,CAAc,GAAd;AAA1B,GAAjB;;AAEA,MAAIf,WAAW,KAAK,OAApB,EAA6B;AAC3BY,IAAAA,UAAU,GAAGI,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBL,UAAlB,EAA8B;AAAED,MAAAA,WAAW,EAAXA,WAAF;AAAeT,MAAAA,KAAK,EAALA;AAAf,KAA9B,CAAb;AACA,WAAOU,UAAU,CAACC,IAAlB;AACD;;AAED,SAAOD,UAAP;AACD;;AAEM,SAASM,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { ModifyDeviceArgs, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNPushNotificationEnabledChannelsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: ModifyDeviceArgs) {\n let { device, pushGateway, channels, topic } = incomingParams;\n let { config } = modules;\n\n if (!device) return 'Missing Device ID (device)';\n if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n if (!channels || channels.length === 0) return 'Missing Channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: ModifyDeviceArgs): string {\n let { device, pushGateway } = incomingParams;\n let { config } = modules;\n\n if (pushGateway === 'apns2') {\n return `/v2/push/sub-key/${config.subscribeKey}/devices-apns2/${device}`;\n }\n\n return `/v1/push/sub-key/${config.subscribeKey}/devices/${device}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: ModifyDeviceArgs): Object {\n let { pushGateway, channels = [], environment = 'development', topic } = incomingParams;\n let parameters = { type: pushGateway, add: channels.join(',') };\n\n if (pushGateway === 'apns2') {\n parameters = Object.assign({}, parameters, { environment, topic });\n delete parameters.type;\n }\n\n return parameters;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"add_push_channels.js"} \ No newline at end of file diff --git a/lib/core/endpoints/push/list_push_channels.js b/lib/core/endpoints/push/list_push_channels.js index 5025f3940..ee50d1d7c 100644 --- a/lib/core/endpoints/push/list_push_channels.js +++ b/lib/core/endpoints/push/list_push_channels.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/push/list_push_channels.js.map b/lib/core/endpoints/push/list_push_channels.js.map index cc5912e89..08ab7867f 100644 --- a/lib/core/endpoints/push/list_push_channels.js.map +++ b/lib/core/endpoints/push/list_push_channels.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/push/list_push_channels.js"],"names":["getOperation","operationConstants","PNPushNotificationEnabledChannelsOperation","validateParams","modules","incomingParams","device","pushGateway","topic","config","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","environment","parameters","type","Object","assign","handleResponse","serverResponse","channels"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,0CAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AAAA,MACjFC,MADiF,GAClDD,cADkD,CACjFC,MADiF;AAAA,MACzEC,WADyE,GAClDF,cADkD,CACzEE,WADyE;AAAA,MAC5DC,KAD4D,GAClDH,cADkD,CAC5DG,KAD4D;AAAA,MAEjFC,MAFiF,GAEtEL,OAFsE,CAEjFK,MAFiF;AAIvF,MAAI,CAACH,MAAL,EAAa,OAAO,4BAAP;AACb,MAAI,CAACC,WAAL,EAAkB,OAAO,mDAAP;AAClB,MAAIA,WAAW,KAAK,OAAhB,IAA2B,CAACC,KAAhC,EAAuC,OAAO,qBAAP;AACvC,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBP,OAAhB,EAAwCC,cAAxC,EAAkF;AAAA,MACjFC,MADiF,GACzDD,cADyD,CACjFC,MADiF;AAAA,MACzEC,WADyE,GACzDF,cADyD,CACzEE,WADyE;AAAA,MAEjFE,MAFiF,GAEtEL,OAFsE,CAEjFK,MAFiF;;AAIvF,MAAIF,WAAW,KAAK,OAApB,EAA6B;AAC3B,sCAA2BE,MAAM,CAACC,YAAlC,4BAAgEJ,MAAhE;AACD;;AAED,oCAA2BG,MAAM,CAACC,YAAlC,sBAA0DJ,MAA1D;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBH,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACI,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBX,OAAvB,EAA+CC,cAA/C,EAAyF;AAAA,MACxFE,WADwF,GACpCF,cADoC,CACxFE,WADwF;AAAA,8BACpCF,cADoC,CAC3EW,WAD2E;AAAA,MAC3EA,WAD2E,sCAC7D,aAD6D;AAAA,MAC9CR,KAD8C,GACpCH,cADoC,CAC9CG,KAD8C;AAE9F,MAAIS,UAAU,GAAG;AAAEC,IAAAA,IAAI,EAAEX;AAAR,GAAjB;;AAEA,MAAIA,WAAW,KAAK,OAApB,EAA6B;AAC3BU,IAAAA,UAAU,GAAGE,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBH,UAAlB,EAA8B;AAAED,MAAAA,WAAW,EAAXA,WAAF;AAAeR,MAAAA,KAAK,EAALA;AAAf,KAA9B,CAAb;AACA,WAAOS,UAAU,CAACC,IAAlB;AACD;;AAED,SAAOD,UAAP;AACD;;AAEM,SAASI,cAAT,CAAwBjB,OAAxB,EAAgDkB,cAAhD,EAAqG;AAC1G,SAAO;AAAEC,IAAAA,QAAQ,EAAED;AAAZ,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport { ListChannelsArgs, ListChannelsResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNPushNotificationEnabledChannelsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: ListChannelsArgs) {\n let { device, pushGateway, topic } = incomingParams;\n let { config } = modules;\n\n if (!device) return 'Missing Device ID (device)';\n if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: ListChannelsArgs): string {\n let { device, pushGateway } = incomingParams;\n let { config } = modules;\n\n if (pushGateway === 'apns2') {\n return `/v2/push/sub-key/${config.subscribeKey}/devices-apns2/${device}`;\n }\n\n return `/v1/push/sub-key/${config.subscribeKey}/devices/${device}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: ListChannelsArgs): Object {\n let { pushGateway, environment = 'development', topic } = incomingParams;\n let parameters = { type: pushGateway };\n\n if (pushGateway === 'apns2') {\n parameters = Object.assign({}, parameters, { environment, topic });\n delete parameters.type;\n }\n\n return parameters;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Array): ListChannelsResponse {\n return { channels: serverResponse };\n}\n"],"file":"list_push_channels.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/push/list_push_channels.js"],"names":["getOperation","operationConstants","PNPushNotificationEnabledChannelsOperation","validateParams","modules","incomingParams","device","pushGateway","topic","config","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","environment","parameters","type","Object","assign","handleResponse","serverResponse","channels"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,0CAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AACvF,MAAMC,MAAN,GAAqCD,cAArC,CAAMC,MAAN;AAAA,MAAcC,WAAd,GAAqCF,cAArC,CAAcE,WAAd;AAAA,MAA2BC,KAA3B,GAAqCH,cAArC,CAA2BG,KAA3B;AACA,MAAMC,MAAN,GAAiBL,OAAjB,CAAMK,MAAN;AAEA,MAAI,CAACH,MAAL,EAAa,OAAO,4BAAP;AACb,MAAI,CAACC,WAAL,EAAkB,OAAO,mDAAP;AAClB,MAAIA,WAAW,KAAK,OAAhB,IAA2B,CAACC,KAAhC,EAAuC,OAAO,qBAAP;AACvC,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBP,OAAhB,EAAwCC,cAAxC,EAAkF;AACvF,MAAMC,MAAN,GAA8BD,cAA9B,CAAMC,MAAN;AAAA,MAAcC,WAAd,GAA8BF,cAA9B,CAAcE,WAAd;AACA,MAAME,MAAN,GAAiBL,OAAjB,CAAMK,MAAN;;AAEA,MAAIF,WAAW,KAAK,OAApB,EAA6B;AAC3B,sCAA2BE,MAAM,CAACC,YAAlC,4BAAgEJ,MAAhE;AACD;;AAED,oCAA2BG,MAAM,CAACC,YAAlC,sBAA0DJ,MAA1D;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBH,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACI,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBX,OAAvB,EAA+CC,cAA/C,EAAyF;AAC9F,MAAME,WAAN,GAA0DF,cAA1D,CAAME,WAAN;AAAA,8BAA0DF,cAA1D,CAAmBW,WAAnB;AAAA,MAAmBA,WAAnB,sCAAiC,aAAjC;AAAA,MAAgDR,KAAhD,GAA0DH,cAA1D,CAAgDG,KAAhD;AACA,MAAIS,UAAU,GAAG;AAAEC,IAAAA,IAAI,EAAEX;AAAR,GAAjB;;AAEA,MAAIA,WAAW,KAAK,OAApB,EAA6B;AAC3BU,IAAAA,UAAU,GAAGE,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBH,UAAlB,EAA8B;AAAED,MAAAA,WAAW,EAAXA,WAAF;AAAeR,MAAAA,KAAK,EAALA;AAAf,KAA9B,CAAb;AACA,WAAOS,UAAU,CAACC,IAAlB;AACD;;AAED,SAAOD,UAAP;AACD;;AAEM,SAASI,cAAT,CAAwBjB,OAAxB,EAAgDkB,cAAhD,EAAqG;AAC1G,SAAO;AAAEC,IAAAA,QAAQ,EAAED;AAAZ,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport { ListChannelsArgs, ListChannelsResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNPushNotificationEnabledChannelsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: ListChannelsArgs) {\n let { device, pushGateway, topic } = incomingParams;\n let { config } = modules;\n\n if (!device) return 'Missing Device ID (device)';\n if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: ListChannelsArgs): string {\n let { device, pushGateway } = incomingParams;\n let { config } = modules;\n\n if (pushGateway === 'apns2') {\n return `/v2/push/sub-key/${config.subscribeKey}/devices-apns2/${device}`;\n }\n\n return `/v1/push/sub-key/${config.subscribeKey}/devices/${device}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: ListChannelsArgs): Object {\n let { pushGateway, environment = 'development', topic } = incomingParams;\n let parameters = { type: pushGateway };\n\n if (pushGateway === 'apns2') {\n parameters = Object.assign({}, parameters, { environment, topic });\n delete parameters.type;\n }\n\n return parameters;\n}\n\nexport function handleResponse(modules: ModulesInject, serverResponse: Array): ListChannelsResponse {\n return { channels: serverResponse };\n}\n"],"file":"list_push_channels.js"} \ No newline at end of file diff --git a/lib/core/endpoints/push/remove_device.js b/lib/core/endpoints/push/remove_device.js index 3e5b34555..3737fedd1 100644 --- a/lib/core/endpoints/push/remove_device.js +++ b/lib/core/endpoints/push/remove_device.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/push/remove_device.js.map b/lib/core/endpoints/push/remove_device.js.map index 6757c5f0e..1eb4ce642 100644 --- a/lib/core/endpoints/push/remove_device.js.map +++ b/lib/core/endpoints/push/remove_device.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/push/remove_device.js"],"names":["getOperation","operationConstants","PNRemoveAllPushNotificationsOperation","validateParams","modules","incomingParams","device","pushGateway","topic","config","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","environment","parameters","type","Object","assign","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,qCAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AAAA,MACjFC,MADiF,GAClDD,cADkD,CACjFC,MADiF;AAAA,MACzEC,WADyE,GAClDF,cADkD,CACzEE,WADyE;AAAA,MAC5DC,KAD4D,GAClDH,cADkD,CAC5DG,KAD4D;AAAA,MAEjFC,MAFiF,GAEtEL,OAFsE,CAEjFK,MAFiF;AAIvF,MAAI,CAACH,MAAL,EAAa,OAAO,4BAAP;AACb,MAAI,CAACC,WAAL,EAAkB,OAAO,mDAAP;AAClB,MAAIA,WAAW,KAAK,OAAhB,IAA2B,CAACC,KAAhC,EAAuC,OAAO,qBAAP;AACvC,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBP,OAAhB,EAAwCC,cAAxC,EAAkF;AAAA,MACjFC,MADiF,GACzDD,cADyD,CACjFC,MADiF;AAAA,MACzEC,WADyE,GACzDF,cADyD,CACzEE,WADyE;AAAA,MAEjFE,MAFiF,GAEtEL,OAFsE,CAEjFK,MAFiF;;AAIvF,MAAIF,WAAW,KAAK,OAApB,EAA6B;AAC3B,sCAA2BE,MAAM,CAACC,YAAlC,4BAAgEJ,MAAhE;AACD;;AAED,oCAA2BG,MAAM,CAACC,YAAlC,sBAA0DJ,MAA1D;AACD;;AAEM,SAASM,iBAAT,OAA8D;AAAA,MAAjCH,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACI,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBX,OAAvB,EAA+CC,cAA/C,EAAyF;AAAA,MACxFE,WADwF,GACpCF,cADoC,CACxFE,WADwF;AAAA,8BACpCF,cADoC,CAC3EW,WAD2E;AAAA,MAC3EA,WAD2E,sCAC7D,aAD6D;AAAA,MAC9CR,KAD8C,GACpCH,cADoC,CAC9CG,KAD8C;AAE9F,MAAIS,UAAU,GAAG;AAAEC,IAAAA,IAAI,EAAEX;AAAR,GAAjB;;AAEA,MAAIA,WAAW,KAAK,OAApB,EAA6B;AAC3BU,IAAAA,UAAU,GAAGE,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBH,UAAlB,EAA8B;AAAED,MAAAA,WAAW,EAAXA,WAAF;AAAeR,MAAAA,KAAK,EAALA;AAAf,KAA9B,CAAb;AACA,WAAOS,UAAU,CAACC,IAAlB;AACD;;AAED,SAAOD,UAAP;AACD;;AAEM,SAASI,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { RemoveDeviceArgs, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNRemoveAllPushNotificationsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: RemoveDeviceArgs) {\n let { device, pushGateway, topic } = incomingParams;\n let { config } = modules;\n\n if (!device) return 'Missing Device ID (device)';\n if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: RemoveDeviceArgs): string {\n let { device, pushGateway } = incomingParams;\n let { config } = modules;\n\n if (pushGateway === 'apns2') {\n return `/v2/push/sub-key/${config.subscribeKey}/devices-apns2/${device}/remove`;\n }\n\n return `/v1/push/sub-key/${config.subscribeKey}/devices/${device}/remove`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: RemoveDeviceArgs): Object {\n let { pushGateway, environment = 'development', topic } = incomingParams;\n let parameters = { type: pushGateway };\n\n if (pushGateway === 'apns2') {\n parameters = Object.assign({}, parameters, { environment, topic });\n delete parameters.type;\n }\n\n return parameters;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"remove_device.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/push/remove_device.js"],"names":["getOperation","operationConstants","PNRemoveAllPushNotificationsOperation","validateParams","modules","incomingParams","device","pushGateway","topic","config","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","environment","parameters","type","Object","assign","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,qCAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AACvF,MAAMC,MAAN,GAAqCD,cAArC,CAAMC,MAAN;AAAA,MAAcC,WAAd,GAAqCF,cAArC,CAAcE,WAAd;AAAA,MAA2BC,KAA3B,GAAqCH,cAArC,CAA2BG,KAA3B;AACA,MAAMC,MAAN,GAAiBL,OAAjB,CAAMK,MAAN;AAEA,MAAI,CAACH,MAAL,EAAa,OAAO,4BAAP;AACb,MAAI,CAACC,WAAL,EAAkB,OAAO,mDAAP;AAClB,MAAIA,WAAW,KAAK,OAAhB,IAA2B,CAACC,KAAhC,EAAuC,OAAO,qBAAP;AACvC,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBP,OAAhB,EAAwCC,cAAxC,EAAkF;AACvF,MAAMC,MAAN,GAA8BD,cAA9B,CAAMC,MAAN;AAAA,MAAcC,WAAd,GAA8BF,cAA9B,CAAcE,WAAd;AACA,MAAME,MAAN,GAAiBL,OAAjB,CAAMK,MAAN;;AAEA,MAAIF,WAAW,KAAK,OAApB,EAA6B;AAC3B,sCAA2BE,MAAM,CAACC,YAAlC,4BAAgEJ,MAAhE;AACD;;AAED,oCAA2BG,MAAM,CAACC,YAAlC,sBAA0DJ,MAA1D;AACD;;AAEM,SAASM,iBAAT,OAA8D;AAAA,MAAjCH,MAAiC,QAAjCA,MAAiC;AACnE,SAAOA,MAAM,CAACI,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAAoC;AACzC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBX,OAAvB,EAA+CC,cAA/C,EAAyF;AAC9F,MAAME,WAAN,GAA0DF,cAA1D,CAAME,WAAN;AAAA,8BAA0DF,cAA1D,CAAmBW,WAAnB;AAAA,MAAmBA,WAAnB,sCAAiC,aAAjC;AAAA,MAAgDR,KAAhD,GAA0DH,cAA1D,CAAgDG,KAAhD;AACA,MAAIS,UAAU,GAAG;AAAEC,IAAAA,IAAI,EAAEX;AAAR,GAAjB;;AAEA,MAAIA,WAAW,KAAK,OAApB,EAA6B;AAC3BU,IAAAA,UAAU,GAAGE,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBH,UAAlB,EAA8B;AAAED,MAAAA,WAAW,EAAXA,WAAF;AAAeR,MAAAA,KAAK,EAALA;AAAf,KAA9B,CAAb;AACA,WAAOS,UAAU,CAACC,IAAlB;AACD;;AAED,SAAOD,UAAP;AACD;;AAEM,SAASI,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { RemoveDeviceArgs, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNRemoveAllPushNotificationsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: RemoveDeviceArgs) {\n let { device, pushGateway, topic } = incomingParams;\n let { config } = modules;\n\n if (!device) return 'Missing Device ID (device)';\n if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: RemoveDeviceArgs): string {\n let { device, pushGateway } = incomingParams;\n let { config } = modules;\n\n if (pushGateway === 'apns2') {\n return `/v2/push/sub-key/${config.subscribeKey}/devices-apns2/${device}/remove`;\n }\n\n return `/v1/push/sub-key/${config.subscribeKey}/devices/${device}/remove`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject): number {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported(): boolean {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: RemoveDeviceArgs): Object {\n let { pushGateway, environment = 'development', topic } = incomingParams;\n let parameters = { type: pushGateway };\n\n if (pushGateway === 'apns2') {\n parameters = Object.assign({}, parameters, { environment, topic });\n delete parameters.type;\n }\n\n return parameters;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"remove_device.js"} \ No newline at end of file diff --git a/lib/core/endpoints/push/remove_push_channels.js b/lib/core/endpoints/push/remove_push_channels.js index 70771c114..0ba335138 100644 --- a/lib/core/endpoints/push/remove_push_channels.js +++ b/lib/core/endpoints/push/remove_push_channels.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); diff --git a/lib/core/endpoints/push/remove_push_channels.js.map b/lib/core/endpoints/push/remove_push_channels.js.map index 98c3814da..199c0b4be 100644 --- a/lib/core/endpoints/push/remove_push_channels.js.map +++ b/lib/core/endpoints/push/remove_push_channels.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/push/remove_push_channels.js"],"names":["getOperation","operationConstants","PNPushNotificationEnabledChannelsOperation","validateParams","modules","incomingParams","device","pushGateway","channels","topic","config","length","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","environment","parameters","type","remove","join","Object","assign","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,0CAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AAAA,MACjFC,MADiF,GACxCD,cADwC,CACjFC,MADiF;AAAA,MACzEC,WADyE,GACxCF,cADwC,CACzEE,WADyE;AAAA,MAC5DC,QAD4D,GACxCH,cADwC,CAC5DG,QAD4D;AAAA,MAClDC,KADkD,GACxCJ,cADwC,CAClDI,KADkD;AAAA,MAEjFC,MAFiF,GAEtEN,OAFsE,CAEjFM,MAFiF;AAIvF,MAAI,CAACJ,MAAL,EAAa,OAAO,4BAAP;AACb,MAAI,CAACC,WAAL,EAAkB,OAAO,mDAAP;AAClB,MAAIA,WAAW,KAAK,OAAhB,IAA2B,CAACE,KAAhC,EAAuC,OAAO,qBAAP;AACvC,MAAI,CAACD,QAAD,IAAaA,QAAQ,CAACG,MAAT,KAAoB,CAArC,EAAwC,OAAO,kBAAP;AACxC,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBT,OAAhB,EAAwCC,cAAxC,EAAkF;AAAA,MACjFC,MADiF,GACzDD,cADyD,CACjFC,MADiF;AAAA,MACzEC,WADyE,GACzDF,cADyD,CACzEE,WADyE;AAAA,MAEjFG,MAFiF,GAEtEN,OAFsE,CAEjFM,MAFiF;;AAIvF,MAAIH,WAAW,KAAK,OAApB,EAA6B;AAC3B,sCAA2BG,MAAM,CAACE,YAAlC,4BAAgEN,MAAhE;AACD;;AAED,oCAA2BI,MAAM,CAACE,YAAlC,sBAA0DN,MAA1D;AACD;;AAEM,SAASQ,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBb,OAAvB,EAA+CC,cAA/C,EAAyF;AAAA,MACxFE,WADwF,GACrBF,cADqB,CACxFE,WADwF;AAAA,8BACrBF,cADqB,CAC3EG,QAD2E;AAAA,MAC3EA,QAD2E,sCAChE,EADgE;AAAA,8BACrBH,cADqB,CAC5Da,WAD4D;AAAA,MAC5DA,WAD4D,sCAC9C,aAD8C;AAAA,MAC/BT,KAD+B,GACrBJ,cADqB,CAC/BI,KAD+B;AAE9F,MAAIU,UAAU,GAAG;AAAEC,IAAAA,IAAI,EAAEb,WAAR;AAAqBc,IAAAA,MAAM,EAAEb,QAAQ,CAACc,IAAT,CAAc,GAAd;AAA7B,GAAjB;;AAEA,MAAIf,WAAW,KAAK,OAApB,EAA6B;AAC3BY,IAAAA,UAAU,GAAGI,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBL,UAAlB,EAA8B;AAAED,MAAAA,WAAW,EAAXA,WAAF;AAAeT,MAAAA,KAAK,EAALA;AAAf,KAA9B,CAAb;AACA,WAAOU,UAAU,CAACC,IAAlB;AACD;;AAED,SAAOD,UAAP;AACD;;AAEM,SAASM,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { ModifyDeviceArgs, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNPushNotificationEnabledChannelsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: ModifyDeviceArgs) {\n let { device, pushGateway, channels, topic } = incomingParams;\n let { config } = modules;\n\n if (!device) return 'Missing Device ID (device)';\n if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n if (!channels || channels.length === 0) return 'Missing Channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: ModifyDeviceArgs): string {\n let { device, pushGateway } = incomingParams;\n let { config } = modules;\n\n if (pushGateway === 'apns2') {\n return `/v2/push/sub-key/${config.subscribeKey}/devices-apns2/${device}`;\n }\n\n return `/v1/push/sub-key/${config.subscribeKey}/devices/${device}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: ModifyDeviceArgs): Object {\n let { pushGateway, channels = [], environment = 'development', topic } = incomingParams;\n let parameters = { type: pushGateway, remove: channels.join(',') };\n\n if (pushGateway === 'apns2') {\n parameters = Object.assign({}, parameters, { environment, topic });\n delete parameters.type;\n }\n\n return parameters;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"remove_push_channels.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/push/remove_push_channels.js"],"names":["getOperation","operationConstants","PNPushNotificationEnabledChannelsOperation","validateParams","modules","incomingParams","device","pushGateway","channels","topic","config","length","subscribeKey","getURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","environment","parameters","type","remove","join","Object","assign","handleResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,0CAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AACvF,MAAMC,MAAN,GAA+CD,cAA/C,CAAMC,MAAN;AAAA,MAAcC,WAAd,GAA+CF,cAA/C,CAAcE,WAAd;AAAA,MAA2BC,QAA3B,GAA+CH,cAA/C,CAA2BG,QAA3B;AAAA,MAAqCC,KAArC,GAA+CJ,cAA/C,CAAqCI,KAArC;AACA,MAAMC,MAAN,GAAiBN,OAAjB,CAAMM,MAAN;AAEA,MAAI,CAACJ,MAAL,EAAa,OAAO,4BAAP;AACb,MAAI,CAACC,WAAL,EAAkB,OAAO,mDAAP;AAClB,MAAIA,WAAW,KAAK,OAAhB,IAA2B,CAACE,KAAhC,EAAuC,OAAO,qBAAP;AACvC,MAAI,CAACD,QAAD,IAAaA,QAAQ,CAACG,MAAT,KAAoB,CAArC,EAAwC,OAAO,kBAAP;AACxC,MAAI,CAACD,MAAM,CAACE,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CAAgBT,OAAhB,EAAwCC,cAAxC,EAAkF;AACvF,MAAMC,MAAN,GAA8BD,cAA9B,CAAMC,MAAN;AAAA,MAAcC,WAAd,GAA8BF,cAA9B,CAAcE,WAAd;AACA,MAAMG,MAAN,GAAiBN,OAAjB,CAAMM,MAAN;;AAEA,MAAIH,WAAW,KAAK,OAApB,EAA6B;AAC3B,sCAA2BG,MAAM,CAACE,YAAlC,4BAAgEN,MAAhE;AACD;;AAED,oCAA2BI,MAAM,CAACE,YAAlC,sBAA0DN,MAA1D;AACD;;AAEM,SAASQ,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CAAuBb,OAAvB,EAA+CC,cAA/C,EAAyF;AAC9F,MAAME,WAAN,GAAyEF,cAAzE,CAAME,WAAN;AAAA,8BAAyEF,cAAzE,CAAmBG,QAAnB;AAAA,MAAmBA,QAAnB,sCAA8B,EAA9B;AAAA,8BAAyEH,cAAzE,CAAkCa,WAAlC;AAAA,MAAkCA,WAAlC,sCAAgD,aAAhD;AAAA,MAA+DT,KAA/D,GAAyEJ,cAAzE,CAA+DI,KAA/D;AACA,MAAIU,UAAU,GAAG;AAAEC,IAAAA,IAAI,EAAEb,WAAR;AAAqBc,IAAAA,MAAM,EAAEb,QAAQ,CAACc,IAAT,CAAc,GAAd;AAA7B,GAAjB;;AAEA,MAAIf,WAAW,KAAK,OAApB,EAA6B;AAC3BY,IAAAA,UAAU,GAAGI,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBL,UAAlB,EAA8B;AAAED,MAAAA,WAAW,EAAXA,WAAF;AAAeT,MAAAA,KAAK,EAALA;AAAf,KAA9B,CAAb;AACA,WAAOU,UAAU,CAACC,IAAlB;AACD;;AAED,SAAOD,UAAP;AACD;;AAEM,SAASM,cAAT,GAAkC;AACvC,SAAO,EAAP;AACD","sourcesContent":["/* @flow */\n\nimport { ModifyDeviceArgs, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNPushNotificationEnabledChannelsOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: ModifyDeviceArgs) {\n let { device, pushGateway, channels, topic } = incomingParams;\n let { config } = modules;\n\n if (!device) return 'Missing Device ID (device)';\n if (!pushGateway) return 'Missing GW Type (pushGateway: gcm, apns or apns2)';\n if (pushGateway === 'apns2' && !topic) return 'Missing APNS2 topic';\n if (!channels || channels.length === 0) return 'Missing Channels';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: ModifyDeviceArgs): string {\n let { device, pushGateway } = incomingParams;\n let { config } = modules;\n\n if (pushGateway === 'apns2') {\n return `/v2/push/sub-key/${config.subscribeKey}/devices-apns2/${device}`;\n }\n\n return `/v1/push/sub-key/${config.subscribeKey}/devices/${device}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(modules: ModulesInject, incomingParams: ModifyDeviceArgs): Object {\n let { pushGateway, channels = [], environment = 'development', topic } = incomingParams;\n let parameters = { type: pushGateway, remove: channels.join(',') };\n\n if (pushGateway === 'apns2') {\n parameters = Object.assign({}, parameters, { environment, topic });\n delete parameters.type;\n }\n\n return parameters;\n}\n\nexport function handleResponse(): Object {\n return {};\n}\n"],"file":"remove_push_channels.js"} \ No newline at end of file diff --git a/lib/core/endpoints/signal.js b/lib/core/endpoints/signal.js index d53d97c6d..624ee183d 100644 --- a/lib/core/endpoints/signal.js +++ b/lib/core/endpoints/signal.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../flow_interfaces"); diff --git a/lib/core/endpoints/signal.js.map b/lib/core/endpoints/signal.js.map index 94235d237..add269ace 100644 --- a/lib/core/endpoints/signal.js.map +++ b/lib/core/endpoints/signal.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/signal.js"],"names":["prepareMessagePayload","modules","messagePayload","stringifiedPayload","JSON","stringify","getOperation","operationConstants","PNSignalOperation","validateParams","incomingParams","config","message","channel","subscribeKey","getURL","publishKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","params","handleResponse","serverResponse","timetoken"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEA,SAASA,qBAAT,CAA+BC,OAA/B,EAAwCC,cAAxC,EAAwD;AACtD,MAAIC,kBAAkB,GAAGC,IAAI,CAACC,SAAL,CAAeH,cAAf,CAAzB;AAEA,SAAOC,kBAAP;AACD;;AAEM,SAASG,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,iBAA1B;AACD;;AAEM,SAASC,cAAT,OAELC,cAFK,EAGL;AAAA,MAFEC,MAEF,QAFEA,MAEF;AAAA,MACMC,OADN,GAC2BF,cAD3B,CACME,OADN;AAAA,MACeC,OADf,GAC2BH,cAD3B,CACeG,OADf;AAGA,MAAI,CAACA,OAAL,EAAc,OAAO,iBAAP;AACd,MAAI,CAACD,OAAL,EAAc,OAAO,iBAAP;AACd,MAAI,CAACD,MAAM,CAACG,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CACLd,OADK,EAELS,cAFK,EAGG;AAAA,MACAC,MADA,GACWV,OADX,CACAU,MADA;AAAA,MAEAE,OAFA,GAEqBH,cAFrB,CAEAG,OAFA;AAAA,MAESD,OAFT,GAEqBF,cAFrB,CAESE,OAFT;AAGR,MAAIT,kBAAkB,GAAGH,qBAAqB,CAACC,OAAD,EAAUW,OAAV,CAA9C;AACA,2BAAkBD,MAAM,CAACK,UAAzB,cAAuCL,MAAM,CAACG,YAA9C,gBAAgEG,kBAAMC,YAAN,CAAmBL,OAAnB,CAAhE,gBAAiGI,kBAAMC,YAAN,CAAmBf,kBAAnB,CAAjG;AACD;;AAEM,SAASgB,iBAAT,QAAsD;AAAA,MAAzBR,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACS,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,MAAMC,MAAM,GAAG,EAAf;AAEA,SAAOA,MAAP;AACD;;AAEM,SAASC,cAAT,CACLvB,OADK,EAELwB,cAFK,EAGW;AAChB,SAAO;AAAEC,IAAAA,SAAS,EAAED,cAAc,CAAC,CAAD;AAA3B,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SignalResponse,\n SignalArguments,\n ModulesInject,\n} from '../flow_interfaces';\nimport operationConstants from '../constants/operations';\nimport utils from '../utils';\n\nfunction prepareMessagePayload(modules, messagePayload) {\n let stringifiedPayload = JSON.stringify(messagePayload);\n\n return stringifiedPayload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNSignalOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: SignalArguments\n) {\n let { message, channel } = incomingParams;\n\n if (!channel) return 'Missing Channel';\n if (!message) return 'Missing Message';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: SignalArguments\n): string {\n const { config } = modules;\n const { channel, message } = incomingParams;\n let stringifiedPayload = prepareMessagePayload(modules, message);\n return `/signal/${config.publishKey}/${config.subscribeKey}/0/${utils.encodeString(channel)}/0/${utils.encodeString(stringifiedPayload)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n const params = {};\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: Object\n): SignalResponse {\n return { timetoken: serverResponse[2] };\n}\n"],"file":"signal.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/signal.js"],"names":["prepareMessagePayload","modules","messagePayload","stringifiedPayload","JSON","stringify","getOperation","operationConstants","PNSignalOperation","validateParams","incomingParams","config","message","channel","subscribeKey","getURL","publishKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","params","handleResponse","serverResponse","timetoken"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEA,SAASA,qBAAT,CAA+BC,OAA/B,EAAwCC,cAAxC,EAAwD;AACtD,MAAIC,kBAAkB,GAAGC,IAAI,CAACC,SAAL,CAAeH,cAAf,CAAzB;AAEA,SAAOC,kBAAP;AACD;;AAEM,SAASG,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,iBAA1B;AACD;;AAEM,SAASC,cAAT,OAELC,cAFK,EAGL;AAAA,MAFEC,MAEF,QAFEA,MAEF;AACA,MAAMC,OAAN,GAA2BF,cAA3B,CAAME,OAAN;AAAA,MAAeC,OAAf,GAA2BH,cAA3B,CAAeG,OAAf;AAEA,MAAI,CAACA,OAAL,EAAc,OAAO,iBAAP;AACd,MAAI,CAACD,OAAL,EAAc,OAAO,iBAAP;AACd,MAAI,CAACD,MAAM,CAACG,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,MAAT,CACLd,OADK,EAELS,cAFK,EAGG;AACR,MAAQC,MAAR,GAAmBV,OAAnB,CAAQU,MAAR;AACA,MAAQE,OAAR,GAA6BH,cAA7B,CAAQG,OAAR;AAAA,MAAiBD,OAAjB,GAA6BF,cAA7B,CAAiBE,OAAjB;AACA,MAAIT,kBAAkB,GAAGH,qBAAqB,CAACC,OAAD,EAAUW,OAAV,CAA9C;AACA,2BAAkBD,MAAM,CAACK,UAAzB,cAAuCL,MAAM,CAACG,YAA9C,gBAAgEG,kBAAMC,YAAN,CAAmBL,OAAnB,CAAhE,gBAAiGI,kBAAMC,YAAN,CAAmBf,kBAAnB,CAAjG;AACD;;AAEM,SAASgB,iBAAT,QAAsD;AAAA,MAAzBR,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACS,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,MAAMC,MAAM,GAAG,EAAf;AAEA,SAAOA,MAAP;AACD;;AAEM,SAASC,cAAT,CACLvB,OADK,EAELwB,cAFK,EAGW;AAChB,SAAO;AAAEC,IAAAA,SAAS,EAAED,cAAc,CAAC,CAAD;AAA3B,GAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SignalResponse,\n SignalArguments,\n ModulesInject,\n} from '../flow_interfaces';\nimport operationConstants from '../constants/operations';\nimport utils from '../utils';\n\nfunction prepareMessagePayload(modules, messagePayload) {\n let stringifiedPayload = JSON.stringify(messagePayload);\n\n return stringifiedPayload;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNSignalOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: SignalArguments\n) {\n let { message, channel } = incomingParams;\n\n if (!channel) return 'Missing Channel';\n if (!message) return 'Missing Message';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: SignalArguments\n): string {\n const { config } = modules;\n const { channel, message } = incomingParams;\n let stringifiedPayload = prepareMessagePayload(modules, message);\n return `/signal/${config.publishKey}/${config.subscribeKey}/0/${utils.encodeString(channel)}/0/${utils.encodeString(stringifiedPayload)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n const params = {};\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: Object\n): SignalResponse {\n return { timetoken: serverResponse[2] };\n}\n"],"file":"signal.js"} \ No newline at end of file diff --git a/lib/core/endpoints/spaces/create_space.js b/lib/core/endpoints/spaces/create_space.js index b1cbab0cb..a71d4e946 100644 --- a/lib/core/endpoints/spaces/create_space.js +++ b/lib/core/endpoints/spaces/create_space.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -70,11 +69,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; diff --git a/lib/core/endpoints/spaces/create_space.js.map b/lib/core/endpoints/spaces/create_space.js.map index fe33e0811..dea2866fd 100644 --- a/lib/core/endpoints/spaces/create_space.js.map +++ b/lib/core/endpoints/spaces/create_space.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/spaces/create_space.js"],"names":["prepareMessagePayload","modules","incomingParams","getOperation","operationConstants","PNCreateSpaceOperation","validateParams","config","id","name","custom","subscribeKey","Object","values","every","value","usePost","getURL","postURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","postPayload","handleResponse","spacesResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n SpacesObjectInput,\n SpacesResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n return incomingParams;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNCreateSpaceOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: SpacesObjectInput\n) {\n let { id, name, custom } = incomingParams;\n\n if (!id) return 'Missing Space.id';\n if (!name) return 'Missing Space.name';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (custom) {\n if (\n !Object.values(custom).every(\n (value) => typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n ) {\n return 'Invalid custom type, only string, number and boolean values are allowed.';\n }\n }\n}\n\nexport function usePost() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/spaces`;\n}\n\nexport function postURL(modules: ModulesInject): string {\n const { config } = modules;\n return `/v1/objects/${config.subscribeKey}/spaces`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: SpacesObjectInput): string {\n let token =\n modules.tokenManager.getToken('space', incomingParams.id) ||\n modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SpacesObjectInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function postPayload(\n modules: ModulesInject,\n incomingParams: SpacesObjectInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesResponse {\n return spacesResponse;\n}\n"],"file":"create_space.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/spaces/create_space.js"],"names":["prepareMessagePayload","modules","incomingParams","getOperation","operationConstants","PNCreateSpaceOperation","validateParams","config","id","name","custom","subscribeKey","Object","values","every","value","usePost","getURL","postURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","postPayload","handleResponse","spacesResponse"],"mappings":";;;;;;;;;;;;;;;;;;AAEA;;AAKA;;AAEA,SAASA,qBAAT,CAA+BC,OAA/B,EAAwCC,cAAxC,EAAwD;AACtD,SAAOA,cAAP;AACD;;AAEM,SAASC,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,sBAA1B;AACD;;AAEM,SAASC,cAAT,OAELJ,cAFK,EAGL;AAAA,MAFEK,MAEF,QAFEA,MAEF;AACA,MAAMC,EAAN,GAA2BN,cAA3B,CAAMM,EAAN;AAAA,MAAUC,IAAV,GAA2BP,cAA3B,CAAUO,IAAV;AAAA,MAAgBC,MAAhB,GAA2BR,cAA3B,CAAgBQ,MAAhB;AAEA,MAAI,CAACF,EAAL,EAAS,OAAO,kBAAP;AACT,MAAI,CAACC,IAAL,EAAW,OAAO,oBAAP;AACX,MAAI,CAACF,MAAM,CAACI,YAAZ,EAA0B,OAAO,uBAAP;;AAE1B,MAAID,MAAJ,EAAY;AACV,QACE,CAACE,MAAM,CAACC,MAAP,CAAcH,MAAd,EAAsBI,KAAtB,CACC,UAACC,KAAD;AAAA,aAAW,OAAOA,KAAP,KAAiB,QAAjB,IACA,OAAOA,KAAP,KAAiB,QADjB,IAEA,OAAOA,KAAP,KAAiB,SAF5B;AAAA,KADD,CADH,EAME;AACA,aAAO,0EAAP;AACD;AACF;AACF;;AAEM,SAASC,OAAT,GAAmB;AACxB,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,CAAgBhB,OAAhB,EAAgD;AACrD,MAAMM,MAAN,GAAiBN,OAAjB,CAAMM,MAAN;AACA,+BAAsBA,MAAM,CAACI,YAA7B;AACD;;AAEM,SAASO,OAAT,CAAiBjB,OAAjB,EAAiD;AACtD,MAAQM,MAAR,GAAmBN,OAAnB,CAAQM,MAAR;AACA,+BAAsBA,MAAM,CAACI,YAA7B;AACD;;AAEM,SAASQ,iBAAT,QAAsD;AAAA,MAAzBZ,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACa,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLrB,OADK,EAELC,cAFK,EAGG;AACR,MAAMqB,OAAN,GAAkBrB,cAAlB,CAAMqB,OAAN;AACA,MAAMC,MAAM,GAAG,EAAf;;AAGA,MAAI,CAACD,OAAL,EAAc;AACZA,IAAAA,OAAO,GAAG;AACRE,MAAAA,YAAY,EAAE;AADN,KAAV;AAGD,GAJD,MAIO,IAAIF,OAAO,CAACE,YAAR,KAAyBC,SAA7B,EAAwC;AAC7CH,IAAAA,OAAO,CAACE,YAAR,GAAuB,IAAvB;AACD;;AAED,MAAIF,OAAJ,EAAa;AACX,QAAII,QAAQ,GAAG,EAAf;;AAEA,QAAIJ,OAAO,CAACE,YAAZ,EAA0B;AACxBE,MAAAA,QAAQ,CAACC,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BP,MAAAA,MAAM,CAACD,OAAP,GAAiBM,cAAjB;AACD;AACF;;AAED,SAAOL,MAAP;AACD;;AAEM,SAASQ,WAAT,CACL/B,OADK,EAELC,cAFK,EAGG;AACR,SAAOF,qBAAqB,CAACC,OAAD,EAAUC,cAAV,CAA5B;AACD;;AAEM,SAAS+B,cAAT,CACLhC,OADK,EAELiC,cAFK,EAGW;AAChB,SAAOA,cAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SpacesObjectInput,\n SpacesResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n return incomingParams;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNCreateSpaceOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: SpacesObjectInput\n) {\n let { id, name, custom } = incomingParams;\n\n if (!id) return 'Missing Space.id';\n if (!name) return 'Missing Space.name';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (custom) {\n if (\n !Object.values(custom).every(\n (value) => typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n ) {\n return 'Invalid custom type, only string, number and boolean values are allowed.';\n }\n }\n}\n\nexport function usePost() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/spaces`;\n}\n\nexport function postURL(modules: ModulesInject): string {\n const { config } = modules;\n return `/v1/objects/${config.subscribeKey}/spaces`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SpacesObjectInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function postPayload(\n modules: ModulesInject,\n incomingParams: SpacesObjectInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesResponse {\n return spacesResponse;\n}\n"],"file":"create_space.js"} \ No newline at end of file diff --git a/lib/core/endpoints/spaces/delete_space.js b/lib/core/endpoints/spaces/delete_space.js index ba507b83a..da6c63c8f 100644 --- a/lib/core/endpoints/spaces/delete_space.js +++ b/lib/core/endpoints/spaces/delete_space.js @@ -6,14 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -49,11 +48,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, spaceId) { - var token = modules.tokenManager.getToken('space', spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams() { return {}; } diff --git a/lib/core/endpoints/spaces/delete_space.js.map b/lib/core/endpoints/spaces/delete_space.js.map index f6163a204..77dcdfddf 100644 --- a/lib/core/endpoints/spaces/delete_space.js.map +++ b/lib/core/endpoints/spaces/delete_space.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/spaces/delete_space.js"],"names":["getOperation","operationConstants","PNDeleteSpaceOperation","validateParams","spaceId","config","subscribeKey","useDelete","getURL","modules","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","handleResponse","spacesResponse"],"mappings":";;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,sBAA1B;AACD;;AAEM,SAASC,cAAT,OAAmDC,OAAnD,EAAoE;AAAA,MAA1CC,MAA0C,QAA1CA,MAA0C;AACzE,MAAI,CAACD,OAAL,EAAc,OAAO,iBAAP;AACd,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,SAAT,GAAqB;AAC1B,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,CAAgBC,OAAhB,EAAwCL,OAAxC,EAAiE;AAAA,MAChEC,MADgE,GACrDI,OADqD,CAChEJ,MADgE;AAEtE,+BAAsBA,MAAM,CAACC,YAA7B,qBAAoDI,kBAAMC,YAAN,CAAmBP,OAAnB,CAApD;AACD;;AAEM,SAASQ,iBAAT,QAAsD;AAAA,MAAzBP,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACQ,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,YAAT,CAAsBN,OAAtB,EAA8CL,OAA9C,EAAuE;AAC5E,MAAIY,KAAK,GACPP,OAAO,CAACQ,YAAR,CAAqBC,QAArB,CAA8B,OAA9B,EAAuCd,OAAvC,KACAK,OAAO,CAACQ,YAAR,CAAqBC,QAArB,CAA8B,OAA9B,CAFF;AAIA,SAAOF,KAAP;AACD;;AAEM,SAASG,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CACLX,OADK,EAELY,cAFK,EAGW;AAChB,SAAOA,cAAP;AACD","sourcesContent":["/* @flow */\n\nimport { SpacesResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNDeleteSpaceOperation;\n}\n\nexport function validateParams({ config }: ModulesInject, spaceId: string) {\n if (!spaceId) return 'Missing SpaceId';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function useDelete() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, spaceId: string): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(spaceId)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, spaceId: string): string {\n let token =\n modules.tokenManager.getToken('space', spaceId) ||\n modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesResponse {\n return spacesResponse;\n}\n"],"file":"delete_space.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/spaces/delete_space.js"],"names":["getOperation","operationConstants","PNDeleteSpaceOperation","validateParams","spaceId","config","subscribeKey","useDelete","getURL","modules","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","spacesResponse"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,sBAA1B;AACD;;AAEM,SAASC,cAAT,OAAmDC,OAAnD,EAAoE;AAAA,MAA1CC,MAA0C,QAA1CA,MAA0C;AACzE,MAAI,CAACD,OAAL,EAAc,OAAO,iBAAP;AACd,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,SAAT,GAAqB;AAC1B,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,CAAgBC,OAAhB,EAAwCL,OAAxC,EAAiE;AACtE,MAAMC,MAAN,GAAiBI,OAAjB,CAAMJ,MAAN;AACA,+BAAsBA,MAAM,CAACC,YAA7B,qBAAoDI,kBAAMC,YAAN,CAAmBP,OAAnB,CAApD;AACD;;AAEM,SAASQ,iBAAT,QAAsD;AAAA,MAAzBP,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACQ,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CACLP,OADK,EAELQ,cAFK,EAGW;AAChB,SAAOA,cAAP;AACD","sourcesContent":["/* @flow */\n\nimport { SpacesResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNDeleteSpaceOperation;\n}\n\nexport function validateParams({ config }: ModulesInject, spaceId: string) {\n if (!spaceId) return 'Missing SpaceId';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function useDelete() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, spaceId: string): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(spaceId)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesResponse {\n return spacesResponse;\n}\n"],"file":"delete_space.js"} \ No newline at end of file diff --git a/lib/core/endpoints/spaces/get_space.js b/lib/core/endpoints/spaces/get_space.js index 1064d379a..cdd5fbd28 100644 --- a/lib/core/endpoints/spaces/get_space.js +++ b/lib/core/endpoints/spaces/get_space.js @@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -43,11 +42,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.spaceId) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; diff --git a/lib/core/endpoints/spaces/get_space.js.map b/lib/core/endpoints/spaces/get_space.js.map index 4e1caf52b..d80089159 100644 --- a/lib/core/endpoints/spaces/get_space.js.map +++ b/lib/core/endpoints/spaces/get_space.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/spaces/get_space.js"],"names":["getOperation","operationConstants","PNGetSpaceOperation","validateParams","modules","incomingParams","spaceId","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","handleResponse","spacesResponse"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AAAA,MACjFC,OADiF,GACrED,cADqE,CACjFC,OADiF;AAGvF,MAAI,CAACA,OAAL,EAAc,OAAO,iBAAP;AACf;;AAEM,SAASC,MAAT,CACLH,OADK,EAELC,cAFK,EAGG;AAAA,MACFG,MADE,GACSJ,OADT,CACFI,MADE;AAER,+BAAsBA,MAAM,CAACC,YAA7B,qBAAoDC,kBAAMC,YAAN,CAAmBN,cAAc,CAACC,OAAlC,CAApD;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,YAAT,CAAsBX,OAAtB,EAA8CC,cAA9C,EAAwF;AAC7F,MAAIW,KAAK,GACPZ,OAAO,CAACa,YAAR,CAAqBC,QAArB,CAA8B,OAA9B,EAAuCb,cAAc,CAACC,OAAtD,KACAF,OAAO,CAACa,YAAR,CAAqBC,QAArB,CAA8B,OAA9B,CAFF;AAIA,SAAOF,KAAP;AACD;;AAEM,SAASG,aAAT,CACLf,OADK,EAELC,cAFK,EAGG;AAAA,MACFe,OADE,GACUf,cADV,CACFe,OADE;AAER,MAAMC,MAAM,GAAG,EAAf;;AAGA,MAAI,CAACD,OAAL,EAAc;AACZA,IAAAA,OAAO,GAAG;AACRE,MAAAA,YAAY,EAAE;AADN,KAAV;AAGD,GAJD,MAIO,IAAIF,OAAO,CAACE,YAAR,KAAyBC,SAA7B,EAAwC;AAC7CH,IAAAA,OAAO,CAACE,YAAR,GAAuB,IAAvB;AACD;;AAED,MAAIF,OAAJ,EAAa;AACX,QAAII,QAAQ,GAAG,EAAf;;AAEA,QAAIJ,OAAO,CAACE,YAAZ,EAA0B;AACxBE,MAAAA,QAAQ,CAACC,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BP,MAAAA,MAAM,CAACD,OAAP,GAAiBM,cAAjB;AACD;AACF;;AAED,SAAOL,MAAP;AACD;;AAEM,SAASQ,cAAT,CACLzB,OADK,EAEL0B,cAFK,EAGW;AAChB,SAAOA,cAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SingleSpaceInput,\n SpacesResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetSpaceOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: SingleSpaceInput) {\n let { spaceId } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: SingleSpaceInput\n): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: SingleSpaceInput): string {\n let token =\n modules.tokenManager.getToken('space', incomingParams.spaceId) ||\n modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SingleSpaceInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesResponse {\n return spacesResponse;\n}\n"],"file":"get_space.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/spaces/get_space.js"],"names":["getOperation","operationConstants","PNGetSpaceOperation","validateParams","modules","incomingParams","spaceId","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","handleResponse","spacesResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAkF;AACvF,MAAMC,OAAN,GAAkBD,cAAlB,CAAMC,OAAN;AAEA,MAAI,CAACA,OAAL,EAAc,OAAO,iBAAP;AACf;;AAEM,SAASC,MAAT,CACLH,OADK,EAELC,cAFK,EAGG;AACR,MAAMG,MAAN,GAAiBJ,OAAjB,CAAMI,MAAN;AACA,+BAAsBA,MAAM,CAACC,YAA7B,qBAAoDC,kBAAMC,YAAN,CAAmBN,cAAc,CAACC,OAAlC,CAApD;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLX,OADK,EAELC,cAFK,EAGG;AACR,MAAMW,OAAN,GAAkBX,cAAlB,CAAMW,OAAN;AACA,MAAMC,MAAM,GAAG,EAAf;;AAGA,MAAI,CAACD,OAAL,EAAc;AACZA,IAAAA,OAAO,GAAG;AACRE,MAAAA,YAAY,EAAE;AADN,KAAV;AAGD,GAJD,MAIO,IAAIF,OAAO,CAACE,YAAR,KAAyBC,SAA7B,EAAwC;AAC7CH,IAAAA,OAAO,CAACE,YAAR,GAAuB,IAAvB;AACD;;AAED,MAAIF,OAAJ,EAAa;AACX,QAAII,QAAQ,GAAG,EAAf;;AAEA,QAAIJ,OAAO,CAACE,YAAZ,EAA0B;AACxBE,MAAAA,QAAQ,CAACC,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BP,MAAAA,MAAM,CAACD,OAAP,GAAiBM,cAAjB;AACD;AACF;;AAED,SAAOL,MAAP;AACD;;AAEM,SAASQ,cAAT,CACLrB,OADK,EAELsB,cAFK,EAGW;AAChB,SAAOA,cAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SingleSpaceInput,\n SpacesResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetSpaceOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: SingleSpaceInput) {\n let { spaceId } = incomingParams;\n\n if (!spaceId) return 'Missing spaceId';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: SingleSpaceInput\n): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(incomingParams.spaceId)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SingleSpaceInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesResponse {\n return spacesResponse;\n}\n"],"file":"get_space.js"} \ No newline at end of file diff --git a/lib/core/endpoints/spaces/get_spaces.js b/lib/core/endpoints/spaces/get_spaces.js index 2d8c355c6..db968df0f 100644 --- a/lib/core/endpoints/spaces/get_spaces.js +++ b/lib/core/endpoints/spaces/get_spaces.js @@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -38,11 +37,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules) { - var token = modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/spaces/get_spaces.js.map b/lib/core/endpoints/spaces/get_spaces.js.map index 391d50757..d6b200c34 100644 --- a/lib/core/endpoints/spaces/get_spaces.js.map +++ b/lib/core/endpoints/spaces/get_spaces.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/spaces/get_spaces.js"],"names":["getOperation","operationConstants","PNGetSpacesOperation","validateParams","getURL","modules","config","subscribeKey","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","incomingParams","include","limit","page","filter","params","includes","totalCount","count","customFields","push","includesString","join","length","next","start","prev","end","handleResponse","spacesResponse"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AAKA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,oBAA1B;AACD;;AAEM,SAASC,cAAT,GAA0B,CAEhC;;AAEM,SAASC,MAAT,CACLC,OADK,EAEG;AAAA,MACFC,MADE,GACSD,OADT,CACFC,MADE;AAGR,+BAAsBA,MAAM,CAACC,YAA7B;AACD;;AAEM,SAASC,iBAAT,OAAsD;AAAA,MAAzBF,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACG,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,YAAT,CAAsBN,OAAtB,EAAsD;AAC3D,MAAIO,KAAK,GAAGP,OAAO,CAACQ,YAAR,CAAqBC,QAArB,CAA8B,OAA9B,CAAZ;AAEA,SAAOF,KAAP;AACD;;AAEM,SAASG,aAAT,CACLV,OADK,EAELW,cAFK,EAGG;AAAA,MACAC,OADA,GACiCD,cADjC,CACAC,OADA;AAAA,MACSC,KADT,GACiCF,cADjC,CACSE,KADT;AAAA,MACgBC,IADhB,GACiCH,cADjC,CACgBG,IADhB;AAAA,MACsBC,MADtB,GACiCJ,cADjC,CACsBI,MADtB;AAER,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,KAAJ,EAAW;AACTG,IAAAA,MAAM,CAACH,KAAP,GAAeA,KAAf;AACD;;AAED,MAAID,OAAJ,EAAa;AACX,QAAIK,QAAQ,GAAG,EAAf;;AAEA,QAAIL,OAAO,CAACM,UAAZ,EAAwB;AACtBF,MAAAA,MAAM,CAACG,KAAP,GAAe,IAAf;AACD;;AAED,QAAIP,OAAO,CAACQ,YAAZ,EAA0B;AACxBH,MAAAA,QAAQ,CAACI,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGL,QAAQ,CAACM,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BR,MAAAA,MAAM,CAACJ,OAAP,GAAiBU,cAAjB;AACD;AACF;;AAED,MAAIR,IAAJ,EAAU;AACR,QAAIA,IAAI,CAACW,IAAT,EAAe;AACbT,MAAAA,MAAM,CAACU,KAAP,GAAeZ,IAAI,CAACW,IAApB;AACD;;AACD,QAAIX,IAAI,CAACa,IAAT,EAAe;AACbX,MAAAA,MAAM,CAACY,GAAP,GAAad,IAAI,CAACa,IAAlB;AACD;AACF;;AAED,MAAIZ,MAAJ,EAAY;AACVC,IAAAA,MAAM,CAACD,MAAP,GAAgBA,MAAhB;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASa,cAAT,CACL7B,OADK,EAEL8B,cAFK,EAGe;AACpB,SAAOA,cAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SpaceListInput,\n SpacesListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNGetSpacesOperation;\n}\n\nexport function validateParams() {\n // no required parameters\n}\n\nexport function getURL(\n modules: ModulesInject\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject): string {\n let token = modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SpaceListInput\n): Object {\n const { include, limit, page, filter } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n if (filter) {\n params.filter = filter;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesListResponse {\n return spacesResponse;\n}\n"],"file":"get_spaces.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/spaces/get_spaces.js"],"names":["getOperation","operationConstants","PNGetSpacesOperation","validateParams","getURL","modules","config","subscribeKey","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","incomingParams","include","limit","page","filter","params","includes","totalCount","count","customFields","push","includesString","join","length","next","start","prev","end","handleResponse","spacesResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,oBAA1B;AACD;;AAEM,SAASC,cAAT,GAA0B,CAEhC;;AAEM,SAASC,MAAT,CACLC,OADK,EAEG;AACR,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AAEA,+BAAsBA,MAAM,CAACC,YAA7B;AACD;;AAEM,SAASC,iBAAT,OAAsD;AAAA,MAAzBF,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACG,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLN,OADK,EAELO,cAFK,EAGG;AACR,MAAQC,OAAR,GAAyCD,cAAzC,CAAQC,OAAR;AAAA,MAAiBC,KAAjB,GAAyCF,cAAzC,CAAiBE,KAAjB;AAAA,MAAwBC,IAAxB,GAAyCH,cAAzC,CAAwBG,IAAxB;AAAA,MAA8BC,MAA9B,GAAyCJ,cAAzC,CAA8BI,MAA9B;AACA,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,KAAJ,EAAW;AACTG,IAAAA,MAAM,CAACH,KAAP,GAAeA,KAAf;AACD;;AAED,MAAID,OAAJ,EAAa;AACX,QAAIK,QAAQ,GAAG,EAAf;;AAEA,QAAIL,OAAO,CAACM,UAAZ,EAAwB;AACtBF,MAAAA,MAAM,CAACG,KAAP,GAAe,IAAf;AACD;;AAED,QAAIP,OAAO,CAACQ,YAAZ,EAA0B;AACxBH,MAAAA,QAAQ,CAACI,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGL,QAAQ,CAACM,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BR,MAAAA,MAAM,CAACJ,OAAP,GAAiBU,cAAjB;AACD;AACF;;AAED,MAAIR,IAAJ,EAAU;AACR,QAAIA,IAAI,CAACW,IAAT,EAAe;AACbT,MAAAA,MAAM,CAACU,KAAP,GAAeZ,IAAI,CAACW,IAApB;AACD;;AACD,QAAIX,IAAI,CAACa,IAAT,EAAe;AACbX,MAAAA,MAAM,CAACY,GAAP,GAAad,IAAI,CAACa,IAAlB;AACD;AACF;;AAED,MAAIZ,MAAJ,EAAY;AACVC,IAAAA,MAAM,CAACD,MAAP,GAAgBA,MAAhB;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASa,cAAT,CACLzB,OADK,EAEL0B,cAFK,EAGe;AACpB,SAAOA,cAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SpaceListInput,\n SpacesListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNGetSpacesOperation;\n}\n\nexport function validateParams() {\n // no required parameters\n}\n\nexport function getURL(\n modules: ModulesInject\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/spaces`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SpaceListInput\n): Object {\n const { include, limit, page, filter } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n if (filter) {\n params.filter = filter;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesListResponse {\n return spacesResponse;\n}\n"],"file":"get_spaces.js"} \ No newline at end of file diff --git a/lib/core/endpoints/spaces/update_space.js b/lib/core/endpoints/spaces/update_space.js index e4c107ead..79ddf0821 100644 --- a/lib/core/endpoints/spaces/update_space.js +++ b/lib/core/endpoints/spaces/update_space.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePatch = usePatch; -exports.getURL = getURL; -exports.patchURL = patchURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -74,11 +73,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('space', incomingParams.id) || modules.tokenManager.getToken('space'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; diff --git a/lib/core/endpoints/spaces/update_space.js.map b/lib/core/endpoints/spaces/update_space.js.map index a170d1838..938aab261 100644 --- a/lib/core/endpoints/spaces/update_space.js.map +++ b/lib/core/endpoints/spaces/update_space.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/spaces/update_space.js"],"names":["prepareMessagePayload","modules","incomingParams","getOperation","operationConstants","PNUpdateSpaceOperation","validateParams","config","id","name","custom","subscribeKey","Object","values","every","value","usePatch","getURL","utils","encodeString","patchURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","patchPayload","handleResponse","spacesResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n SpacesObjectInput,\n SpacesResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n return incomingParams;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateSpaceOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: SpacesObjectInput\n) {\n let { id, name, custom } = incomingParams;\n\n if (!id) return 'Missing Space.id';\n if (!name) return 'Missing Space.name';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (custom) {\n if (\n !Object.values(custom).every(\n (value) => typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n ) {\n return 'Invalid custom type, only string, number and boolean values are allowed.';\n }\n }\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: SpacesObjectInput): string {\n let { config } = modules;\n const { id } = incomingParams;\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(id)}`;\n}\n\nexport function patchURL(modules: ModulesInject, incomingParams: SpacesObjectInput): string {\n const { config } = modules;\n const { id } = incomingParams;\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(id)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: SpacesObjectInput): string {\n let token =\n modules.tokenManager.getToken('space', incomingParams.id) ||\n modules.tokenManager.getToken('space');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SpacesObjectInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: SpacesObjectInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesResponse {\n return spacesResponse;\n}\n"],"file":"update_space.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/spaces/update_space.js"],"names":["prepareMessagePayload","modules","incomingParams","getOperation","operationConstants","PNUpdateSpaceOperation","validateParams","config","id","name","custom","subscribeKey","Object","values","every","value","usePatch","getURL","utils","encodeString","patchURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","patchPayload","handleResponse","spacesResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n SpacesObjectInput,\n SpacesResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n return incomingParams;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateSpaceOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: SpacesObjectInput\n) {\n let { id, name, custom } = incomingParams;\n\n if (!id) return 'Missing Space.id';\n if (!name) return 'Missing Space.name';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (custom) {\n if (\n !Object.values(custom).every(\n (value) => typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n ) {\n return 'Invalid custom type, only string, number and boolean values are allowed.';\n }\n }\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: SpacesObjectInput): string {\n let { config } = modules;\n const { id } = incomingParams;\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(id)}`;\n}\n\nexport function patchURL(modules: ModulesInject, incomingParams: SpacesObjectInput): string {\n const { config } = modules;\n const { id } = incomingParams;\n return `/v1/objects/${config.subscribeKey}/spaces/${utils.encodeString(id)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SpacesObjectInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: SpacesObjectInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n spacesResponse: Object\n): SpacesResponse {\n return spacesResponse;\n}\n"],"file":"update_space.js"} \ No newline at end of file diff --git a/lib/core/endpoints/subscribe.js b/lib/core/endpoints/subscribe.js index e939615b0..ffeea41d6 100644 --- a/lib/core/endpoints/subscribe.js +++ b/lib/core/endpoints/subscribe.js @@ -6,12 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../flow_interfaces"); diff --git a/lib/core/endpoints/subscribe.js.map b/lib/core/endpoints/subscribe.js.map index b193709fb..bfe95af8d 100644 --- a/lib/core/endpoints/subscribe.js.map +++ b/lib/core/endpoints/subscribe.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/subscribe.js"],"names":["getOperation","operationConstants","PNSubscribeOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","channels","stringifiedChannels","length","join","utils","encodeString","getRequestTimeout","getSubscribeTimeout","isAuthSupported","prepareParams","state","channelGroups","timetoken","filterExpression","region","params","heartbeat","getPresenceTimeout","Object","keys","JSON","stringify","tt","tr","handleResponse","serverResponse","messages","m","forEach","rawMessage","publishMetaData","publishTimetoken","p","t","r","parsedMessage","shard","parseInt","a","subscriptionMatch","b","channel","c","messageType","e","payload","d","flags","f","issuingClientId","i","k","originationTimetoken","o","userMetadata","u","push","metadata"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n SubscribeArguments,\n PublishMetaData,\n SubscribeMetadata,\n SubscribeMessage,\n SubscribeEnvelope,\n ModulesInject,\n} from '../flow_interfaces';\nimport operationConstants from '../constants/operations';\nimport utils from '../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNSubscribeOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: SubscribeArguments\n): string {\n let { config } = modules;\n let { channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/subscribe/${config.subscribeKey}/${utils.encodeString(\n stringifiedChannels\n )}/0`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getSubscribeTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n { config }: ModulesInject,\n incomingParams: SubscribeArguments\n): Object {\n let {\n state,\n channelGroups = [],\n timetoken,\n filterExpression,\n region,\n } = incomingParams;\n const params: Object = {\n heartbeat: config.getPresenceTimeout(),\n };\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n if (filterExpression && filterExpression.length > 0) {\n params['filter-expr'] = filterExpression;\n }\n\n if (Object.keys(state).length) {\n params.state = JSON.stringify(state);\n }\n\n if (timetoken) {\n params.tt = timetoken;\n }\n\n if (region) {\n params.tr = region;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: Object\n): SubscribeEnvelope {\n const messages: Array = [];\n\n serverResponse.m.forEach((rawMessage) => {\n let publishMetaData: PublishMetaData = {\n publishTimetoken: rawMessage.p.t,\n region: rawMessage.p.r,\n };\n let parsedMessage: SubscribeMessage = {\n shard: parseInt(rawMessage.a, 10),\n subscriptionMatch: rawMessage.b,\n channel: rawMessage.c,\n messageType: rawMessage.e,\n payload: rawMessage.d,\n flags: rawMessage.f,\n issuingClientId: rawMessage.i,\n subscribeKey: rawMessage.k,\n originationTimetoken: rawMessage.o,\n userMetadata: rawMessage.u,\n publishMetaData,\n };\n messages.push(parsedMessage);\n });\n\n const metadata: SubscribeMetadata = {\n timetoken: serverResponse.t.t,\n region: serverResponse.t.r,\n };\n\n return { messages, metadata };\n}\n"],"file":"subscribe.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/subscribe.js"],"names":["getOperation","operationConstants","PNSubscribeOperation","validateParams","modules","config","subscribeKey","getURL","incomingParams","channels","stringifiedChannels","length","join","utils","encodeString","getRequestTimeout","getSubscribeTimeout","isAuthSupported","prepareParams","state","channelGroups","timetoken","filterExpression","region","params","heartbeat","getPresenceTimeout","Object","keys","JSON","stringify","tt","tr","handleResponse","serverResponse","messages","m","forEach","rawMessage","publishMetaData","publishTimetoken","p","t","r","parsedMessage","shard","parseInt","a","subscriptionMatch","b","channel","c","messageType","e","payload","d","flags","f","issuingClientId","i","k","originationTimetoken","o","userMetadata","u","push","metadata"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n SubscribeArguments,\n PublishMetaData,\n SubscribeMetadata,\n SubscribeMessage,\n SubscribeEnvelope,\n ModulesInject,\n} from '../flow_interfaces';\nimport operationConstants from '../constants/operations';\nimport utils from '../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNSubscribeOperation;\n}\n\nexport function validateParams(modules: ModulesInject) {\n let { config } = modules;\n\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: SubscribeArguments\n): string {\n let { config } = modules;\n let { channels = [] } = incomingParams;\n let stringifiedChannels = channels.length > 0 ? channels.join(',') : ',';\n return `/v2/subscribe/${config.subscribeKey}/${utils.encodeString(\n stringifiedChannels\n )}/0`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getSubscribeTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n { config }: ModulesInject,\n incomingParams: SubscribeArguments\n): Object {\n let {\n state,\n channelGroups = [],\n timetoken,\n filterExpression,\n region,\n } = incomingParams;\n const params: Object = {\n heartbeat: config.getPresenceTimeout(),\n };\n\n if (channelGroups.length > 0) {\n params['channel-group'] = channelGroups.join(',');\n }\n\n if (filterExpression && filterExpression.length > 0) {\n params['filter-expr'] = filterExpression;\n }\n\n if (Object.keys(state).length) {\n params.state = JSON.stringify(state);\n }\n\n if (timetoken) {\n params.tt = timetoken;\n }\n\n if (region) {\n params.tr = region;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n serverResponse: Object\n): SubscribeEnvelope {\n const messages: Array = [];\n\n serverResponse.m.forEach((rawMessage) => {\n let publishMetaData: PublishMetaData = {\n publishTimetoken: rawMessage.p.t,\n region: rawMessage.p.r,\n };\n let parsedMessage: SubscribeMessage = {\n shard: parseInt(rawMessage.a, 10),\n subscriptionMatch: rawMessage.b,\n channel: rawMessage.c,\n messageType: rawMessage.e,\n payload: rawMessage.d,\n flags: rawMessage.f,\n issuingClientId: rawMessage.i,\n subscribeKey: rawMessage.k,\n originationTimetoken: rawMessage.o,\n userMetadata: rawMessage.u,\n publishMetaData,\n };\n messages.push(parsedMessage);\n });\n\n const metadata: SubscribeMetadata = {\n timetoken: serverResponse.t.t,\n region: serverResponse.t.r,\n };\n\n return { messages, metadata };\n}\n"],"file":"subscribe.js"} \ No newline at end of file diff --git a/lib/core/endpoints/time.js b/lib/core/endpoints/time.js index 8587b18c7..701f452f5 100644 --- a/lib/core/endpoints/time.js +++ b/lib/core/endpoints/time.js @@ -6,11 +6,11 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; -exports.prepareParams = prepareParams; -exports.isAuthSupported = isAuthSupported; +exports.getURL = getURL; exports.handleResponse = handleResponse; +exports.isAuthSupported = isAuthSupported; +exports.prepareParams = prepareParams; exports.validateParams = validateParams; var _flow_interfaces = require("../flow_interfaces"); diff --git a/lib/core/endpoints/users/create_user.js b/lib/core/endpoints/users/create_user.js index b35e2a0a4..d94bb4e77 100644 --- a/lib/core/endpoints/users/create_user.js +++ b/lib/core/endpoints/users/create_user.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePost = usePost; -exports.getURL = getURL; -exports.postURL = postURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.postPayload = postPayload; -exports.handleResponse = handleResponse; +exports.postURL = postURL; +exports.prepareParams = prepareParams; +exports.usePost = usePost; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -70,11 +69,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; diff --git a/lib/core/endpoints/users/create_user.js.map b/lib/core/endpoints/users/create_user.js.map index 1c2e3ad6a..8c0b98acf 100644 --- a/lib/core/endpoints/users/create_user.js.map +++ b/lib/core/endpoints/users/create_user.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/users/create_user.js"],"names":["prepareMessagePayload","modules","incomingParams","getOperation","operationConstants","PNCreateUserOperation","validateParams","config","id","name","custom","subscribeKey","Object","values","every","value","usePost","getURL","postURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","postPayload","handleResponse","usersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n UsersObjectInput,\n UsersResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n return incomingParams;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNCreateUserOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: UsersObjectInput\n) {\n let { id, name, custom } = incomingParams;\n\n if (!id) return 'Missing User.id';\n if (!name) return 'Missing User.name';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (custom) {\n if (\n !Object.values(custom).every(\n (value) => typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n ) {\n return 'Invalid custom type, only string, number and boolean values are allowed.';\n }\n }\n}\n\nexport function usePost() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/users`;\n}\n\nexport function postURL(modules: ModulesInject): string {\n const { config } = modules;\n return `/v1/objects/${config.subscribeKey}/users`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: UsersObjectInput): string {\n let token =\n modules.tokenManager.getToken('user', incomingParams.id) ||\n modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: UsersObjectInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function postPayload(\n modules: ModulesInject,\n incomingParams: UsersObjectInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersResponse {\n return usersResponse;\n}\n"],"file":"create_user.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/users/create_user.js"],"names":["prepareMessagePayload","modules","incomingParams","getOperation","operationConstants","PNCreateUserOperation","validateParams","config","id","name","custom","subscribeKey","Object","values","every","value","usePost","getURL","postURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","postPayload","handleResponse","usersResponse"],"mappings":";;;;;;;;;;;;;;;;;;AAEA;;AAKA;;AAEA,SAASA,qBAAT,CAA+BC,OAA/B,EAAwCC,cAAxC,EAAwD;AACtD,SAAOA,cAAP;AACD;;AAEM,SAASC,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,qBAA1B;AACD;;AAEM,SAASC,cAAT,OAELJ,cAFK,EAGL;AAAA,MAFEK,MAEF,QAFEA,MAEF;AACA,MAAMC,EAAN,GAA2BN,cAA3B,CAAMM,EAAN;AAAA,MAAUC,IAAV,GAA2BP,cAA3B,CAAUO,IAAV;AAAA,MAAgBC,MAAhB,GAA2BR,cAA3B,CAAgBQ,MAAhB;AAEA,MAAI,CAACF,EAAL,EAAS,OAAO,iBAAP;AACT,MAAI,CAACC,IAAL,EAAW,OAAO,mBAAP;AACX,MAAI,CAACF,MAAM,CAACI,YAAZ,EAA0B,OAAO,uBAAP;;AAE1B,MAAID,MAAJ,EAAY;AACV,QACE,CAACE,MAAM,CAACC,MAAP,CAAcH,MAAd,EAAsBI,KAAtB,CACC,UAACC,KAAD;AAAA,aAAW,OAAOA,KAAP,KAAiB,QAAjB,IACA,OAAOA,KAAP,KAAiB,QADjB,IAEA,OAAOA,KAAP,KAAiB,SAF5B;AAAA,KADD,CADH,EAME;AACA,aAAO,0EAAP;AACD;AACF;AACF;;AAEM,SAASC,OAAT,GAAmB;AACxB,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,CAAgBhB,OAAhB,EAAgD;AACrD,MAAMM,MAAN,GAAiBN,OAAjB,CAAMM,MAAN;AACA,+BAAsBA,MAAM,CAACI,YAA7B;AACD;;AAEM,SAASO,OAAT,CAAiBjB,OAAjB,EAAiD;AACtD,MAAQM,MAAR,GAAmBN,OAAnB,CAAQM,MAAR;AACA,+BAAsBA,MAAM,CAACI,YAA7B;AACD;;AAEM,SAASQ,iBAAT,QAAsD;AAAA,MAAzBZ,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACa,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLrB,OADK,EAELC,cAFK,EAGG;AACR,MAAMqB,OAAN,GAAkBrB,cAAlB,CAAMqB,OAAN;AACA,MAAMC,MAAM,GAAG,EAAf;;AAGA,MAAI,CAACD,OAAL,EAAc;AACZA,IAAAA,OAAO,GAAG;AACRE,MAAAA,YAAY,EAAE;AADN,KAAV;AAGD,GAJD,MAIO,IAAIF,OAAO,CAACE,YAAR,KAAyBC,SAA7B,EAAwC;AAC7CH,IAAAA,OAAO,CAACE,YAAR,GAAuB,IAAvB;AACD;;AAED,MAAIF,OAAJ,EAAa;AACX,QAAII,QAAQ,GAAG,EAAf;;AAEA,QAAIJ,OAAO,CAACE,YAAZ,EAA0B;AACxBE,MAAAA,QAAQ,CAACC,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BP,MAAAA,MAAM,CAACD,OAAP,GAAiBM,cAAjB;AACD;AACF;;AAED,SAAOL,MAAP;AACD;;AAEM,SAASQ,WAAT,CACL/B,OADK,EAELC,cAFK,EAGG;AACR,SAAOF,qBAAqB,CAACC,OAAD,EAAUC,cAAV,CAA5B;AACD;;AAEM,SAAS+B,cAAT,CACLhC,OADK,EAELiC,aAFK,EAGU;AACf,SAAOA,aAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n UsersObjectInput,\n UsersResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n return incomingParams;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNCreateUserOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: UsersObjectInput\n) {\n let { id, name, custom } = incomingParams;\n\n if (!id) return 'Missing User.id';\n if (!name) return 'Missing User.name';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (custom) {\n if (\n !Object.values(custom).every(\n (value) => typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n ) {\n return 'Invalid custom type, only string, number and boolean values are allowed.';\n }\n }\n}\n\nexport function usePost() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/users`;\n}\n\nexport function postURL(modules: ModulesInject): string {\n const { config } = modules;\n return `/v1/objects/${config.subscribeKey}/users`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: UsersObjectInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function postPayload(\n modules: ModulesInject,\n incomingParams: UsersObjectInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersResponse {\n return usersResponse;\n}\n"],"file":"create_user.js"} \ No newline at end of file diff --git a/lib/core/endpoints/users/delete_user.js b/lib/core/endpoints/users/delete_user.js index a55a37903..8685c0616 100644 --- a/lib/core/endpoints/users/delete_user.js +++ b/lib/core/endpoints/users/delete_user.js @@ -6,14 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.useDelete = useDelete; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.useDelete = useDelete; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -49,11 +48,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, userId) { - var token = modules.tokenManager.getToken('user', userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams() { return {}; } diff --git a/lib/core/endpoints/users/delete_user.js.map b/lib/core/endpoints/users/delete_user.js.map index cc52940b8..be27edbcd 100644 --- a/lib/core/endpoints/users/delete_user.js.map +++ b/lib/core/endpoints/users/delete_user.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/users/delete_user.js"],"names":["getOperation","operationConstants","PNDeleteUserOperation","validateParams","userId","config","subscribeKey","useDelete","getURL","modules","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","handleResponse","usersResponse"],"mappings":";;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,qBAA1B;AACD;;AAEM,SAASC,cAAT,OAAmDC,MAAnD,EAAmE;AAAA,MAAzCC,MAAyC,QAAzCA,MAAyC;AACxE,MAAI,CAACD,MAAL,EAAa,OAAO,gBAAP;AACb,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,SAAT,GAAqB;AAC1B,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,CAAgBC,OAAhB,EAAwCL,MAAxC,EAAgE;AAAA,MAC/DC,MAD+D,GACpDI,OADoD,CAC/DJ,MAD+D;AAErE,+BAAsBA,MAAM,CAACC,YAA7B,oBAAmDI,kBAAMC,YAAN,CAAmBP,MAAnB,CAAnD;AACD;;AAEM,SAASQ,iBAAT,QAAsD;AAAA,MAAzBP,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACQ,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,YAAT,CAAsBN,OAAtB,EAA8CL,MAA9C,EAAsE;AAC3E,MAAIY,KAAK,GACPP,OAAO,CAACQ,YAAR,CAAqBC,QAArB,CAA8B,MAA9B,EAAsCd,MAAtC,KACAK,OAAO,CAACQ,YAAR,CAAqBC,QAArB,CAA8B,MAA9B,CAFF;AAIA,SAAOF,KAAP;AACD;;AAEM,SAASG,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CACLX,OADK,EAELY,aAFK,EAGU;AACf,SAAOA,aAAP;AACD","sourcesContent":["/* @flow */\n\nimport { UsersResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNDeleteUserOperation;\n}\n\nexport function validateParams({ config }: ModulesInject, userId: string) {\n if (!userId) return 'Missing UserId';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function useDelete() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, userId: string): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(userId)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, userId: string): string {\n let token =\n modules.tokenManager.getToken('user', userId) ||\n modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersResponse {\n return usersResponse;\n}\n"],"file":"delete_user.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/users/delete_user.js"],"names":["getOperation","operationConstants","PNDeleteUserOperation","validateParams","userId","config","subscribeKey","useDelete","getURL","modules","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","handleResponse","usersResponse"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,qBAA1B;AACD;;AAEM,SAASC,cAAT,OAAmDC,MAAnD,EAAmE;AAAA,MAAzCC,MAAyC,QAAzCA,MAAyC;AACxE,MAAI,CAACD,MAAL,EAAa,OAAO,gBAAP;AACb,MAAI,CAACC,MAAM,CAACC,YAAZ,EAA0B,OAAO,uBAAP;AAC3B;;AAEM,SAASC,SAAT,GAAqB;AAC1B,SAAO,IAAP;AACD;;AAEM,SAASC,MAAT,CAAgBC,OAAhB,EAAwCL,MAAxC,EAAgE;AACrE,MAAMC,MAAN,GAAiBI,OAAjB,CAAMJ,MAAN;AACA,+BAAsBA,MAAM,CAACC,YAA7B,oBAAmDI,kBAAMC,YAAN,CAAmBP,MAAnB,CAAnD;AACD;;AAEM,SAASQ,iBAAT,QAAsD;AAAA,MAAzBP,MAAyB,SAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACQ,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,GAAiC;AACtC,SAAO,EAAP;AACD;;AAEM,SAASC,cAAT,CACLP,OADK,EAELQ,aAFK,EAGU;AACf,SAAOA,aAAP;AACD","sourcesContent":["/* @flow */\n\nimport { UsersResponse, ModulesInject } from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNDeleteUserOperation;\n}\n\nexport function validateParams({ config }: ModulesInject, userId: string) {\n if (!userId) return 'Missing UserId';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n}\n\nexport function useDelete() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, userId: string): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(userId)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(): Object {\n return {};\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersResponse {\n return usersResponse;\n}\n"],"file":"delete_user.js"} \ No newline at end of file diff --git a/lib/core/endpoints/users/get_user.js b/lib/core/endpoints/users/get_user.js index 2a7e01380..8d31bd587 100644 --- a/lib/core/endpoints/users/get_user.js +++ b/lib/core/endpoints/users/get_user.js @@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -43,11 +42,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.userId) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; diff --git a/lib/core/endpoints/users/get_user.js.map b/lib/core/endpoints/users/get_user.js.map index 1dd925c57..030e8076c 100644 --- a/lib/core/endpoints/users/get_user.js.map +++ b/lib/core/endpoints/users/get_user.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/users/get_user.js"],"names":["getOperation","operationConstants","PNGetUserOperation","validateParams","modules","incomingParams","userId","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","handleResponse","usersResponse"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,kBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAiF;AAAA,MAChFC,MADgF,GACrED,cADqE,CAChFC,MADgF;AAGtF,MAAI,CAACA,MAAL,EAAa,OAAO,gBAAP;AACd;;AAEM,SAASC,MAAT,CACLH,OADK,EAELC,cAFK,EAGG;AAAA,MACFG,MADE,GACSJ,OADT,CACFI,MADE;AAGR,+BAAsBA,MAAM,CAACC,YAA7B,oBAAmDC,kBAAMC,YAAN,CAAmBN,cAAc,CAACC,MAAlC,CAAnD;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,YAAT,CAAsBX,OAAtB,EAA8CC,cAA9C,EAAuF;AAC5F,MAAIW,KAAK,GACPZ,OAAO,CAACa,YAAR,CAAqBC,QAArB,CAA8B,MAA9B,EAAsCb,cAAc,CAACC,MAArD,KACAF,OAAO,CAACa,YAAR,CAAqBC,QAArB,CAA8B,MAA9B,CAFF;AAIA,SAAOF,KAAP;AACD;;AAEM,SAASG,aAAT,CACLf,OADK,EAELC,cAFK,EAGG;AAAA,MACFe,OADE,GACUf,cADV,CACFe,OADE;AAER,MAAMC,MAAM,GAAG,EAAf;;AAGA,MAAI,CAACD,OAAL,EAAc;AACZA,IAAAA,OAAO,GAAG;AACRE,MAAAA,YAAY,EAAE;AADN,KAAV;AAGD,GAJD,MAIO,IAAIF,OAAO,CAACE,YAAR,KAAyBC,SAA7B,EAAwC;AAC7CH,IAAAA,OAAO,CAACE,YAAR,GAAuB,IAAvB;AACD;;AAED,MAAIF,OAAJ,EAAa;AACX,QAAII,QAAQ,GAAG,EAAf;;AAEA,QAAIJ,OAAO,CAACE,YAAZ,EAA0B;AACxBE,MAAAA,QAAQ,CAACC,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BP,MAAAA,MAAM,CAACD,OAAP,GAAiBM,cAAjB;AACD;AACF;;AAED,SAAOL,MAAP;AACD;;AAEM,SAASQ,cAAT,CACLzB,OADK,EAEL0B,aAFK,EAGU;AACf,SAAOA,aAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SingleUserInput,\n UsersResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetUserOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: SingleUserInput) {\n let { userId } = incomingParams;\n\n if (!userId) return 'Missing userId';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: SingleUserInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: SingleUserInput): string {\n let token =\n modules.tokenManager.getToken('user', incomingParams.userId) ||\n modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SingleUserInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersResponse {\n return usersResponse;\n}\n"],"file":"get_user.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/users/get_user.js"],"names":["getOperation","operationConstants","PNGetUserOperation","validateParams","modules","incomingParams","userId","getURL","config","subscribeKey","utils","encodeString","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","handleResponse","usersResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AACA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,kBAA1B;AACD;;AAEM,SAASC,cAAT,CAAwBC,OAAxB,EAAgDC,cAAhD,EAAiF;AACtF,MAAMC,MAAN,GAAiBD,cAAjB,CAAMC,MAAN;AAEA,MAAI,CAACA,MAAL,EAAa,OAAO,gBAAP;AACd;;AAEM,SAASC,MAAT,CACLH,OADK,EAELC,cAFK,EAGG;AACR,MAAMG,MAAN,GAAiBJ,OAAjB,CAAMI,MAAN;AAEA,+BAAsBA,MAAM,CAACC,YAA7B,oBAAmDC,kBAAMC,YAAN,CAAmBN,cAAc,CAACC,MAAlC,CAAnD;AACD;;AAEM,SAASM,iBAAT,OAAsD;AAAA,MAAzBJ,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACK,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLX,OADK,EAELC,cAFK,EAGG;AACR,MAAMW,OAAN,GAAkBX,cAAlB,CAAMW,OAAN;AACA,MAAMC,MAAM,GAAG,EAAf;;AAGA,MAAI,CAACD,OAAL,EAAc;AACZA,IAAAA,OAAO,GAAG;AACRE,MAAAA,YAAY,EAAE;AADN,KAAV;AAGD,GAJD,MAIO,IAAIF,OAAO,CAACE,YAAR,KAAyBC,SAA7B,EAAwC;AAC7CH,IAAAA,OAAO,CAACE,YAAR,GAAuB,IAAvB;AACD;;AAED,MAAIF,OAAJ,EAAa;AACX,QAAII,QAAQ,GAAG,EAAf;;AAEA,QAAIJ,OAAO,CAACE,YAAZ,EAA0B;AACxBE,MAAAA,QAAQ,CAACC,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGF,QAAQ,CAACG,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BP,MAAAA,MAAM,CAACD,OAAP,GAAiBM,cAAjB;AACD;AACF;;AAED,SAAOL,MAAP;AACD;;AAEM,SAASQ,cAAT,CACLrB,OADK,EAELsB,aAFK,EAGU;AACf,SAAOA,aAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n SingleUserInput,\n UsersResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nexport function getOperation(): string {\n return operationConstants.PNGetUserOperation;\n}\n\nexport function validateParams(modules: ModulesInject, incomingParams: SingleUserInput) {\n let { userId } = incomingParams;\n\n if (!userId) return 'Missing userId';\n}\n\nexport function getURL(\n modules: ModulesInject,\n incomingParams: SingleUserInput\n): string {\n let { config } = modules;\n\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(incomingParams.userId)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: SingleUserInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersResponse {\n return usersResponse;\n}\n"],"file":"get_user.js"} \ No newline at end of file diff --git a/lib/core/endpoints/users/get_users.js b/lib/core/endpoints/users/get_users.js index fc807d6db..4a304613f 100644 --- a/lib/core/endpoints/users/get_users.js +++ b/lib/core/endpoints/users/get_users.js @@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.getURL = getURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; exports.prepareParams = prepareParams; -exports.handleResponse = handleResponse; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -38,11 +37,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules) { - var token = modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include, limit = incomingParams.limit, diff --git a/lib/core/endpoints/users/get_users.js.map b/lib/core/endpoints/users/get_users.js.map index 1796b1d64..4a7f6e307 100644 --- a/lib/core/endpoints/users/get_users.js.map +++ b/lib/core/endpoints/users/get_users.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/users/get_users.js"],"names":["getOperation","operationConstants","PNGetUsersOperation","validateParams","getURL","modules","config","subscribeKey","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","incomingParams","include","limit","page","filter","params","includes","totalCount","count","customFields","push","includesString","join","length","next","start","prev","end","handleResponse","usersResponse"],"mappings":";;;;;;;;;;;;;;;;AAEA;;AAKA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,GAA0B,CAEhC;;AAEM,SAASC,MAAT,CACLC,OADK,EAEG;AAAA,MACFC,MADE,GACSD,OADT,CACFC,MADE;AAER,+BAAsBA,MAAM,CAACC,YAA7B;AACD;;AAEM,SAASC,iBAAT,OAAsD;AAAA,MAAzBF,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACG,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,YAAT,CAAsBN,OAAtB,EAAsD;AAC3D,MAAIO,KAAK,GAAGP,OAAO,CAACQ,YAAR,CAAqBC,QAArB,CAA8B,MAA9B,CAAZ;AAEA,SAAOF,KAAP;AACD;;AAEM,SAASG,aAAT,CACLV,OADK,EAELW,cAFK,EAGG;AAAA,MACAC,OADA,GACiCD,cADjC,CACAC,OADA;AAAA,MACSC,KADT,GACiCF,cADjC,CACSE,KADT;AAAA,MACgBC,IADhB,GACiCH,cADjC,CACgBG,IADhB;AAAA,MACsBC,MADtB,GACiCJ,cADjC,CACsBI,MADtB;AAER,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,KAAJ,EAAW;AACTG,IAAAA,MAAM,CAACH,KAAP,GAAeA,KAAf;AACD;;AAED,MAAID,OAAJ,EAAa;AACX,QAAIK,QAAQ,GAAG,EAAf;;AAEA,QAAIL,OAAO,CAACM,UAAZ,EAAwB;AACtBF,MAAAA,MAAM,CAACG,KAAP,GAAe,IAAf;AACD;;AAED,QAAIP,OAAO,CAACQ,YAAZ,EAA0B;AACxBH,MAAAA,QAAQ,CAACI,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGL,QAAQ,CAACM,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BR,MAAAA,MAAM,CAACJ,OAAP,GAAiBU,cAAjB;AACD;AACF;;AAED,MAAIR,IAAJ,EAAU;AACR,QAAIA,IAAI,CAACW,IAAT,EAAe;AACbT,MAAAA,MAAM,CAACU,KAAP,GAAeZ,IAAI,CAACW,IAApB;AACD;;AACD,QAAIX,IAAI,CAACa,IAAT,EAAe;AACbX,MAAAA,MAAM,CAACY,GAAP,GAAad,IAAI,CAACa,IAAlB;AACD;AACF;;AAED,MAAIZ,MAAJ,EAAY;AACVC,IAAAA,MAAM,CAACD,MAAP,GAAgBA,MAAhB;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASa,cAAT,CACL7B,OADK,EAEL8B,aAFK,EAGc;AACnB,SAAOA,aAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n UserListInput,\n UsersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNGetUsersOperation;\n}\n\nexport function validateParams() {\n // no required parameters\n}\n\nexport function getURL(\n modules: ModulesInject,\n): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/users`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject): string {\n let token = modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: UserListInput\n): Object {\n const { include, limit, page, filter } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n if (filter) {\n params.filter = filter;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersListResponse {\n return usersResponse;\n}\n"],"file":"get_users.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/users/get_users.js"],"names":["getOperation","operationConstants","PNGetUsersOperation","validateParams","getURL","modules","config","subscribeKey","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","incomingParams","include","limit","page","filter","params","includes","totalCount","count","customFields","push","includesString","join","length","next","start","prev","end","handleResponse","usersResponse"],"mappings":";;;;;;;;;;;;;;;AAEA;;AAKA;;AAEO,SAASA,YAAT,GAAgC;AACrC,SAAOC,uBAAmBC,mBAA1B;AACD;;AAEM,SAASC,cAAT,GAA0B,CAEhC;;AAEM,SAASC,MAAT,CACLC,OADK,EAEG;AACR,MAAMC,MAAN,GAAiBD,OAAjB,CAAMC,MAAN;AACA,+BAAsBA,MAAM,CAACC,YAA7B;AACD;;AAEM,SAASC,iBAAT,OAAsD;AAAA,MAAzBF,MAAyB,QAAzBA,MAAyB;AAC3D,SAAOA,MAAM,CAACG,qBAAP,EAAP;AACD;;AAEM,SAASC,eAAT,GAA2B;AAChC,SAAO,IAAP;AACD;;AAEM,SAASC,aAAT,CACLN,OADK,EAELO,cAFK,EAGG;AACR,MAAQC,OAAR,GAAyCD,cAAzC,CAAQC,OAAR;AAAA,MAAiBC,KAAjB,GAAyCF,cAAzC,CAAiBE,KAAjB;AAAA,MAAwBC,IAAxB,GAAyCH,cAAzC,CAAwBG,IAAxB;AAAA,MAA8BC,MAA9B,GAAyCJ,cAAzC,CAA8BI,MAA9B;AACA,MAAMC,MAAM,GAAG,EAAf;;AAEA,MAAIH,KAAJ,EAAW;AACTG,IAAAA,MAAM,CAACH,KAAP,GAAeA,KAAf;AACD;;AAED,MAAID,OAAJ,EAAa;AACX,QAAIK,QAAQ,GAAG,EAAf;;AAEA,QAAIL,OAAO,CAACM,UAAZ,EAAwB;AACtBF,MAAAA,MAAM,CAACG,KAAP,GAAe,IAAf;AACD;;AAED,QAAIP,OAAO,CAACQ,YAAZ,EAA0B;AACxBH,MAAAA,QAAQ,CAACI,IAAT,CAAc,QAAd;AACD;;AAED,QAAIC,cAAc,GAAGL,QAAQ,CAACM,IAAT,CAAc,GAAd,CAArB;;AAEA,QAAID,cAAc,CAACE,MAAf,GAAwB,CAA5B,EAA+B;AAC7BR,MAAAA,MAAM,CAACJ,OAAP,GAAiBU,cAAjB;AACD;AACF;;AAED,MAAIR,IAAJ,EAAU;AACR,QAAIA,IAAI,CAACW,IAAT,EAAe;AACbT,MAAAA,MAAM,CAACU,KAAP,GAAeZ,IAAI,CAACW,IAApB;AACD;;AACD,QAAIX,IAAI,CAACa,IAAT,EAAe;AACbX,MAAAA,MAAM,CAACY,GAAP,GAAad,IAAI,CAACa,IAAlB;AACD;AACF;;AAED,MAAIZ,MAAJ,EAAY;AACVC,IAAAA,MAAM,CAACD,MAAP,GAAgBA,MAAhB;AACD;;AAED,SAAOC,MAAP;AACD;;AAEM,SAASa,cAAT,CACLzB,OADK,EAEL0B,aAFK,EAGc;AACnB,SAAOA,aAAP;AACD","sourcesContent":["/* @flow */\n\nimport {\n UserListInput,\n UsersListResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\n\nexport function getOperation(): string {\n return operationConstants.PNGetUsersOperation;\n}\n\nexport function validateParams() {\n // no required parameters\n}\n\nexport function getURL(\n modules: ModulesInject,\n): string {\n let { config } = modules;\n return `/v1/objects/${config.subscribeKey}/users`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: UserListInput\n): Object {\n const { include, limit, page, filter } = incomingParams;\n const params = {};\n\n if (limit) {\n params.limit = limit;\n }\n\n if (include) {\n let includes = [];\n\n if (include.totalCount) {\n params.count = true;\n }\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n if (page) {\n if (page.next) {\n params.start = page.next;\n }\n if (page.prev) {\n params.end = page.prev;\n }\n }\n\n if (filter) {\n params.filter = filter;\n }\n\n return params;\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersListResponse {\n return usersResponse;\n}\n"],"file":"get_users.js"} \ No newline at end of file diff --git a/lib/core/endpoints/users/update_user.js b/lib/core/endpoints/users/update_user.js index 2b6e3de0d..6bb1dd957 100644 --- a/lib/core/endpoints/users/update_user.js +++ b/lib/core/endpoints/users/update_user.js @@ -6,16 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperation = getOperation; -exports.validateParams = validateParams; -exports.usePatch = usePatch; -exports.getURL = getURL; -exports.patchURL = patchURL; exports.getRequestTimeout = getRequestTimeout; +exports.getURL = getURL; +exports.handleResponse = handleResponse; exports.isAuthSupported = isAuthSupported; -exports.getAuthToken = getAuthToken; -exports.prepareParams = prepareParams; exports.patchPayload = patchPayload; -exports.handleResponse = handleResponse; +exports.patchURL = patchURL; +exports.prepareParams = prepareParams; +exports.usePatch = usePatch; +exports.validateParams = validateParams; var _flow_interfaces = require("../../flow_interfaces"); @@ -74,11 +73,6 @@ function isAuthSupported() { return true; } -function getAuthToken(modules, incomingParams) { - var token = modules.tokenManager.getToken('user', incomingParams.id) || modules.tokenManager.getToken('user'); - return token; -} - function prepareParams(modules, incomingParams) { var include = incomingParams.include; var params = {}; diff --git a/lib/core/endpoints/users/update_user.js.map b/lib/core/endpoints/users/update_user.js.map index ef316b9b3..00ed36b1b 100644 --- a/lib/core/endpoints/users/update_user.js.map +++ b/lib/core/endpoints/users/update_user.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/endpoints/users/update_user.js"],"names":["prepareMessagePayload","modules","incomingParams","getOperation","operationConstants","PNUpdateUserOperation","validateParams","config","id","name","custom","subscribeKey","Object","values","every","value","usePatch","getURL","utils","encodeString","patchURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","getAuthToken","token","tokenManager","getToken","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","patchPayload","handleResponse","usersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n UsersObjectInput,\n UsersResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n return incomingParams;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateUserOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: UsersObjectInput\n) {\n let { id, name, custom } = incomingParams;\n\n if (!id) return 'Missing User.id';\n if (!name) return 'Missing User.name';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (custom) {\n if (\n !Object.values(custom).every(\n (value) => typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n ) {\n return 'Invalid custom type, only string, number and boolean values are allowed.';\n }\n }\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: UsersObjectInput): string {\n let { config } = modules;\n const { id } = incomingParams;\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(id)}`;\n}\n\nexport function patchURL(modules: ModulesInject, incomingParams: UsersObjectInput): string {\n const { config } = modules;\n const { id } = incomingParams;\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(id)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function getAuthToken(modules: ModulesInject, incomingParams: UsersObjectInput): string {\n let token =\n modules.tokenManager.getToken('user', incomingParams.id) ||\n modules.tokenManager.getToken('user');\n\n return token;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: UsersObjectInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: UsersObjectInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersResponse {\n return usersResponse;\n}\n"],"file":"update_user.js"} \ No newline at end of file +{"version":3,"sources":["core/endpoints/users/update_user.js"],"names":["prepareMessagePayload","modules","incomingParams","getOperation","operationConstants","PNUpdateUserOperation","validateParams","config","id","name","custom","subscribeKey","Object","values","every","value","usePatch","getURL","utils","encodeString","patchURL","getRequestTimeout","getTransactionTimeout","isAuthSupported","prepareParams","include","params","customFields","undefined","includes","push","includesString","join","length","patchPayload","handleResponse","usersResponse"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport {\n UsersObjectInput,\n UsersResponse,\n ModulesInject,\n} from '../../flow_interfaces';\nimport operationConstants from '../../constants/operations';\nimport utils from '../../utils';\n\nfunction prepareMessagePayload(modules, incomingParams) {\n return incomingParams;\n}\n\nexport function getOperation(): string {\n return operationConstants.PNUpdateUserOperation;\n}\n\nexport function validateParams(\n { config }: ModulesInject,\n incomingParams: UsersObjectInput\n) {\n let { id, name, custom } = incomingParams;\n\n if (!id) return 'Missing User.id';\n if (!name) return 'Missing User.name';\n if (!config.subscribeKey) return 'Missing Subscribe Key';\n\n if (custom) {\n if (\n !Object.values(custom).every(\n (value) => typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n )\n ) {\n return 'Invalid custom type, only string, number and boolean values are allowed.';\n }\n }\n}\n\nexport function usePatch() {\n return true;\n}\n\nexport function getURL(modules: ModulesInject, incomingParams: UsersObjectInput): string {\n let { config } = modules;\n const { id } = incomingParams;\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(id)}`;\n}\n\nexport function patchURL(modules: ModulesInject, incomingParams: UsersObjectInput): string {\n const { config } = modules;\n const { id } = incomingParams;\n return `/v1/objects/${config.subscribeKey}/users/${utils.encodeString(id)}`;\n}\n\nexport function getRequestTimeout({ config }: ModulesInject) {\n return config.getTransactionTimeout();\n}\n\nexport function isAuthSupported() {\n return true;\n}\n\nexport function prepareParams(\n modules: ModulesInject,\n incomingParams: UsersObjectInput\n): Object {\n let { include } = incomingParams;\n const params = {};\n\n // default to include custom fields in response\n if (!include) {\n include = {\n customFields: true\n };\n } else if (include.customFields === undefined) {\n include.customFields = true;\n }\n\n if (include) {\n let includes = [];\n\n if (include.customFields) {\n includes.push('custom');\n }\n\n let includesString = includes.join(',');\n\n if (includesString.length > 0) {\n params.include = includesString;\n }\n }\n\n return params;\n}\n\nexport function patchPayload(\n modules: ModulesInject,\n incomingParams: UsersObjectInput\n): Object {\n return prepareMessagePayload(modules, incomingParams);\n}\n\nexport function handleResponse(\n modules: ModulesInject,\n usersResponse: Object\n): UsersResponse {\n return usersResponse;\n}\n"],"file":"update_user.js"} \ No newline at end of file diff --git a/lib/core/flow_interfaces.js.map b/lib/core/flow_interfaces.js.map index 67599ded0..f8b754149 100644 --- a/lib/core/flow_interfaces.js.map +++ b/lib/core/flow_interfaces.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/flow_interfaces.js"],"names":["module","exports"],"mappings":";;AAizBAA,MAAM,CAACC,OAAP,GAAiB,EAAjB","sourcesContent":["/* eslint no-unused-vars: 0 */\ndeclare module 'uuid' {\n declare function v4(): string;\n}\n\ndeclare module 'superagent' {\n declare function type(): superagent;\n}\n\nexport type CallbackStruct = {\n status: Function,\n presence: Function,\n message: Function,\n signal: Function,\n messageAction: Function,\n user: Function,\n space: Function,\n membership: Function\n}\n\nexport type ProxyStruct = {\n port: number,\n hostname: string,\n headers: Object\n}\n\nexport type KeepAliveStruct = {\n keepAlive: number,\n keepAliveMsecs: number,\n freeSocketKeepAliveTimeout: number,\n timeout: number,\n maxSockets: number,\n maxFreeSockets: number\n}\n\nexport type NetworkingModules = {\n keepAlive: ?Function,\n sendBeacon: ?Function,\n get: Function,\n post: Function,\n patch: Function\n}\n\nexport type InternalSetupStruct = {\n useSendBeacon: ?boolean, // configuration on beacon usage\n publishKey: ?string, // API key required for publishing\n subscribeKey: string, // API key required to subscribe\n cipherKey: string, // decryption keys\n origin: ?string, // an optional FQDN which will recieve calls from the SDK.\n ssl: boolean, // is SSL enabled?\n shutdown: Function, // function to call when pubnub is shutting down.\n\n sendBeacon: ?Function, // executes a call against the Beacon API\n useSendBeacon: ?boolean, // enable, disable usage of send beacons\n\n subscribeRequestTimeout: ?number, // how long to wait for subscribe requst\n transactionalRequestTimeout: ?number, // how long to wait for transactional requests\n\n proxy: ?ProxyStruct, // configuration to support proxy settings.\n\n keepAlive: ?boolean, // is keep-alive enabled?\n\n keepAliveSettings: ?KeepAliveStruct, // configuration on keep-alive usage\n\n suppressLev: ?boolean,\n\n db: Function, // get / set implementation to store data\n networking: Function // component of networking to use\n}\n\ntype DatabaseInterface = {\n get: Function,\n set: Function\n}\n\ntype EndpointKeyDefinition = {\n required: boolean\n}\n\ntype SupportedParams = {\n subscribeKey: EndpointKeyDefinition,\n uuid: EndpointKeyDefinition,\n}\n\nexport type EndpointDefinition = {\n params: SupportedParams,\n headers?: Object,\n timeout: number,\n url: string\n}\n\nexport type StateChangeAnnouncement = {\n state: Object,\n channels: Array,\n channelGroups: Array\n}\n\n// ****************** SUBSCRIPTIONS ********************************************\n\ntype SubscribeMetadata = {\n timetoken: number,\n region: number\n}\n\ntype PublishMetaData = {\n publishTimetoken: number,\n region: number\n}\n\ntype SubscribeMessage = {\n shard: string,\n subscriptionMatch: string,\n channel: string,\n messageType: number,\n payload: Object,\n flags: string,\n issuingClientId: string,\n subscribeKey: string,\n originationTimetoken: string,\n publishMetaData: PublishMetaData\n\n}\n\n// subscribe responses\ntype SubscribeEnvelope = {\n messages: Array,\n metadata: SubscribeMetadata;\n}\n\n// *****************************************************************************\n\n\n// ****************** Announcements ********************************************\n\ntype PresenceAnnouncement = {\n event: string,\n\n uuid: string,\n timestamp: number,\n occupancy: number,\n state: Object,\n\n subscribedChannel: string, // deprecated\n actualChannel: string, // deprecated\n\n channel: string,\n subscription: string,\n\n timetoken: number,\n userMetadata: Object\n}\n\ntype MessageAnnouncement = {\n\n message: Object,\n\n subscribedChannel: string, // deprecated\n actualChannel: string, // deprecated\n\n channel: string,\n subscription: string,\n\n timetoken: number | string,\n userMetadata: Object,\n publisher: string\n}\n\ntype SignalAnnouncement = {\n\n message: Object,\n\n channel: string,\n subscription: string,\n\n timetoken: number | string,\n userMetadata: Object,\n publisher: string\n}\n\ntype ObjectMessage = {\n event: string,\n type: string,\n data: Object\n}\n\ntype ObjectAnnouncement = {\n\n message: ObjectMessage,\n\n channel: string,\n subscription: string,\n\n timetoken: number | string,\n userMetadata: Object,\n publisher: string\n}\n\nexport type StatusAnnouncement = {\n error: boolean,\n statusCode: number,\n category: string,\n errorData: Object,\n lastTimetoken: number,\n currentTimetoken: number,\n\n // send back channel, channel groups that were affected by this operation\n affectedChannels: Array,\n affectedChannelGroups: Array,\n}\n\n// *****************************************************************************\n\n// Time endpoints\n\ntype TimeResponse = {\n timetoken: number\n};\n\n// history\ntype FetchHistoryArguments = {\n channel: string, // fetch history from a channel\n start: number | string, // start timetoken for history fetching\n end: number | string, // end timetoken for history fetching\n includeTimetoken: boolean, // include time token for each history call\n includeMeta: boolean, // include message meta for each history entry\n reverse: boolean,\n count: number\n}\n\n// history\nexport type MessageCounterArguments = {\n channels: Array, // fetch history from a channel\n timetoken: number | null,\n channelTimetokens: Array | null\n}\n\ntype FetchMessagesArguments = {\n channels: string, // fetch history from a channel\n start: number | string, // start timetoken for history fetching\n end: number | string, // end timetoken for history fetching\n includeMeta: boolean, // include message meta for each history entry\n includeMessageActions: boolean, // include message actions for each history entry\n count: number\n}\n\ntype HistoryItem = {\n timetoken: number | string | null,\n meta: Object | null,\n entry: any,\n}\n\ntype HistoryResponse = {\n messages: Array,\n startTimeToken: number | string,\n endTimeToken: number | string,\n}\n\n\nexport type MessageCountersResponse = {\n channels: Object\n}\n\ntype HistoryV3Response = {\n channels: Object\n}\n\n// CG endpoints\n\ntype AddChannelParams = {\n channels: Array,\n channelGroup: string,\n}\n\ntype RemoveChannelParams = {\n channels: Array,\n channelGroup: string,\n}\n\ntype DeleteGroupParams = {\n channelGroup: string,\n}\n\ntype ListAllGroupsResponse = {\n groups: Array\n}\n\ntype ListChannelsParams = {\n channelGroup: string,\n}\n\ntype ListChannelsResponse = {\n channels: Array\n}\n\n//\n\n// push\n\nexport type APNS2Target = {\n topic: string,\n environment?: 'development' | 'production',\n excludedDevices?: Array\n}\n\nexport type APNS2Configuration = {\n collapseId?: string,\n expirationDate?: Date,\n targets: Array\n}\n\ntype ProvisionDeviceArgs = {\n operation: 'add' | 'remove',\n pushGateway: 'gcm' | 'apns' | 'apns2' | 'mpns',\n environment?: 'development' | 'production',\n topic?: string,\n device: string,\n channels: Array\n};\n\ntype ModifyDeviceArgs = {\n pushGateway: 'gcm' | 'apns' | 'apns2' | 'mpns',\n environment?: 'development' | 'production',\n topic?: string,\n device: string,\n channels: Array\n};\n\ntype ListChannelsArgs = {\n pushGateway: 'gcm' | 'apns' | 'apns2' | 'mpns',\n environment?: 'development' | 'production',\n topic?: string,\n device: string,\n};\n\ntype RemoveDeviceArgs = {\n pushGateway: 'gcm' | 'apns' | 'apns2' | 'mpns',\n environment?: 'development' | 'production',\n topic?: string,\n device: string,\n};\n\ntype ListPushChannelsResponse = {\n channels: Array\n}\n\n//\n\n// presence\n\ntype LeaveArguments = {\n channels: Array,\n channelGroups: Array,\n}\n\ntype HereNowArguments = {\n channels: Array,\n channelGroups: Array,\n includeUUIDs: boolean,\n includeState: boolean,\n queryParameters?: Object\n}\n\ntype WhereNowArguments = {\n uuid: string,\n}\n\ntype WhereNowResponse = {\n channels: Array,\n}\n\n//\n\ntype GetStateArguments = {\n uuid: string,\n channels: Array,\n channelGroups: Array\n}\n\ntype GetStateResponse = {\n channels: Object\n}\n\n//\n\ntype SetStateArguments = {\n channels: Array,\n channelGroups: Array,\n state: Object\n}\n\ntype SetStateResponse = {\n state: Object\n}\n\n\ntype HeartbeatArguments = {\n channels: Array,\n channelGroups: Array,\n state: Object\n}\n\n//\n\n// subscribe\n\ntype SubscribeArguments = {\n channels: Array,\n channelGroups: Array,\n timetoken: number,\n filterExpression: ?string,\n region: ?string,\n state: Object\n}\n\n//\n\n// access manager\n\ntype AuditArguments = {\n channel: string,\n channelGroup: string,\n authKeys: Array,\n}\n\ntype GrantArguments = {\n channels: Array,\n channelGroups: Array,\n uuids: Array,\n ttl: number,\n read: boolean,\n write: boolean,\n manage: boolean,\n get: boolean,\n join: boolean,\n update: boolean,\n delete: Boolean,\n authKeys: Array\n}\n\n// Base permissions object\ninterface GrantTokenObject {\n create: boolean,\n read: boolean,\n write: boolean,\n manage: boolean,\n delete: boolean,\n}\n\ninterface GrantTokenInput {\n ttl: number,\n resources?: {\n channels?: {\n [key: String]: GrantTokenObject,\n },\n groups?: {\n [key: String]: GrantTokenObject,\n },\n users?: {\n [key: String]: GrantTokenObject,\n },\n spaces?: {\n [key: String]: GrantTokenObject,\n },\n },\n patterns?: {\n channels?: {\n [key: String]: GrantTokenObject,\n },\n groups?: {\n [key: String]: GrantTokenObject,\n },\n users?: {\n [key: String]: GrantTokenObject,\n },\n spaces?: {\n [key: String]: GrantTokenObject,\n },\n },\n meta?: Object\n}\n\ninterface GrantTokenOutput extends GrantTokenInput {\n version: number,\n timestamp: number,\n signature: Buffer\n}\n\n// token manager\n\ntype TokensDefinition = {\n user?: string,\n space?: string,\n users?: {\n [key: String]: String\n },\n spaces?: {\n [key: String]: String\n }\n};\n\ntype GetTokensInput= {\n user?: boolean,\n space?: boolean,\n users?: Array,\n spaces?: Array\n};\n\n// publish\n\ntype PublishResponse = {\n timetoken: number\n};\n\ntype PublishArguments = {\n message: Object | string | number | boolean, // the contents of the dispatch\n channel: string, // the destination of our dispatch\n sendByPost: boolean | null, // use POST when dispatching the message\n storeInHistory: boolean | null, // store the published message in remote history\n meta: Object, // psv2 supports filtering by metadata\n replicate: boolean | null // indicates to server on replication status to other data centers.\n}\n\n// signal\ntype SignalResponse = {\n timetoken: number\n};\n\ntype SignalArguments = {\n message: Object | string | number | boolean,\n channel: string\n}\n\n// Actions\n\ninterface MessageAction {\n type: string,\n value: string,\n}\n\ninterface PublishedMessageAction extends MessageAction {\n messageTimetoken: string,\n actionTimetoken: string,\n uuid: string,\n}\n\ntype MessageActionAnnouncement = {\n data: PublishedMessageAction,\n event: string,\n\n channel: string,\n subscription: string,\n\n timetoken: number | string,\n userMetadata: Object,\n publisher: string\n}\n\ninterface AddMessageActionInput {\n messageTimetoken: string,\n channel: string,\n action: MessageAction,\n}\n\ninterface AddMessageActionResponse {\n data: PublishedMessageAction,\n}\n\ninterface RemoveMessageActionInput {\n messageTimetoken: string,\n actionTimetoken: string,\n channel: string,\n}\n\ninterface RemoveMessageActionResponse {\n data: {},\n}\n\ninterface GetMessageActionsInput {\n channel: string,\n start?: number | string,\n end?: number | string,\n limit?: number,\n}\n\ninterface GetMessageActionsResponse {\n data: Array,\n start?: string,\n end?: string,\n}\n\n// Users Object\n\ntype UserListInput = {\n limit?: number,\n page?: {\n next?: string,\n prev?: string,\n },\n include?: {\n totalCount?: boolean,\n customFields?: boolean,\n },\n filter?: string,\n}\n\ntype SingleUserInput = {\n userId: string,\n include?: {\n customFields?: boolean,\n }\n}\n\ntype UsersObjectInput = {\n id: string,\n name: string,\n externalId?: string,\n profileUrl?: string,\n email?: string,\n custom?: Object,\n};\n\ntype UserResponse = {\n status: number,\n data: {\n ...UsersObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype UsersListResponse = {\n status: number,\n totalCount: number,\n next: String,\n prev: String,\n data: Array,\n};\n\n// Spaces Object\n\ntype SpaceListInput = {\n limit?: number,\n page?: {\n next?: string,\n prev?: string,\n },\n include?: {\n totalCount?: boolean,\n customFields?: boolean,\n },\n filter?: string,\n}\n\ntype SingleSpaceInput = {\n spaceId: string,\n include?: {\n customFields?: boolean,\n }\n}\n\ntype SpacesObjectInput = {\n id: string,\n name: string,\n description?: String,\n custom?: Object,\n include?: {\n customFields?: boolean,\n }\n};\n\ntype SpacesResponse = {\n status: number,\n data: {\n ...SpacesObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype SpaceResponse = {\n status: number,\n data: {\n ...SpacesObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype SpacesListResponse = {\n status: number,\n totalCount: number,\n next: String,\n prev: String,\n data: Array,\n};\n\n// Memberships Object\n\ntype MembershipsInput = {\n userId: string,\n limit?: number,\n page?: {\n next?: string,\n prev?: string,\n },\n include?: {\n totalCount?: boolean,\n customFields?: boolean,\n spaceFields?: boolean,\n customSpaceFields?: boolean,\n },\n filter?: string,\n}\n\ntype MembershipsObjectInput = {\n id: string,\n custom?: Object,\n space?: SpacesResponse,\n};\n\ntype MembershipsResponse = {\n status: number,\n data: {\n ...MembershipsObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype MembershipsListResponse = {\n status: number,\n totalCount: number,\n next: String,\n prev: String,\n data: Array,\n};\n\ninterface AddMemberships extends MembershipsInput {\n addMemberships: Array,\n}\n\ninterface UpdateMemberships extends MembershipsInput {\n updateMemberships: Array,\n}\n\ninterface RemoveMemberships extends MembershipsInput {\n removeMemberships: Array,\n}\n\ninterface AddUpdateRemoveMemberships extends AddMemberships, UpdateMemberships, RemoveMemberships {}\n\n// Members Object\n\ntype MembersInput = {\n spaceId: string,\n limit?: number,\n page?: {\n next?: string,\n prev?: string,\n },\n include?: {\n totalCount?: boolean,\n customFields?: boolean,\n userFields?: boolean,\n customUserFields?: boolean,\n },\n filter?: string,\n}\n\ntype MembersObjectInput = {\n id: string,\n custom?: Object,\n user?: UserResponse,\n};\n\ntype MembersResponse = {\n status: number,\n data: {\n ...MembersObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype MembersListResponse = {\n status: number,\n totalCount: number,\n next: String,\n prev: String,\n data: Array,\n};\n\ninterface AddMembers extends MembersInput {\n addMembers: Array,\n}\n\ninterface UpdateMembers extends MembersInput {\n updateMembers: Array,\n}\n\ninterface RemoveMembers extends MembersInput {\n removeMembers: Array,\n}\n\ninterface AddUpdateRemoveMembers extends AddMembers, UpdateMembers, RemoveMembers {}\n\n//\n\ntype ModulesInject = {\n config: Object;\n}\n\nmodule.exports = {};\n"],"file":"flow_interfaces.js"} \ No newline at end of file +{"version":3,"sources":["core/flow_interfaces.js"],"names":["module","exports"],"mappings":";;AAoxBAA,MAAM,CAACC,OAAP,GAAiB,EAAjB","sourcesContent":["/* eslint no-unused-vars: 0 */\ndeclare module 'uuid' {\n declare function v4(): string;\n}\n\ndeclare module 'superagent' {\n declare function type(): superagent;\n}\n\nexport type CallbackStruct = {\n status: Function,\n presence: Function,\n message: Function,\n signal: Function,\n messageAction: Function,\n user: Function,\n space: Function,\n membership: Function\n}\n\nexport type ProxyStruct = {\n port: number,\n hostname: string,\n headers: Object\n}\n\nexport type KeepAliveStruct = {\n keepAlive: number,\n keepAliveMsecs: number,\n freeSocketKeepAliveTimeout: number,\n timeout: number,\n maxSockets: number,\n maxFreeSockets: number\n}\n\nexport type NetworkingModules = {\n keepAlive: ?Function,\n sendBeacon: ?Function,\n get: Function,\n post: Function,\n patch: Function\n}\n\nexport type InternalSetupStruct = {\n useSendBeacon: ?boolean, // configuration on beacon usage\n publishKey: ?string, // API key required for publishing\n subscribeKey: string, // API key required to subscribe\n cipherKey: string, // decryption keys\n origin: ?string, // an optional FQDN which will recieve calls from the SDK.\n ssl: boolean, // is SSL enabled?\n shutdown: Function, // function to call when pubnub is shutting down.\n\n sendBeacon: ?Function, // executes a call against the Beacon API\n useSendBeacon: ?boolean, // enable, disable usage of send beacons\n\n subscribeRequestTimeout: ?number, // how long to wait for subscribe requst\n transactionalRequestTimeout: ?number, // how long to wait for transactional requests\n\n proxy: ?ProxyStruct, // configuration to support proxy settings.\n\n keepAlive: ?boolean, // is keep-alive enabled?\n\n keepAliveSettings: ?KeepAliveStruct, // configuration on keep-alive usage\n\n suppressLev: ?boolean,\n\n networking: Function // component of networking to use\n}\n\ntype EndpointKeyDefinition = {\n required: boolean\n}\n\ntype SupportedParams = {\n subscribeKey: EndpointKeyDefinition,\n uuid: EndpointKeyDefinition,\n}\n\nexport type EndpointDefinition = {\n params: SupportedParams,\n headers?: Object,\n timeout: number,\n url: string\n}\n\nexport type StateChangeAnnouncement = {\n state: Object,\n channels: Array,\n channelGroups: Array\n}\n\n// ****************** SUBSCRIPTIONS ********************************************\n\ntype SubscribeMetadata = {\n timetoken: number,\n region: number\n}\n\ntype PublishMetaData = {\n publishTimetoken: number,\n region: number\n}\n\ntype SubscribeMessage = {\n shard: string,\n subscriptionMatch: string,\n channel: string,\n messageType: number,\n payload: Object,\n flags: string,\n issuingClientId: string,\n subscribeKey: string,\n originationTimetoken: string,\n publishMetaData: PublishMetaData\n\n}\n\n// subscribe responses\ntype SubscribeEnvelope = {\n messages: Array,\n metadata: SubscribeMetadata;\n}\n\n// *****************************************************************************\n\n\n// ****************** Announcements ********************************************\n\ntype PresenceAnnouncement = {\n event: string,\n\n uuid: string,\n timestamp: number,\n occupancy: number,\n state: Object,\n\n subscribedChannel: string, // deprecated\n actualChannel: string, // deprecated\n\n channel: string,\n subscription: string,\n\n timetoken: number,\n userMetadata: Object\n}\n\ntype MessageAnnouncement = {\n\n message: Object,\n\n subscribedChannel: string, // deprecated\n actualChannel: string, // deprecated\n\n channel: string,\n subscription: string,\n\n timetoken: number | string,\n userMetadata: Object,\n publisher: string\n}\n\ntype SignalAnnouncement = {\n\n message: Object,\n\n channel: string,\n subscription: string,\n\n timetoken: number | string,\n userMetadata: Object,\n publisher: string\n}\n\ntype ObjectMessage = {\n event: string,\n type: string,\n data: Object\n}\n\ntype ObjectAnnouncement = {\n\n message: ObjectMessage,\n\n channel: string,\n subscription: string,\n\n timetoken: number | string,\n userMetadata: Object,\n publisher: string\n}\n\nexport type StatusAnnouncement = {\n error: boolean,\n statusCode: number,\n category: string,\n errorData: Object,\n lastTimetoken: number,\n currentTimetoken: number,\n\n // send back channel, channel groups that were affected by this operation\n affectedChannels: Array,\n affectedChannelGroups: Array,\n}\n\n// *****************************************************************************\n\n// Time endpoints\n\ntype TimeResponse = {\n timetoken: number\n};\n\n// history\ntype FetchHistoryArguments = {\n channel: string, // fetch history from a channel\n start: number | string, // start timetoken for history fetching\n end: number | string, // end timetoken for history fetching\n includeTimetoken: boolean, // include time token for each history call\n includeMeta: boolean, // include message meta for each history entry\n reverse: boolean,\n count: number\n}\n\n// history\nexport type MessageCounterArguments = {\n channels: Array, // fetch history from a channel\n timetoken: number | null,\n channelTimetokens: Array | null\n}\n\ntype FetchMessagesArguments = {\n channels: string, // fetch history from a channel\n start: number | string, // start timetoken for history fetching\n end: number | string, // end timetoken for history fetching\n includeMeta: boolean, // include message meta for each history entry\n includeMessageActions: boolean, // include message actions for each history entry\n count: number\n}\n\ntype HistoryItem = {\n timetoken: number | string | null,\n meta: Object | null,\n entry: any,\n}\n\ntype HistoryResponse = {\n messages: Array,\n startTimeToken: number | string,\n endTimeToken: number | string,\n}\n\n\nexport type MessageCountersResponse = {\n channels: Object\n}\n\ntype HistoryV3Response = {\n channels: Object\n}\n\n// CG endpoints\n\ntype AddChannelParams = {\n channels: Array,\n channelGroup: string,\n}\n\ntype RemoveChannelParams = {\n channels: Array,\n channelGroup: string,\n}\n\ntype DeleteGroupParams = {\n channelGroup: string,\n}\n\ntype ListAllGroupsResponse = {\n groups: Array\n}\n\ntype ListChannelsParams = {\n channelGroup: string,\n}\n\ntype ListChannelsResponse = {\n channels: Array\n}\n\n//\n\n// push\n\nexport type APNS2Target = {\n topic: string,\n environment?: 'development' | 'production',\n excludedDevices?: Array\n}\n\nexport type APNS2Configuration = {\n collapseId?: string,\n expirationDate?: Date,\n targets: Array\n}\n\ntype ProvisionDeviceArgs = {\n operation: 'add' | 'remove',\n pushGateway: 'gcm' | 'apns' | 'apns2' | 'mpns',\n environment?: 'development' | 'production',\n topic?: string,\n device: string,\n channels: Array\n};\n\ntype ModifyDeviceArgs = {\n pushGateway: 'gcm' | 'apns' | 'apns2' | 'mpns',\n environment?: 'development' | 'production',\n topic?: string,\n device: string,\n channels: Array\n};\n\ntype ListChannelsArgs = {\n pushGateway: 'gcm' | 'apns' | 'apns2' | 'mpns',\n environment?: 'development' | 'production',\n topic?: string,\n device: string,\n};\n\ntype RemoveDeviceArgs = {\n pushGateway: 'gcm' | 'apns' | 'apns2' | 'mpns',\n environment?: 'development' | 'production',\n topic?: string,\n device: string,\n};\n\ntype ListPushChannelsResponse = {\n channels: Array\n}\n\n//\n\n// presence\n\ntype LeaveArguments = {\n channels: Array,\n channelGroups: Array,\n}\n\ntype HereNowArguments = {\n channels: Array,\n channelGroups: Array,\n includeUUIDs: boolean,\n includeState: boolean,\n queryParameters?: Object\n}\n\ntype WhereNowArguments = {\n uuid: string,\n}\n\ntype WhereNowResponse = {\n channels: Array,\n}\n\n//\n\ntype GetStateArguments = {\n uuid: string,\n channels: Array,\n channelGroups: Array\n}\n\ntype GetStateResponse = {\n channels: Object\n}\n\n//\n\ntype SetStateArguments = {\n channels: Array,\n channelGroups: Array,\n state: Object\n}\n\ntype SetStateResponse = {\n state: Object\n}\n\n\ntype HeartbeatArguments = {\n channels: Array,\n channelGroups: Array,\n state: Object\n}\n\n//\n\n// subscribe\n\ntype SubscribeArguments = {\n channels: Array,\n channelGroups: Array,\n timetoken: number,\n filterExpression: ?string,\n region: ?string,\n state: Object\n}\n\n//\n\n// access manager\n\ntype AuditArguments = {\n channel: string,\n channelGroup: string,\n authKeys: Array,\n}\n\ntype GrantArguments = {\n channels: Array,\n channelGroups: Array,\n uuids: Array,\n ttl: number,\n read: boolean,\n write: boolean,\n manage: boolean,\n get: boolean,\n join: boolean,\n update: boolean,\n delete: Boolean,\n authKeys: Array\n}\n\n// Base permissions object\ninterface GrantTokenObject {\n read: boolean,\n write: boolean,\n manage: boolean,\n delete: boolean,\n get: boolean,\n update: boolean,\n join: boolean\n}\n\ninterface GrantTokenInput {\n ttl: number,\n authorizedUuid: String,\n resources?: {\n channels?: {\n [key: String]: GrantTokenObject,\n },\n groups?: {\n [key: String]: GrantTokenObject,\n },\n uuids?: {\n [key: String]: GrantTokenObject,\n }\n },\n patterns?: {\n channels?: {\n [key: String]: GrantTokenObject,\n },\n groups?: {\n [key: String]: GrantTokenObject,\n },\n uuids?: {\n [key: String]: GrantTokenObject,\n }\n },\n meta?: Object\n}\n\ninterface GrantTokenOutput extends GrantTokenInput {\n version: number,\n timestamp: number,\n signature: Buffer\n}\n\n// publish\n\ntype PublishResponse = {\n timetoken: number\n};\n\ntype PublishArguments = {\n message: Object | string | number | boolean, // the contents of the dispatch\n channel: string, // the destination of our dispatch\n sendByPost: boolean | null, // use POST when dispatching the message\n storeInHistory: boolean | null, // store the published message in remote history\n meta: Object, // psv2 supports filtering by metadata\n replicate: boolean | null // indicates to server on replication status to other data centers.\n}\n\n// signal\ntype SignalResponse = {\n timetoken: number\n};\n\ntype SignalArguments = {\n message: Object | string | number | boolean,\n channel: string\n}\n\n// Actions\n\ninterface MessageAction {\n type: string,\n value: string,\n}\n\ninterface PublishedMessageAction extends MessageAction {\n messageTimetoken: string,\n actionTimetoken: string,\n uuid: string,\n}\n\ntype MessageActionAnnouncement = {\n data: PublishedMessageAction,\n event: string,\n\n channel: string,\n subscription: string,\n\n timetoken: number | string,\n userMetadata: Object,\n publisher: string\n}\n\ninterface AddMessageActionInput {\n messageTimetoken: string,\n channel: string,\n action: MessageAction,\n}\n\ninterface AddMessageActionResponse {\n data: PublishedMessageAction,\n}\n\ninterface RemoveMessageActionInput {\n messageTimetoken: string,\n actionTimetoken: string,\n channel: string,\n}\n\ninterface RemoveMessageActionResponse {\n data: {},\n}\n\ninterface GetMessageActionsInput {\n channel: string,\n start?: number | string,\n end?: number | string,\n limit?: number,\n}\n\ninterface GetMessageActionsResponse {\n data: Array,\n start?: string,\n end?: string,\n}\n\n// Users Object\n\ntype UserListInput = {\n limit?: number,\n page?: {\n next?: string,\n prev?: string,\n },\n include?: {\n totalCount?: boolean,\n customFields?: boolean,\n },\n filter?: string,\n}\n\ntype SingleUserInput = {\n userId: string,\n include?: {\n customFields?: boolean,\n }\n}\n\ntype UsersObjectInput = {\n id: string,\n name: string,\n externalId?: string,\n profileUrl?: string,\n email?: string,\n custom?: Object,\n};\n\ntype UserResponse = {\n status: number,\n data: {\n ...UsersObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype UsersListResponse = {\n status: number,\n totalCount: number,\n next: String,\n prev: String,\n data: Array,\n};\n\n// Spaces Object\n\ntype SpaceListInput = {\n limit?: number,\n page?: {\n next?: string,\n prev?: string,\n },\n include?: {\n totalCount?: boolean,\n customFields?: boolean,\n },\n filter?: string,\n}\n\ntype SingleSpaceInput = {\n spaceId: string,\n include?: {\n customFields?: boolean,\n }\n}\n\ntype SpacesObjectInput = {\n id: string,\n name: string,\n description?: String,\n custom?: Object,\n include?: {\n customFields?: boolean,\n }\n};\n\ntype SpacesResponse = {\n status: number,\n data: {\n ...SpacesObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype SpaceResponse = {\n status: number,\n data: {\n ...SpacesObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype SpacesListResponse = {\n status: number,\n totalCount: number,\n next: String,\n prev: String,\n data: Array,\n};\n\n// Memberships Object\n\ntype MembershipsInput = {\n userId: string,\n limit?: number,\n page?: {\n next?: string,\n prev?: string,\n },\n include?: {\n totalCount?: boolean,\n customFields?: boolean,\n spaceFields?: boolean,\n customSpaceFields?: boolean,\n },\n filter?: string,\n}\n\ntype MembershipsObjectInput = {\n id: string,\n custom?: Object,\n space?: SpacesResponse,\n};\n\ntype MembershipsResponse = {\n status: number,\n data: {\n ...MembershipsObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype MembershipsListResponse = {\n status: number,\n totalCount: number,\n next: String,\n prev: String,\n data: Array,\n};\n\ninterface AddMemberships extends MembershipsInput {\n addMemberships: Array,\n}\n\ninterface UpdateMemberships extends MembershipsInput {\n updateMemberships: Array,\n}\n\ninterface RemoveMemberships extends MembershipsInput {\n removeMemberships: Array,\n}\n\ninterface AddUpdateRemoveMemberships extends AddMemberships, UpdateMemberships, RemoveMemberships {}\n\n// Members Object\n\ntype MembersInput = {\n spaceId: string,\n limit?: number,\n page?: {\n next?: string,\n prev?: string,\n },\n include?: {\n totalCount?: boolean,\n customFields?: boolean,\n userFields?: boolean,\n customUserFields?: boolean,\n },\n filter?: string,\n}\n\ntype MembersObjectInput = {\n id: string,\n custom?: Object,\n user?: UserResponse,\n};\n\ntype MembersResponse = {\n status: number,\n data: {\n ...MembersObjectInput,\n created: string,\n updated: string,\n eTag: string,\n },\n};\n\ntype MembersListResponse = {\n status: number,\n totalCount: number,\n next: String,\n prev: String,\n data: Array,\n};\n\ninterface AddMembers extends MembersInput {\n addMembers: Array,\n}\n\ninterface UpdateMembers extends MembersInput {\n updateMembers: Array,\n}\n\ninterface RemoveMembers extends MembersInput {\n removeMembers: Array,\n}\n\ninterface AddUpdateRemoveMembers extends AddMembers, UpdateMembers, RemoveMembers {}\n\n//\n\ntype ModulesInject = {\n config: Object;\n}\n\nmodule.exports = {};\n"],"file":"flow_interfaces.js"} \ No newline at end of file diff --git a/lib/core/pubnub-common.js b/lib/core/pubnub-common.js index 3d24f6320..4ca183989 100644 --- a/lib/core/pubnub-common.js +++ b/lib/core/pubnub-common.js @@ -1,9 +1,9 @@ "use strict"; -var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); - var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); +var _typeof = require("@babel/runtime/helpers/typeof"); + Object.defineProperty(exports, "__esModule", { value: true }); @@ -153,6 +153,8 @@ var grantEndpointConfig = _interopRequireWildcard(require("./endpoints/access_ma var grantTokenEndpointConfig = _interopRequireWildcard(require("./endpoints/access_manager/grant_token")); +var _revoke_token = _interopRequireDefault(require("./endpoints/access_manager/revoke_token")); + var publishEndpointConfig = _interopRequireWildcard(require("./endpoints/publish")); var signalEndpointConfig = _interopRequireWildcard(require("./endpoints/signal")); @@ -177,7 +179,11 @@ var _flow_interfaces = require("./flow_interfaces"); var _uuid = _interopRequireDefault(require("./components/uuid")); -function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } +function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } + +function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } + +function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } @@ -206,6 +212,7 @@ var _default = function () { (0, _defineProperty2["default"])(this, "grant", void 0); (0, _defineProperty2["default"])(this, "grantToken", void 0); (0, _defineProperty2["default"])(this, "audit", void 0); + (0, _defineProperty2["default"])(this, "revokeToken", void 0); (0, _defineProperty2["default"])(this, "subscribe", void 0); (0, _defineProperty2["default"])(this, "signal", void 0); (0, _defineProperty2["default"])(this, "presence", void 0); @@ -253,10 +260,7 @@ var _default = function () { (0, _defineProperty2["default"])(this, "removeAllListeners", void 0); (0, _defineProperty2["default"])(this, "parseToken", void 0); (0, _defineProperty2["default"])(this, "setToken", void 0); - (0, _defineProperty2["default"])(this, "setTokens", void 0); (0, _defineProperty2["default"])(this, "getToken", void 0); - (0, _defineProperty2["default"])(this, "getTokens", void 0); - (0, _defineProperty2["default"])(this, "clearTokens", void 0); (0, _defineProperty2["default"])(this, "getAuthKey", void 0); (0, _defineProperty2["default"])(this, "setAuthKey", void 0); (0, _defineProperty2["default"])(this, "setCipherKey", void 0); @@ -268,12 +272,10 @@ var _default = function () { (0, _defineProperty2["default"])(this, "setProxy", void 0); (0, _defineProperty2["default"])(this, "encrypt", void 0); (0, _defineProperty2["default"])(this, "decrypt", void 0); - var db = setup.db, - networking = setup.networking, + var networking = setup.networking, cbor = setup.cbor; var config = this._config = new _config["default"]({ - setup: setup, - db: db + setup: setup }); var crypto = new _index["default"]({ config: config @@ -332,10 +334,7 @@ var _default = function () { this.removeAllListeners = listenerManager.removeAllListeners.bind(listenerManager); this.parseToken = tokenManager.parseToken.bind(tokenManager); this.setToken = tokenManager.setToken.bind(tokenManager); - this.setTokens = tokenManager.setTokens.bind(tokenManager); this.getToken = tokenManager.getToken.bind(tokenManager); - this.getTokens = tokenManager.getTokens.bind(tokenManager); - this.clearTokens = tokenManager.clearTokens.bind(tokenManager); this.channelGroups = { listGroups: _endpoint["default"].bind(this, modules, listChannelGroupsConfig), listChannels: _endpoint["default"].bind(this, modules, listChannelsInChannelGroupConfig), @@ -356,6 +355,7 @@ var _default = function () { this.grant = _endpoint["default"].bind(this, modules, grantEndpointConfig); this.grantToken = _endpoint["default"].bind(this, modules, grantTokenEndpointConfig); this.audit = _endpoint["default"].bind(this, modules, auditEndpointConfig); + this.revokeToken = _endpoint["default"].bind(this, modules, _revoke_token["default"]); this.publish = _endpoint["default"].bind(this, modules, publishEndpointConfig); this.fire = function (args, callback) { diff --git a/lib/core/pubnub-common.js.map b/lib/core/pubnub-common.js.map index c3341de6d..b7824cf9a 100644 --- a/lib/core/pubnub-common.js.map +++ b/lib/core/pubnub-common.js.map @@ -1 +1 @@ -{"version":3,"sources":["core/pubnub-common.js"],"names":["setup","db","networking","cbor","config","_config","Config","crypto","Crypto","cryptography","init","tokenManager","_tokenManager","TokenManager","telemetryManager","_telemetryManager","TelemetryManager","maximumSamplesCount","modules","PubNubFile","File","encryptFile","key","file","decryptFile","timeEndpoint","endpointCreator","bind","timeEndpointConfig","leaveEndpoint","presenceLeaveEndpointConfig","heartbeatEndpoint","presenceHeartbeatEndpointConfig","setStateEndpoint","presenceSetStateConfig","subscribeEndpoint","subscribeEndpointConfig","listenerManager","_listenerManager","ListenerManager","subscriptionManager","SubscriptionManager","getFileUrl","params","addListener","removeListener","removeAllListeners","parseToken","setToken","setTokens","getToken","getTokens","clearTokens","channelGroups","listGroups","listChannelGroupsConfig","listChannels","listChannelsInChannelGroupConfig","addChannels","addChannelsChannelGroupConfig","removeChannels","removeChannelsChannelGroupConfig","deleteGroup","deleteChannelGroupConfig","push","addPushChannelsConfig","removePushChannelsConfig","deleteDevice","removeDevicePushConfig","listPushChannelsConfig","hereNow","presenceHereNowConfig","whereNow","presenceWhereNowEndpointConfig","getState","presenceGetStateConfig","setState","adaptStateChange","grant","grantEndpointConfig","grantToken","grantTokenEndpointConfig","audit","auditEndpointConfig","publish","publishEndpointConfig","fire","args","callback","replicate","storeInHistory","signal","signalEndpointConfig","history","historyEndpointConfig","deleteMessages","deleteMessagesEndpointConfig","messageCounts","messageCountsEndpointConfig","fetchMessages","fetchMessagesEndpointConfig","addMessageAction","addMessageActionEndpointConfig","removeMessageAction","removeMessageActionEndpointConfig","getMessageActions","getMessageActionEndpointConfig","listFiles","listFilesEndpointConfig","generateUploadUrl","generateUploadUrlEndpointConfig","publishFile","publishFileEndpointConfig","sendFile","downloadFile","downloadFileEndpointConfig","deleteFile","deleteFileEndpointConfig","objects","getAllUUIDMetadata","getAllUUIDMetadataEndpointConfig","getUUIDMetadata","getUUIDMetadataEndpointConfig","setUUIDMetadata","setUUIDMetadataEndpointConfig","removeUUIDMetadata","removeUUIDMetadataEndpointConfig","getAllChannelMetadata","getAllChannelMetadataEndpointConfig","getChannelMetadata","getChannelMetadataEndpointConfig","setChannelMetadata","setChannelMetadataEndpointConfig","removeChannelMetadata","removeChannelMetadataEndpointConfig","getChannelMembers","getMembersV2EndpointConfig","setChannelMembers","parameters","rest","call","setMembersV2EndpointConfig","type","removeChannelMembers","getMemberships","getMembershipsV2EndpointConfig","setMemberships","setMembershipsV2EndpointConfig","removeMemberships","createUser","createUserEndpointConfig","updateUser","updateUserEndpointConfig","deleteUser","deleteUserEndpointConfig","getUser","getUserEndpointConfig","getUsers","getUsersEndpointConfig","createSpace","createSpaceEndpointConfig","updateSpace","updateSpaceEndpointConfig","deleteSpace","deleteSpaceEndpointConfig","getSpaces","getSpacesEndpointConfig","getSpace","getSpaceEndpointConfig","addMembers","addMembersEndpointConfig","updateMembers","updateMembersEndpointConfig","removeMembers","removeMembersEndpointConfig","getMembers","getMembersEndpointConfig","getMembershipsEndpointConfig","joinSpaces","joinSpacesEndpointConfig","updateMemberships","updateMembershipsEndpointConfig","leaveSpaces","leaveSpacesEndpointConfig","time","subscribe","adaptSubscribeChange","presence","adaptPresenceChange","unsubscribe","adaptUnsubscribeChange","disconnect","reconnect","destroy","isOffline","unsubscribeAll","stop","getSubscribedChannels","getSubscribedChannelGroups","encrypt","decrypt","getAuthKey","setAuthKey","setCipherKey","getUUID","setUUID","getFilterExpression","setFilterExpression","setHeartbeatInterval","hasModule","setProxy","proxy","getVersion","name","suffix","_addPnsdkSuffix","announceNetworkDown","restore","announceNetworkUp","title","body","NotificationsPayload","uuidGenerator","createUUID","OPERATIONS","CATEGORIES"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport Config from './components/config';\nimport Crypto from './components/cryptography/index';\nimport SubscriptionManager from './components/subscription_manager';\nimport TelemetryManager from './components/telemetry_manager';\nimport NotificationsPayload from './components/push_payload';\nimport ListenerManager from './components/listener_manager';\nimport TokenManager from './components/token_manager';\n\nimport endpointCreator from './components/endpoint';\n\nimport { deprecated } from './utils';\n\nimport * as addChannelsChannelGroupConfig from './endpoints/channel_groups/add_channels';\nimport * as removeChannelsChannelGroupConfig from './endpoints/channel_groups/remove_channels';\nimport * as deleteChannelGroupConfig from './endpoints/channel_groups/delete_group';\nimport * as listChannelGroupsConfig from './endpoints/channel_groups/list_groups';\nimport * as listChannelsInChannelGroupConfig from './endpoints/channel_groups/list_channels';\n\nimport * as addPushChannelsConfig from './endpoints/push/add_push_channels';\nimport * as removePushChannelsConfig from './endpoints/push/remove_push_channels';\nimport * as listPushChannelsConfig from './endpoints/push/list_push_channels';\nimport * as removeDevicePushConfig from './endpoints/push/remove_device';\n\nimport * as presenceLeaveEndpointConfig from './endpoints/presence/leave';\nimport * as presenceWhereNowEndpointConfig from './endpoints/presence/where_now';\nimport * as presenceHeartbeatEndpointConfig from './endpoints/presence/heartbeat';\nimport * as presenceGetStateConfig from './endpoints/presence/get_state';\nimport * as presenceSetStateConfig from './endpoints/presence/set_state';\nimport * as presenceHereNowConfig from './endpoints/presence/here_now';\n\n// Actions API\n\nimport * as addMessageActionEndpointConfig from './endpoints/actions/add_message_action';\nimport * as removeMessageActionEndpointConfig from './endpoints/actions/remove_message_action';\nimport * as getMessageActionEndpointConfig from './endpoints/actions/get_message_actions';\n\n// File Upload API v1\n\nimport { IFile, FileClass } from '../file';\n\nimport * as fileUploadTypes from './endpoints/file_upload/types';\n\nimport listFilesEndpointConfig from './endpoints/file_upload/list_files';\nimport generateUploadUrlEndpointConfig from './endpoints/file_upload/generate_upload_url';\nimport publishFileEndpointConfig from './endpoints/file_upload/publish_file';\nimport sendFileFunction from './endpoints/file_upload/send_file';\nimport getFileUrlFunction from './endpoints/file_upload/get_file_url';\nimport downloadFileEndpointConfig from './endpoints/file_upload/download_file';\nimport deleteFileEndpointConfig from './endpoints/file_upload/delete_file';\n\n// Object API v2\nimport getAllUUIDMetadataEndpointConfig, {\n type GetAllUUIDMetadataParams,\n type GetAllUUIDMetadataResult,\n} from './endpoints/objects/uuid/get_all';\n\nimport getUUIDMetadataEndpointConfig, {\n type GetUUIDMetadataParams,\n type GetUUIDMetadataResult,\n} from './endpoints/objects/uuid/get';\n\nimport setUUIDMetadataEndpointConfig, {\n type SetUUIDMetadataParams,\n type SetUUIDMetadataResult,\n} from './endpoints/objects/uuid/set';\n\nimport removeUUIDMetadataEndpointConfig, {\n type RemoveUUIDMetadataParams,\n type RemoveUUIDMetadataResult,\n} from './endpoints/objects/uuid/remove';\n\nimport getAllChannelMetadataEndpointConfig, {\n type GetAllChannelMetadataParams,\n type GetAllChannelMetadataResult,\n} from './endpoints/objects/channel/get_all';\n\nimport getChannelMetadataEndpointConfig, {\n type GetChannelMetadataParams,\n type GetChannelMetadataResult,\n} from './endpoints/objects/channel/get';\n\nimport setChannelMetadataEndpointConfig, {\n type SetChannelMetadataParams,\n type SetChannelMetadataResult,\n} from './endpoints/objects/channel/set';\n\nimport removeChannelMetadataEndpointConfig, {\n type RemoveChannelMetadataParams,\n type RemoveChannelMetadataResult,\n} from './endpoints/objects/channel/remove';\n\nimport getMembersV2EndpointConfig, {\n type GetMembersParams,\n type GetMembersResult,\n} from './endpoints/objects/member/get';\n\nimport setMembersV2EndpointConfig, {\n type UpsertMembersParams,\n type RemoveMembersParams,\n type SetMembersResult,\n} from './endpoints/objects/member/set';\n\nimport getMembershipsV2EndpointConfig, {\n type GetMembershipsParams,\n type GetMembershipsResult,\n} from './endpoints/objects/membership/get';\n\nimport setMembershipsV2EndpointConfig, {\n type UpsertMembershipsParams,\n type RemoveMembershipsParams,\n type SetMembershipsResult,\n} from './endpoints/objects/membership/set';\n\n// Objects API\n\nimport * as createUserEndpointConfig from './endpoints/users/create_user';\nimport * as updateUserEndpointConfig from './endpoints/users/update_user';\nimport * as deleteUserEndpointConfig from './endpoints/users/delete_user';\nimport * as getUserEndpointConfig from './endpoints/users/get_user';\nimport * as getUsersEndpointConfig from './endpoints/users/get_users';\nimport * as createSpaceEndpointConfig from './endpoints/spaces/create_space';\nimport * as updateSpaceEndpointConfig from './endpoints/spaces/update_space';\nimport * as deleteSpaceEndpointConfig from './endpoints/spaces/delete_space';\nimport * as getSpacesEndpointConfig from './endpoints/spaces/get_spaces';\nimport * as getSpaceEndpointConfig from './endpoints/spaces/get_space';\nimport * as getMembersEndpointConfig from './endpoints/memberships/get_members';\nimport * as addMembersEndpointConfig from './endpoints/memberships/add_members';\nimport * as updateMembersEndpointConfig from './endpoints/memberships/update_members';\nimport * as removeMembersEndpointConfig from './endpoints/memberships/remove_members';\nimport * as getMembershipsEndpointConfig from './endpoints/memberships/get_memberships';\nimport * as updateMembershipsEndpointConfig from './endpoints/memberships/update_memberships';\nimport * as joinSpacesEndpointConfig from './endpoints/memberships/join_spaces';\nimport * as leaveSpacesEndpointConfig from './endpoints/memberships/leave_spaces';\n\nimport * as auditEndpointConfig from './endpoints/access_manager/audit';\nimport * as grantEndpointConfig from './endpoints/access_manager/grant';\nimport * as grantTokenEndpointConfig from './endpoints/access_manager/grant_token';\n\nimport * as publishEndpointConfig from './endpoints/publish';\nimport * as signalEndpointConfig from './endpoints/signal';\nimport * as historyEndpointConfig from './endpoints/history/get_history';\nimport * as deleteMessagesEndpointConfig from './endpoints/history/delete_messages';\nimport * as messageCountsEndpointConfig from './endpoints/history/message_counts';\nimport * as fetchMessagesEndpointConfig from './endpoints/fetch_messages';\nimport * as timeEndpointConfig from './endpoints/time';\nimport * as subscribeEndpointConfig from './endpoints/subscribe';\n\nimport OPERATIONS from './constants/operations';\nimport CATEGORIES from './constants/categories';\n\nimport { InternalSetupStruct } from './flow_interfaces';\nimport uuidGenerator from './components/uuid';\n\ntype CallbackStatus = {|\n error: boolean,\n operation: string,\n statusCode: number,\n|};\n\nexport default class {\n _config: Config;\n _telemetryManager: TelemetryManager;\n _listenerManager: ListenerManager;\n _tokenManager: TokenManager;\n\n // tell flow about the mounted endpoint\n time: Function;\n publish: Function;\n fire: Function;\n\n history: Function;\n deleteMessages: Function;\n messageCounts: Function;\n fetchMessages: Function;\n\n //\n channelGroups: Object;\n //\n push: Object;\n //\n hereNow: Function;\n whereNow: Function;\n getState: Function;\n setState: Function;\n //\n grant: Function;\n grantToken: Function;\n audit: Function;\n //\n subscribe: Function;\n signal: Function;\n presence: Function;\n unsubscribe: Function;\n unsubscribeAll: Function;\n\n // Actions API\n addMessageAction: Function;\n removeMessageAction: Function;\n getMessageActions: Function;\n\n // File Upload API v1\n\n File: FileClass;\n encryptFile: (key: string, file: IFile) => Promise;\n decryptFile: (key: string, file: IFile) => Promise;\n\n listFiles: (\n parameters: fileUploadTypes.ListFilesParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.ListFilesResult) => void\n ) => Promise;\n sendFile: (\n parameters: fileUploadTypes.SendFileParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.SendFileResult) => void\n ) => Promise;\n downloadFile: (\n parameters: fileUploadTypes.DownloadFileParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.DownloadFileResult) => void\n ) => Promise;\n getFileUrl: (parameters: fileUploadTypes.GetFileUrlParams) => fileUploadTypes.GetFileUrlResult;\n deleteFile: (\n parameters: fileUploadTypes.DeleteFileParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.DeleteFileResult) => void\n ) => Promise;\n publishFile: (\n parameters: fileUploadTypes.PublishFileParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.PublishFileResult) => void\n ) => Promise;\n\n // Objects API v2\n\n objects: {\n getAllUUIDMetadata: (\n parameters?: GetAllUUIDMetadataParams,\n cb?: (status: CallbackStatus, result: GetAllUUIDMetadataResult) => void\n ) => Promise,\n getUUIDMetadata: (\n parameters?: GetUUIDMetadataParams,\n cb?: (status: CallbackStatus, result: GetUUIDMetadataResult) => void\n ) => Promise,\n setUUIDMetadata: (\n parameters: SetUUIDMetadataParams,\n cb?: (status: CallbackStatus, result: SetUUIDMetadataResult) => void\n ) => Promise,\n removeUUIDMetadata: (\n parameters?: RemoveUUIDMetadataParams,\n cb?: (status: CallbackStatus, result: RemoveUUIDMetadataResult) => void\n ) => Promise,\n\n getAllChannelMetadata: (\n parameters?: GetAllChannelMetadataParams,\n cb?: (status: CallbackStatus, result: GetAllChannelMetadataResult) => void\n ) => Promise,\n getChannelMetadata: (\n parameters: GetChannelMetadataParams,\n cb?: (status: CallbackStatus, result: GetChannelMetadataResult) => void\n ) => Promise,\n setChannelMetadata: (\n parameters: SetChannelMetadataParams,\n cb?: (status: CallbackStatus, result: SetChannelMetadataResult) => void\n ) => Promise,\n removeChannelMetadata: (\n parameters: RemoveChannelMetadataParams,\n cb?: (status: CallbackStatus, result: RemoveChannelMetadataResult) => void\n ) => Promise,\n\n getMemberships: (\n parameters: GetMembershipsParams,\n cb?: (status: CallbackStatus, result: GetMembershipsResult) => void\n ) => Promise,\n setMemberships: (\n parameters: $Diff,\n cb?: (status: CallbackStatus, result: SetMembershipsResult) => void\n ) => Promise,\n removeMemberships: (\n parameters: $Diff,\n cb?: (status: CallbackStatus, result: SetMembershipsResult) => void\n ) => Promise,\n\n getChannelMembers: (\n parameters: GetMembersParams,\n cb?: (status: CallbackStatus, result: GetMembersResult) => void\n ) => Promise,\n setChannelMembers: (\n parameters: $Diff,\n cb?: (status: CallbackStatus, result: SetMembersResult) => void\n ) => Promise,\n removeChannelMembers: (\n parameters: $Diff,\n cb?: (status: CallbackStatus, result: SetMembersResult) => void\n ) => Promise,\n };\n\n // Objects API\n\n createUser: Function;\n updateUser: Function;\n deleteUser: Function;\n getUser: Function;\n getUsers: Function;\n createSpace: Function;\n updateSpace: Function;\n deleteSpace: Function;\n getSpaces: Function;\n getSpace: Function;\n getMembers: Function;\n addMembers: Function;\n updateMembers: Function;\n removeMembers: Function;\n getMemberships: Function;\n joinSpaces: Function;\n updateMemberships: Function;\n leaveSpaces: Function;\n\n disconnect: Function;\n reconnect: Function;\n\n destroy: Function;\n stop: Function;\n\n getSubscribedChannels: Function;\n getSubscribedChannelGroups: Function;\n\n addListener: Function;\n removeListener: Function;\n removeAllListeners: Function;\n\n parseToken: Function;\n setToken: Function;\n setTokens: Function;\n getToken: Function;\n getTokens: Function;\n clearTokens: Function;\n\n getAuthKey: Function;\n setAuthKey: Function;\n\n setCipherKey: Function;\n setUUID: Function;\n getUUID: Function;\n\n getFilterExpression: Function;\n setFilterExpression: Function;\n\n setHeartbeatInterval: Function;\n\n setProxy: Function;\n\n encrypt: Function;\n decrypt: Function;\n\n //\n\n constructor(setup: InternalSetupStruct) {\n let { db, networking, cbor } = setup;\n\n const config = (this._config = new Config({ setup, db }));\n const crypto = new Crypto({ config }); // LEGACY\n\n const cryptography = setup.cryptography;\n\n networking.init(config);\n\n const tokenManager = (this._tokenManager = new TokenManager(config, cbor));\n const telemetryManager = (this._telemetryManager = new TelemetryManager({\n maximumSamplesCount: 60000,\n }));\n\n let modules = {\n config,\n networking,\n crypto,\n cryptography,\n tokenManager,\n telemetryManager,\n PubNubFile: setup.PubNubFile,\n };\n\n this.File = setup.PubNubFile;\n\n this.encryptFile = (key, file) => cryptography.encryptFile(key, file, this.File);\n this.decryptFile = (key, file) => cryptography.decryptFile(key, file, this.File);\n\n const timeEndpoint = endpointCreator.bind(this, modules, timeEndpointConfig);\n const leaveEndpoint = endpointCreator.bind(this, modules, presenceLeaveEndpointConfig);\n const heartbeatEndpoint = endpointCreator.bind(this, modules, presenceHeartbeatEndpointConfig);\n const setStateEndpoint = endpointCreator.bind(this, modules, presenceSetStateConfig);\n const subscribeEndpoint = endpointCreator.bind(this, modules, subscribeEndpointConfig);\n\n // managers\n const listenerManager = (this._listenerManager = new ListenerManager());\n\n const subscriptionManager = new SubscriptionManager({\n timeEndpoint,\n leaveEndpoint,\n heartbeatEndpoint,\n setStateEndpoint,\n subscribeEndpoint,\n crypto: modules.crypto,\n config: modules.config,\n listenerManager,\n getFileUrl: (params) => getFileUrlFunction(modules, params),\n });\n\n this.addListener = listenerManager.addListener.bind(listenerManager);\n this.removeListener = listenerManager.removeListener.bind(listenerManager);\n this.removeAllListeners = listenerManager.removeAllListeners.bind(listenerManager);\n\n this.parseToken = tokenManager.parseToken.bind(tokenManager);\n this.setToken = tokenManager.setToken.bind(tokenManager);\n this.setTokens = tokenManager.setTokens.bind(tokenManager);\n this.getToken = tokenManager.getToken.bind(tokenManager);\n this.getTokens = tokenManager.getTokens.bind(tokenManager);\n this.clearTokens = tokenManager.clearTokens.bind(tokenManager);\n\n /* channel groups */\n this.channelGroups = {\n listGroups: endpointCreator.bind(this, modules, listChannelGroupsConfig),\n listChannels: endpointCreator.bind(this, modules, listChannelsInChannelGroupConfig),\n addChannels: endpointCreator.bind(this, modules, addChannelsChannelGroupConfig),\n removeChannels: endpointCreator.bind(this, modules, removeChannelsChannelGroupConfig),\n deleteGroup: endpointCreator.bind(this, modules, deleteChannelGroupConfig),\n };\n /* push */\n this.push = {\n addChannels: endpointCreator.bind(this, modules, addPushChannelsConfig),\n removeChannels: endpointCreator.bind(this, modules, removePushChannelsConfig),\n deleteDevice: endpointCreator.bind(this, modules, removeDevicePushConfig),\n listChannels: endpointCreator.bind(this, modules, listPushChannelsConfig),\n };\n /* presence */\n this.hereNow = endpointCreator.bind(this, modules, presenceHereNowConfig);\n this.whereNow = endpointCreator.bind(this, modules, presenceWhereNowEndpointConfig);\n this.getState = endpointCreator.bind(this, modules, presenceGetStateConfig);\n this.setState = subscriptionManager.adaptStateChange.bind(subscriptionManager);\n /* PAM */\n this.grant = endpointCreator.bind(this, modules, grantEndpointConfig);\n this.grantToken = endpointCreator.bind(this, modules, grantTokenEndpointConfig);\n this.audit = endpointCreator.bind(this, modules, auditEndpointConfig);\n //\n this.publish = endpointCreator.bind(this, modules, publishEndpointConfig);\n\n this.fire = (args, callback) => {\n args.replicate = false;\n args.storeInHistory = false;\n return this.publish(args, callback);\n };\n\n this.signal = endpointCreator.bind(this, modules, signalEndpointConfig);\n\n this.history = endpointCreator.bind(this, modules, historyEndpointConfig);\n this.deleteMessages = endpointCreator.bind(this, modules, deleteMessagesEndpointConfig);\n this.messageCounts = endpointCreator.bind(this, modules, messageCountsEndpointConfig);\n this.fetchMessages = endpointCreator.bind(this, modules, fetchMessagesEndpointConfig);\n\n // Actions API\n\n this.addMessageAction = endpointCreator.bind(this, modules, addMessageActionEndpointConfig);\n\n this.removeMessageAction = endpointCreator.bind(this, modules, removeMessageActionEndpointConfig);\n\n this.getMessageActions = endpointCreator.bind(this, modules, getMessageActionEndpointConfig);\n\n // File Upload API v1\n\n this.listFiles = endpointCreator.bind(this, modules, listFilesEndpointConfig);\n\n const generateUploadUrl = endpointCreator.bind(this, modules, generateUploadUrlEndpointConfig);\n this.publishFile = endpointCreator.bind(this, modules, publishFileEndpointConfig);\n\n this.sendFile = sendFileFunction({\n generateUploadUrl,\n publishFile: this.publishFile,\n modules,\n });\n\n this.getFileUrl = (params) => getFileUrlFunction(modules, params);\n\n this.downloadFile = endpointCreator.bind(this, modules, downloadFileEndpointConfig);\n\n this.deleteFile = endpointCreator.bind(this, modules, deleteFileEndpointConfig);\n\n // Objects API v2\n\n this.objects = {\n getAllUUIDMetadata: endpointCreator.bind(this, modules, getAllUUIDMetadataEndpointConfig),\n getUUIDMetadata: endpointCreator.bind(this, modules, getUUIDMetadataEndpointConfig),\n setUUIDMetadata: endpointCreator.bind(this, modules, setUUIDMetadataEndpointConfig),\n removeUUIDMetadata: endpointCreator.bind(this, modules, removeUUIDMetadataEndpointConfig),\n\n getAllChannelMetadata: endpointCreator.bind(this, modules, getAllChannelMetadataEndpointConfig),\n getChannelMetadata: endpointCreator.bind(this, modules, getChannelMetadataEndpointConfig),\n setChannelMetadata: endpointCreator.bind(this, modules, setChannelMetadataEndpointConfig),\n removeChannelMetadata: endpointCreator.bind(this, modules, removeChannelMetadataEndpointConfig),\n\n getChannelMembers: endpointCreator.bind(this, modules, getMembersV2EndpointConfig),\n setChannelMembers: (parameters: $Diff, ...rest) =>\n endpointCreator.call(\n this,\n modules,\n setMembersV2EndpointConfig,\n {\n type: 'set',\n ...parameters,\n },\n ...rest\n ),\n removeChannelMembers: (parameters: $Diff, ...rest) =>\n endpointCreator.call(\n this,\n modules,\n setMembersV2EndpointConfig,\n {\n type: 'delete',\n ...parameters,\n },\n ...rest\n ),\n\n getMemberships: endpointCreator.bind(this, modules, getMembershipsV2EndpointConfig),\n setMemberships: (parameters: $Diff, ...rest) =>\n endpointCreator.call(\n this,\n modules,\n setMembershipsV2EndpointConfig,\n {\n type: 'set',\n ...parameters,\n },\n ...rest\n ),\n removeMemberships: (parameters: $Diff, ...rest) =>\n endpointCreator.call(\n this,\n modules,\n setMembershipsV2EndpointConfig,\n {\n type: 'delete',\n ...parameters,\n },\n ...rest\n ),\n };\n\n // Objects API\n\n this.createUser = deprecated(endpointCreator.bind(this, modules, createUserEndpointConfig));\n\n this.updateUser = deprecated(endpointCreator.bind(this, modules, updateUserEndpointConfig));\n\n this.deleteUser = deprecated(endpointCreator.bind(this, modules, deleteUserEndpointConfig));\n\n this.getUser = deprecated(endpointCreator.bind(this, modules, getUserEndpointConfig));\n\n this.getUsers = deprecated(endpointCreator.bind(this, modules, getUsersEndpointConfig));\n\n this.createSpace = deprecated(endpointCreator.bind(this, modules, createSpaceEndpointConfig));\n\n this.updateSpace = deprecated(endpointCreator.bind(this, modules, updateSpaceEndpointConfig));\n\n this.deleteSpace = deprecated(endpointCreator.bind(this, modules, deleteSpaceEndpointConfig));\n\n this.getSpaces = deprecated(endpointCreator.bind(this, modules, getSpacesEndpointConfig));\n\n this.getSpace = deprecated(endpointCreator.bind(this, modules, getSpaceEndpointConfig));\n\n this.addMembers = deprecated(endpointCreator.bind(this, modules, addMembersEndpointConfig));\n\n this.updateMembers = deprecated(endpointCreator.bind(this, modules, updateMembersEndpointConfig));\n\n this.removeMembers = deprecated(endpointCreator.bind(this, modules, removeMembersEndpointConfig));\n\n this.getMembers = deprecated(endpointCreator.bind(this, modules, getMembersEndpointConfig));\n\n this.getMemberships = deprecated(endpointCreator.bind(this, modules, getMembershipsEndpointConfig));\n\n this.joinSpaces = deprecated(endpointCreator.bind(this, modules, joinSpacesEndpointConfig));\n\n this.updateMemberships = deprecated(endpointCreator.bind(this, modules, updateMembershipsEndpointConfig));\n\n this.leaveSpaces = deprecated(endpointCreator.bind(this, modules, leaveSpacesEndpointConfig));\n\n this.time = timeEndpoint;\n\n // subscription related methods\n this.subscribe = subscriptionManager.adaptSubscribeChange.bind(subscriptionManager);\n this.presence = subscriptionManager.adaptPresenceChange.bind(subscriptionManager);\n this.unsubscribe = subscriptionManager.adaptUnsubscribeChange.bind(subscriptionManager);\n this.disconnect = subscriptionManager.disconnect.bind(subscriptionManager);\n this.reconnect = subscriptionManager.reconnect.bind(subscriptionManager);\n\n this.destroy = (isOffline: boolean) => {\n subscriptionManager.unsubscribeAll(isOffline);\n subscriptionManager.disconnect();\n };\n\n // --- deprecated ------------------\n this.stop = this.destroy; // --------\n // --- deprecated ------------------\n\n this.unsubscribeAll = subscriptionManager.unsubscribeAll.bind(subscriptionManager);\n\n this.getSubscribedChannels = subscriptionManager.getSubscribedChannels.bind(subscriptionManager);\n this.getSubscribedChannelGroups = subscriptionManager.getSubscribedChannelGroups.bind(subscriptionManager);\n\n // mount crypto\n this.encrypt = crypto.encrypt.bind(crypto);\n this.decrypt = crypto.decrypt.bind(crypto);\n\n /* config */\n this.getAuthKey = modules.config.getAuthKey.bind(modules.config);\n this.setAuthKey = modules.config.setAuthKey.bind(modules.config);\n this.setCipherKey = modules.config.setCipherKey.bind(modules.config);\n this.getUUID = modules.config.getUUID.bind(modules.config);\n this.setUUID = modules.config.setUUID.bind(modules.config);\n this.getFilterExpression = modules.config.getFilterExpression.bind(modules.config);\n this.setFilterExpression = modules.config.setFilterExpression.bind(modules.config);\n\n this.setHeartbeatInterval = modules.config.setHeartbeatInterval.bind(modules.config);\n\n if (networking.hasModule('proxy')) {\n this.setProxy = (proxy) => {\n modules.config.setProxy(proxy);\n this.reconnect();\n };\n }\n }\n\n getVersion(): string {\n return this._config.getVersion();\n }\n\n _addPnsdkSuffix(name: string, suffix: string) {\n this._config._addPnsdkSuffix(name, suffix);\n }\n\n // network hooks to indicate network changes\n networkDownDetected() {\n this._listenerManager.announceNetworkDown();\n\n if (this._config.restore) {\n this.disconnect();\n } else {\n this.destroy(true);\n }\n }\n\n networkUpDetected() {\n this._listenerManager.announceNetworkUp();\n this.reconnect();\n }\n\n static notificationPayload(title: ?string, body: ?string): NotificationsPayload {\n return new NotificationsPayload(title, body);\n }\n\n static generateUUID(): string {\n return uuidGenerator.createUUID();\n }\n\n static OPERATIONS = OPERATIONS;\n static CATEGORIES = CATEGORIES;\n}\n"],"file":"pubnub-common.js"} \ No newline at end of file +{"version":3,"sources":["core/pubnub-common.js"],"names":["setup","networking","cbor","config","_config","Config","crypto","Crypto","cryptography","init","tokenManager","_tokenManager","TokenManager","telemetryManager","_telemetryManager","TelemetryManager","maximumSamplesCount","modules","PubNubFile","File","encryptFile","key","file","decryptFile","timeEndpoint","endpointCreator","bind","timeEndpointConfig","leaveEndpoint","presenceLeaveEndpointConfig","heartbeatEndpoint","presenceHeartbeatEndpointConfig","setStateEndpoint","presenceSetStateConfig","subscribeEndpoint","subscribeEndpointConfig","listenerManager","_listenerManager","ListenerManager","subscriptionManager","SubscriptionManager","getFileUrl","params","addListener","removeListener","removeAllListeners","parseToken","setToken","getToken","channelGroups","listGroups","listChannelGroupsConfig","listChannels","listChannelsInChannelGroupConfig","addChannels","addChannelsChannelGroupConfig","removeChannels","removeChannelsChannelGroupConfig","deleteGroup","deleteChannelGroupConfig","push","addPushChannelsConfig","removePushChannelsConfig","deleteDevice","removeDevicePushConfig","listPushChannelsConfig","hereNow","presenceHereNowConfig","whereNow","presenceWhereNowEndpointConfig","getState","presenceGetStateConfig","setState","adaptStateChange","grant","grantEndpointConfig","grantToken","grantTokenEndpointConfig","audit","auditEndpointConfig","revokeToken","revokeTokenEndpointConfig","publish","publishEndpointConfig","fire","args","callback","replicate","storeInHistory","signal","signalEndpointConfig","history","historyEndpointConfig","deleteMessages","deleteMessagesEndpointConfig","messageCounts","messageCountsEndpointConfig","fetchMessages","fetchMessagesEndpointConfig","addMessageAction","addMessageActionEndpointConfig","removeMessageAction","removeMessageActionEndpointConfig","getMessageActions","getMessageActionEndpointConfig","listFiles","listFilesEndpointConfig","generateUploadUrl","generateUploadUrlEndpointConfig","publishFile","publishFileEndpointConfig","sendFile","downloadFile","downloadFileEndpointConfig","deleteFile","deleteFileEndpointConfig","objects","getAllUUIDMetadata","getAllUUIDMetadataEndpointConfig","getUUIDMetadata","getUUIDMetadataEndpointConfig","setUUIDMetadata","setUUIDMetadataEndpointConfig","removeUUIDMetadata","removeUUIDMetadataEndpointConfig","getAllChannelMetadata","getAllChannelMetadataEndpointConfig","getChannelMetadata","getChannelMetadataEndpointConfig","setChannelMetadata","setChannelMetadataEndpointConfig","removeChannelMetadata","removeChannelMetadataEndpointConfig","getChannelMembers","getMembersV2EndpointConfig","setChannelMembers","parameters","rest","call","setMembersV2EndpointConfig","type","removeChannelMembers","getMemberships","getMembershipsV2EndpointConfig","setMemberships","setMembershipsV2EndpointConfig","removeMemberships","createUser","createUserEndpointConfig","updateUser","updateUserEndpointConfig","deleteUser","deleteUserEndpointConfig","getUser","getUserEndpointConfig","getUsers","getUsersEndpointConfig","createSpace","createSpaceEndpointConfig","updateSpace","updateSpaceEndpointConfig","deleteSpace","deleteSpaceEndpointConfig","getSpaces","getSpacesEndpointConfig","getSpace","getSpaceEndpointConfig","addMembers","addMembersEndpointConfig","updateMembers","updateMembersEndpointConfig","removeMembers","removeMembersEndpointConfig","getMembers","getMembersEndpointConfig","getMembershipsEndpointConfig","joinSpaces","joinSpacesEndpointConfig","updateMemberships","updateMembershipsEndpointConfig","leaveSpaces","leaveSpacesEndpointConfig","time","subscribe","adaptSubscribeChange","presence","adaptPresenceChange","unsubscribe","adaptUnsubscribeChange","disconnect","reconnect","destroy","isOffline","unsubscribeAll","stop","getSubscribedChannels","getSubscribedChannelGroups","encrypt","decrypt","getAuthKey","setAuthKey","setCipherKey","getUUID","setUUID","getFilterExpression","setFilterExpression","setHeartbeatInterval","hasModule","setProxy","proxy","getVersion","name","suffix","_addPnsdkSuffix","announceNetworkDown","restore","announceNetworkUp","title","body","NotificationsPayload","uuidGenerator","createUUID","OPERATIONS","CATEGORIES"],"mappings":";;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAIA;;AACA;;AACA;;AAIA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA;;AAKA;;AAKA;;AAKA;;AAKA;;AAKA;;AAKA;;AAKA;;AAKA;;AAKA;;AAMA;;AAKA;;AAQA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAEA;;AACA;;;;;;;;;;;AA0ME,oBAAYA,KAAZ,EAAwC;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACtC,QAAMC,UAAN,GAA2BD,KAA3B,CAAMC,UAAN;AAAA,QAAkBC,IAAlB,GAA2BF,KAA3B,CAAkBE,IAAlB;AAEA,QAAMC,MAAM,GAAI,KAAKC,OAAL,GAAe,IAAIC,kBAAJ,CAAW;AAAEL,MAAAA,KAAK,EAALA;AAAF,KAAX,CAA/B;AACA,QAAMM,MAAM,GAAG,IAAIC,iBAAJ,CAAW;AAAEJ,MAAAA,MAAM,EAANA;AAAF,KAAX,CAAf;AAEA,QAAMK,YAAY,GAAGR,KAAK,CAACQ,YAA3B;AAEAP,IAAAA,UAAU,CAACQ,IAAX,CAAgBN,MAAhB;AAEA,QAAMO,YAAY,GAAI,KAAKC,aAAL,GAAqB,IAAIC,yBAAJ,CAAiBT,MAAjB,EAAyBD,IAAzB,CAA3C;AACA,QAAMW,gBAAgB,GAAI,KAAKC,iBAAL,GAAyB,IAAIC,6BAAJ,CAAqB;AACtEC,MAAAA,mBAAmB,EAAE;AADiD,KAArB,CAAnD;AAIA,QAAIC,OAAO,GAAG;AACZd,MAAAA,MAAM,EAANA,MADY;AAEZF,MAAAA,UAAU,EAAVA,UAFY;AAGZK,MAAAA,MAAM,EAANA,MAHY;AAIZE,MAAAA,YAAY,EAAZA,YAJY;AAKZE,MAAAA,YAAY,EAAZA,YALY;AAMZG,MAAAA,gBAAgB,EAAhBA,gBANY;AAOZK,MAAAA,UAAU,EAAElB,KAAK,CAACkB;AAPN,KAAd;AAUA,SAAKC,IAAL,GAAYnB,KAAK,CAACkB,UAAlB;;AAEA,SAAKE,WAAL,GAAmB,UAACC,GAAD,EAAMC,IAAN;AAAA,aAAed,YAAY,CAACY,WAAb,CAAyBC,GAAzB,EAA8BC,IAA9B,EAAoC,KAAI,CAACH,IAAzC,CAAf;AAAA,KAAnB;;AACA,SAAKI,WAAL,GAAmB,UAACF,GAAD,EAAMC,IAAN;AAAA,aAAed,YAAY,CAACe,WAAb,CAAyBF,GAAzB,EAA8BC,IAA9B,EAAoC,KAAI,CAACH,IAAzC,CAAf;AAAA,KAAnB;;AAEA,QAAMK,YAAY,GAAGC,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCU,kBAApC,CAArB;;AACA,QAAMC,aAAa,GAAGH,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCY,2BAApC,CAAtB;;AACA,QAAMC,iBAAiB,GAAGL,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCc,+BAApC,CAA1B;;AACA,QAAMC,gBAAgB,GAAGP,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCgB,sBAApC,CAAzB;;AACA,QAAMC,iBAAiB,GAAGT,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCkB,uBAApC,CAA1B;;AAGA,QAAMC,eAAe,GAAI,KAAKC,gBAAL,GAAwB,IAAIC,4BAAJ,EAAjD;AAEA,QAAMC,mBAAmB,GAAG,IAAIC,gCAAJ,CAAwB;AAClDhB,MAAAA,YAAY,EAAZA,YADkD;AAElDI,MAAAA,aAAa,EAAbA,aAFkD;AAGlDE,MAAAA,iBAAiB,EAAjBA,iBAHkD;AAIlDE,MAAAA,gBAAgB,EAAhBA,gBAJkD;AAKlDE,MAAAA,iBAAiB,EAAjBA,iBALkD;AAMlD5B,MAAAA,MAAM,EAAEW,OAAO,CAACX,MANkC;AAOlDH,MAAAA,MAAM,EAAEc,OAAO,CAACd,MAPkC;AAQlDiC,MAAAA,eAAe,EAAfA,eARkD;AASlDK,MAAAA,UAAU,EAAE,oBAACC,MAAD;AAAA,eAAY,8BAAmBzB,OAAnB,EAA4ByB,MAA5B,CAAZ;AAAA;AATsC,KAAxB,CAA5B;AAYA,SAAKC,WAAL,GAAmBP,eAAe,CAACO,WAAhB,CAA4BjB,IAA5B,CAAiCU,eAAjC,CAAnB;AACA,SAAKQ,cAAL,GAAsBR,eAAe,CAACQ,cAAhB,CAA+BlB,IAA/B,CAAoCU,eAApC,CAAtB;AACA,SAAKS,kBAAL,GAA0BT,eAAe,CAACS,kBAAhB,CAAmCnB,IAAnC,CAAwCU,eAAxC,CAA1B;AAEA,SAAKU,UAAL,GAAkBpC,YAAY,CAACoC,UAAb,CAAwBpB,IAAxB,CAA6BhB,YAA7B,CAAlB;AACA,SAAKqC,QAAL,GAAgBrC,YAAY,CAACqC,QAAb,CAAsBrB,IAAtB,CAA2BhB,YAA3B,CAAhB;AACA,SAAKsC,QAAL,GAAgBtC,YAAY,CAACsC,QAAb,CAAsBtB,IAAtB,CAA2BhB,YAA3B,CAAhB;AAGA,SAAKuC,aAAL,GAAqB;AACnBC,MAAAA,UAAU,EAAEzB,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCkC,uBAApC,CADO;AAEnBC,MAAAA,YAAY,EAAE3B,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCoC,gCAApC,CAFK;AAGnBC,MAAAA,WAAW,EAAE7B,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCsC,6BAApC,CAHM;AAInBC,MAAAA,cAAc,EAAE/B,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCwC,gCAApC,CAJG;AAKnBC,MAAAA,WAAW,EAAEjC,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC0C,wBAApC;AALM,KAArB;AAQA,SAAKC,IAAL,GAAY;AACVN,MAAAA,WAAW,EAAE7B,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC4C,qBAApC,CADH;AAEVL,MAAAA,cAAc,EAAE/B,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC6C,wBAApC,CAFN;AAGVC,MAAAA,YAAY,EAAEtC,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC+C,sBAApC,CAHJ;AAIVZ,MAAAA,YAAY,EAAE3B,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCgD,sBAApC;AAJJ,KAAZ;AAOA,SAAKC,OAAL,GAAezC,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCkD,qBAApC,CAAf;AACA,SAAKC,QAAL,GAAgB3C,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCoD,8BAApC,CAAhB;AACA,SAAKC,QAAL,GAAgB7C,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCsD,sBAApC,CAAhB;AACA,SAAKC,QAAL,GAAgBjC,mBAAmB,CAACkC,gBAApB,CAAqC/C,IAArC,CAA0Ca,mBAA1C,CAAhB;AAEA,SAAKmC,KAAL,GAAajD,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC0D,mBAApC,CAAb;AACA,SAAKC,UAAL,GAAkBnD,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC4D,wBAApC,CAAlB;AACA,SAAKC,KAAL,GAAarD,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC8D,mBAApC,CAAb;AACA,SAAKC,WAAL,GAAmBvD,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCgE,wBAApC,CAAnB;AAEA,SAAKC,OAAL,GAAezD,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCkE,qBAApC,CAAf;;AAEA,SAAKC,IAAL,GAAY,UAACC,IAAD,EAAOC,QAAP,EAAoB;AAC9BD,MAAAA,IAAI,CAACE,SAAL,GAAiB,KAAjB;AACAF,MAAAA,IAAI,CAACG,cAAL,GAAsB,KAAtB;AACA,aAAO,KAAI,CAACN,OAAL,CAAaG,IAAb,EAAmBC,QAAnB,CAAP;AACD,KAJD;;AAMA,SAAKG,MAAL,GAAchE,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCyE,oBAApC,CAAd;AAEA,SAAKC,OAAL,GAAelE,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC2E,qBAApC,CAAf;AACA,SAAKC,cAAL,GAAsBpE,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC6E,4BAApC,CAAtB;AACA,SAAKC,aAAL,GAAqBtE,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC+E,2BAApC,CAArB;AACA,SAAKC,aAAL,GAAqBxE,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCiF,2BAApC,CAArB;AAIA,SAAKC,gBAAL,GAAwB1E,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCmF,8BAApC,CAAxB;AAEA,SAAKC,mBAAL,GAA2B5E,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCqF,iCAApC,CAA3B;AAEA,SAAKC,iBAAL,GAAyB9E,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCuF,8BAApC,CAAzB;AAIA,SAAKC,SAAL,GAAiBhF,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCyF,sBAApC,CAAjB;;AAEA,QAAMC,iBAAiB,GAAGlF,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC2F,+BAApC,CAA1B;;AACA,SAAKC,WAAL,GAAmBpF,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC6F,wBAApC,CAAnB;AAEA,SAAKC,QAAL,GAAgB,2BAAiB;AAC/BJ,MAAAA,iBAAiB,EAAjBA,iBAD+B;AAE/BE,MAAAA,WAAW,EAAE,KAAKA,WAFa;AAG/B5F,MAAAA,OAAO,EAAPA;AAH+B,KAAjB,CAAhB;;AAMA,SAAKwB,UAAL,GAAkB,UAACC,MAAD;AAAA,aAAY,8BAAmBzB,OAAnB,EAA4ByB,MAA5B,CAAZ;AAAA,KAAlB;;AAEA,SAAKsE,YAAL,GAAoBvF,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCgG,yBAApC,CAApB;AAEA,SAAKC,UAAL,GAAkBzF,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCkG,uBAApC,CAAlB;AAIA,SAAKC,OAAL,GAAe;AACbC,MAAAA,kBAAkB,EAAE5F,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCqG,mBAApC,CADP;AAEbC,MAAAA,eAAe,EAAE9F,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCuG,eAApC,CAFJ;AAGbC,MAAAA,eAAe,EAAEhG,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCyG,eAApC,CAHJ;AAIbC,MAAAA,kBAAkB,EAAElG,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC2G,kBAApC,CAJP;AAMbC,MAAAA,qBAAqB,EAAEpG,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC6G,oBAApC,CANV;AAObC,MAAAA,kBAAkB,EAAEtG,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC+G,gBAApC,CAPP;AAQbC,MAAAA,kBAAkB,EAAExG,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCiH,gBAApC,CARP;AASbC,MAAAA,qBAAqB,EAAE1G,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCmH,mBAApC,CATV;AAWbC,MAAAA,iBAAiB,EAAE5G,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCqH,gBAApC,CAXN;AAYbC,MAAAA,iBAAiB,EAAE,2BAACC,UAAD;AAAA,0CAAgEC,IAAhE;AAAgEA,UAAAA,IAAhE;AAAA;;AAAA,eACjBhH,qBAAgBiH,IAAhB,8BACE,KADF,EAEEzH,OAFF,EAGE0H,gBAHF;AAKIC,UAAAA,IAAI,EAAE;AALV,WAMOJ,UANP,UAQKC,IARL,EADiB;AAAA,OAZN;AAuBbI,MAAAA,oBAAoB,EAAE,8BAACL,UAAD;AAAA,2CAAgEC,IAAhE;AAAgEA,UAAAA,IAAhE;AAAA;;AAAA,eACpBhH,qBAAgBiH,IAAhB,8BACE,KADF,EAEEzH,OAFF,EAGE0H,gBAHF;AAKIC,UAAAA,IAAI,EAAE;AALV,WAMOJ,UANP,UAQKC,IARL,EADoB;AAAA,OAvBT;AAmCbK,MAAAA,cAAc,EAAErH,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC8H,gBAApC,CAnCH;AAoCbC,MAAAA,cAAc,EAAE,wBAACR,UAAD;AAAA,2CAAoEC,IAApE;AAAoEA,UAAAA,IAApE;AAAA;;AAAA,eACdhH,qBAAgBiH,IAAhB,8BACE,KADF,EAEEzH,OAFF,EAGEgI,gBAHF;AAKIL,UAAAA,IAAI,EAAE;AALV,WAMOJ,UANP,UAQKC,IARL,EADc;AAAA,OApCH;AA+CbS,MAAAA,iBAAiB,EAAE,2BAACV,UAAD;AAAA,2CAAoEC,IAApE;AAAoEA,UAAAA,IAApE;AAAA;;AAAA,eACjBhH,qBAAgBiH,IAAhB,8BACE,KADF,EAEEzH,OAFF,EAGEgI,gBAHF;AAKIL,UAAAA,IAAI,EAAE;AALV,WAMOJ,UANP,UAQKC,IARL,EADiB;AAAA;AA/CN,KAAf;AA8DA,SAAKU,UAAL,GAAkB,uBAAW1H,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCmI,wBAApC,CAAX,CAAlB;AAEA,SAAKC,UAAL,GAAkB,uBAAW5H,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCqI,wBAApC,CAAX,CAAlB;AAEA,SAAKC,UAAL,GAAkB,uBAAW9H,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCuI,wBAApC,CAAX,CAAlB;AAEA,SAAKC,OAAL,GAAe,uBAAWhI,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCyI,qBAApC,CAAX,CAAf;AAEA,SAAKC,QAAL,GAAgB,uBAAWlI,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC2I,sBAApC,CAAX,CAAhB;AAEA,SAAKC,WAAL,GAAmB,uBAAWpI,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC6I,yBAApC,CAAX,CAAnB;AAEA,SAAKC,WAAL,GAAmB,uBAAWtI,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC+I,yBAApC,CAAX,CAAnB;AAEA,SAAKC,WAAL,GAAmB,uBAAWxI,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCiJ,yBAApC,CAAX,CAAnB;AAEA,SAAKC,SAAL,GAAiB,uBAAW1I,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCmJ,uBAApC,CAAX,CAAjB;AAEA,SAAKC,QAAL,GAAgB,uBAAW5I,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCqJ,sBAApC,CAAX,CAAhB;AAEA,SAAKC,UAAL,GAAkB,uBAAW9I,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCuJ,wBAApC,CAAX,CAAlB;AAEA,SAAKC,aAAL,GAAqB,uBAAWhJ,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCyJ,2BAApC,CAAX,CAArB;AAEA,SAAKC,aAAL,GAAqB,uBAAWlJ,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC2J,2BAApC,CAAX,CAArB;AAEA,SAAKC,UAAL,GAAkB,uBAAWpJ,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC6J,wBAApC,CAAX,CAAlB;AAEA,SAAKhC,cAAL,GAAsB,uBAAWrH,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoC8J,4BAApC,CAAX,CAAtB;AAEA,SAAKC,UAAL,GAAkB,uBAAWvJ,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCgK,wBAApC,CAAX,CAAlB;AAEA,SAAKC,iBAAL,GAAyB,uBAAWzJ,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCkK,+BAApC,CAAX,CAAzB;AAEA,SAAKC,WAAL,GAAmB,uBAAW3J,qBAAgBC,IAAhB,CAAqB,IAArB,EAA2BT,OAA3B,EAAoCoK,yBAApC,CAAX,CAAnB;AAEA,SAAKC,IAAL,GAAY9J,YAAZ;AAGA,SAAK+J,SAAL,GAAiBhJ,mBAAmB,CAACiJ,oBAApB,CAAyC9J,IAAzC,CAA8Ca,mBAA9C,CAAjB;AACA,SAAKkJ,QAAL,GAAgBlJ,mBAAmB,CAACmJ,mBAApB,CAAwChK,IAAxC,CAA6Ca,mBAA7C,CAAhB;AACA,SAAKoJ,WAAL,GAAmBpJ,mBAAmB,CAACqJ,sBAApB,CAA2ClK,IAA3C,CAAgDa,mBAAhD,CAAnB;AACA,SAAKsJ,UAAL,GAAkBtJ,mBAAmB,CAACsJ,UAApB,CAA+BnK,IAA/B,CAAoCa,mBAApC,CAAlB;AACA,SAAKuJ,SAAL,GAAiBvJ,mBAAmB,CAACuJ,SAApB,CAA8BpK,IAA9B,CAAmCa,mBAAnC,CAAjB;;AAEA,SAAKwJ,OAAL,GAAe,UAACC,SAAD,EAAwB;AACrCzJ,MAAAA,mBAAmB,CAAC0J,cAApB,CAAmCD,SAAnC;AACAzJ,MAAAA,mBAAmB,CAACsJ,UAApB;AACD,KAHD;;AAMA,SAAKK,IAAL,GAAY,KAAKH,OAAjB;AAGA,SAAKE,cAAL,GAAsB1J,mBAAmB,CAAC0J,cAApB,CAAmCvK,IAAnC,CAAwCa,mBAAxC,CAAtB;AAEA,SAAK4J,qBAAL,GAA6B5J,mBAAmB,CAAC4J,qBAApB,CAA0CzK,IAA1C,CAA+Ca,mBAA/C,CAA7B;AACA,SAAK6J,0BAAL,GAAkC7J,mBAAmB,CAAC6J,0BAApB,CAA+C1K,IAA/C,CAAoDa,mBAApD,CAAlC;AAGA,SAAK8J,OAAL,GAAe/L,MAAM,CAAC+L,OAAP,CAAe3K,IAAf,CAAoBpB,MAApB,CAAf;AACA,SAAKgM,OAAL,GAAehM,MAAM,CAACgM,OAAP,CAAe5K,IAAf,CAAoBpB,MAApB,CAAf;AAGA,SAAKiM,UAAL,GAAkBtL,OAAO,CAACd,MAAR,CAAeoM,UAAf,CAA0B7K,IAA1B,CAA+BT,OAAO,CAACd,MAAvC,CAAlB;AACA,SAAKqM,UAAL,GAAkBvL,OAAO,CAACd,MAAR,CAAeqM,UAAf,CAA0B9K,IAA1B,CAA+BT,OAAO,CAACd,MAAvC,CAAlB;AACA,SAAKsM,YAAL,GAAoBxL,OAAO,CAACd,MAAR,CAAesM,YAAf,CAA4B/K,IAA5B,CAAiCT,OAAO,CAACd,MAAzC,CAApB;AACA,SAAKuM,OAAL,GAAezL,OAAO,CAACd,MAAR,CAAeuM,OAAf,CAAuBhL,IAAvB,CAA4BT,OAAO,CAACd,MAApC,CAAf;AACA,SAAKwM,OAAL,GAAe1L,OAAO,CAACd,MAAR,CAAewM,OAAf,CAAuBjL,IAAvB,CAA4BT,OAAO,CAACd,MAApC,CAAf;AACA,SAAKyM,mBAAL,GAA2B3L,OAAO,CAACd,MAAR,CAAeyM,mBAAf,CAAmClL,IAAnC,CAAwCT,OAAO,CAACd,MAAhD,CAA3B;AACA,SAAK0M,mBAAL,GAA2B5L,OAAO,CAACd,MAAR,CAAe0M,mBAAf,CAAmCnL,IAAnC,CAAwCT,OAAO,CAACd,MAAhD,CAA3B;AAEA,SAAK2M,oBAAL,GAA4B7L,OAAO,CAACd,MAAR,CAAe2M,oBAAf,CAAoCpL,IAApC,CAAyCT,OAAO,CAACd,MAAjD,CAA5B;;AAEA,QAAIF,UAAU,CAAC8M,SAAX,CAAqB,OAArB,CAAJ,EAAmC;AACjC,WAAKC,QAAL,GAAgB,UAACC,KAAD,EAAW;AACzBhM,QAAAA,OAAO,CAACd,MAAR,CAAe6M,QAAf,CAAwBC,KAAxB;;AACA,QAAA,KAAI,CAACnB,SAAL;AACD,OAHD;AAID;AACF;;;;WAED,sBAAqB;AACnB,aAAO,KAAK1L,OAAL,CAAa8M,UAAb,EAAP;AACD;;;WAED,yBAAgBC,IAAhB,EAA8BC,MAA9B,EAA8C;AAC5C,WAAKhN,OAAL,CAAaiN,eAAb,CAA6BF,IAA7B,EAAmCC,MAAnC;AACD;;;WAGD,+BAAsB;AACpB,WAAK/K,gBAAL,CAAsBiL,mBAAtB;;AAEA,UAAI,KAAKlN,OAAL,CAAamN,OAAjB,EAA0B;AACxB,aAAK1B,UAAL;AACD,OAFD,MAEO;AACL,aAAKE,OAAL,CAAa,IAAb;AACD;AACF;;;WAED,6BAAoB;AAClB,WAAK1J,gBAAL,CAAsBmL,iBAAtB;;AACA,WAAK1B,SAAL;AACD;;;WAED,6BAA2B2B,KAA3B,EAA2CC,IAA3C,EAAgF;AAC9E,aAAO,IAAIC,wBAAJ,CAAyBF,KAAzB,EAAgCC,IAAhC,CAAP;AACD;;;WAED,wBAA8B;AAC5B,aAAOE,iBAAcC,UAAd,EAAP;AACD;;;;;;yDAEmBC,sB;yDACAC,sB","sourcesContent":["/** @flow */\n\nimport Config from './components/config';\nimport Crypto from './components/cryptography/index';\nimport SubscriptionManager from './components/subscription_manager';\nimport TelemetryManager from './components/telemetry_manager';\nimport NotificationsPayload from './components/push_payload';\nimport ListenerManager from './components/listener_manager';\nimport TokenManager from './components/token_manager';\n\nimport endpointCreator from './components/endpoint';\n\nimport { deprecated } from './utils';\n\nimport * as addChannelsChannelGroupConfig from './endpoints/channel_groups/add_channels';\nimport * as removeChannelsChannelGroupConfig from './endpoints/channel_groups/remove_channels';\nimport * as deleteChannelGroupConfig from './endpoints/channel_groups/delete_group';\nimport * as listChannelGroupsConfig from './endpoints/channel_groups/list_groups';\nimport * as listChannelsInChannelGroupConfig from './endpoints/channel_groups/list_channels';\n\nimport * as addPushChannelsConfig from './endpoints/push/add_push_channels';\nimport * as removePushChannelsConfig from './endpoints/push/remove_push_channels';\nimport * as listPushChannelsConfig from './endpoints/push/list_push_channels';\nimport * as removeDevicePushConfig from './endpoints/push/remove_device';\n\nimport * as presenceLeaveEndpointConfig from './endpoints/presence/leave';\nimport * as presenceWhereNowEndpointConfig from './endpoints/presence/where_now';\nimport * as presenceHeartbeatEndpointConfig from './endpoints/presence/heartbeat';\nimport * as presenceGetStateConfig from './endpoints/presence/get_state';\nimport * as presenceSetStateConfig from './endpoints/presence/set_state';\nimport * as presenceHereNowConfig from './endpoints/presence/here_now';\n\n// Actions API\n\nimport * as addMessageActionEndpointConfig from './endpoints/actions/add_message_action';\nimport * as removeMessageActionEndpointConfig from './endpoints/actions/remove_message_action';\nimport * as getMessageActionEndpointConfig from './endpoints/actions/get_message_actions';\n\n// File Upload API v1\n\nimport { IFile, FileClass } from '../file';\n\nimport * as fileUploadTypes from './endpoints/file_upload/types';\n\nimport listFilesEndpointConfig from './endpoints/file_upload/list_files';\nimport generateUploadUrlEndpointConfig from './endpoints/file_upload/generate_upload_url';\nimport publishFileEndpointConfig from './endpoints/file_upload/publish_file';\nimport sendFileFunction from './endpoints/file_upload/send_file';\nimport getFileUrlFunction from './endpoints/file_upload/get_file_url';\nimport downloadFileEndpointConfig from './endpoints/file_upload/download_file';\nimport deleteFileEndpointConfig from './endpoints/file_upload/delete_file';\n\n// Object API v2\nimport getAllUUIDMetadataEndpointConfig, {\n type GetAllUUIDMetadataParams,\n type GetAllUUIDMetadataResult,\n} from './endpoints/objects/uuid/get_all';\n\nimport getUUIDMetadataEndpointConfig, {\n type GetUUIDMetadataParams,\n type GetUUIDMetadataResult,\n} from './endpoints/objects/uuid/get';\n\nimport setUUIDMetadataEndpointConfig, {\n type SetUUIDMetadataParams,\n type SetUUIDMetadataResult,\n} from './endpoints/objects/uuid/set';\n\nimport removeUUIDMetadataEndpointConfig, {\n type RemoveUUIDMetadataParams,\n type RemoveUUIDMetadataResult,\n} from './endpoints/objects/uuid/remove';\n\nimport getAllChannelMetadataEndpointConfig, {\n type GetAllChannelMetadataParams,\n type GetAllChannelMetadataResult,\n} from './endpoints/objects/channel/get_all';\n\nimport getChannelMetadataEndpointConfig, {\n type GetChannelMetadataParams,\n type GetChannelMetadataResult,\n} from './endpoints/objects/channel/get';\n\nimport setChannelMetadataEndpointConfig, {\n type SetChannelMetadataParams,\n type SetChannelMetadataResult,\n} from './endpoints/objects/channel/set';\n\nimport removeChannelMetadataEndpointConfig, {\n type RemoveChannelMetadataParams,\n type RemoveChannelMetadataResult,\n} from './endpoints/objects/channel/remove';\n\nimport getMembersV2EndpointConfig, {\n type GetMembersParams,\n type GetMembersResult,\n} from './endpoints/objects/member/get';\n\nimport setMembersV2EndpointConfig, {\n type UpsertMembersParams,\n type RemoveMembersParams,\n type SetMembersResult,\n} from './endpoints/objects/member/set';\n\nimport getMembershipsV2EndpointConfig, {\n type GetMembershipsParams,\n type GetMembershipsResult,\n} from './endpoints/objects/membership/get';\n\nimport setMembershipsV2EndpointConfig, {\n type UpsertMembershipsParams,\n type RemoveMembershipsParams,\n type SetMembershipsResult,\n} from './endpoints/objects/membership/set';\n\n// Objects API\n\nimport * as createUserEndpointConfig from './endpoints/users/create_user';\nimport * as updateUserEndpointConfig from './endpoints/users/update_user';\nimport * as deleteUserEndpointConfig from './endpoints/users/delete_user';\nimport * as getUserEndpointConfig from './endpoints/users/get_user';\nimport * as getUsersEndpointConfig from './endpoints/users/get_users';\nimport * as createSpaceEndpointConfig from './endpoints/spaces/create_space';\nimport * as updateSpaceEndpointConfig from './endpoints/spaces/update_space';\nimport * as deleteSpaceEndpointConfig from './endpoints/spaces/delete_space';\nimport * as getSpacesEndpointConfig from './endpoints/spaces/get_spaces';\nimport * as getSpaceEndpointConfig from './endpoints/spaces/get_space';\nimport * as getMembersEndpointConfig from './endpoints/memberships/get_members';\nimport * as addMembersEndpointConfig from './endpoints/memberships/add_members';\nimport * as updateMembersEndpointConfig from './endpoints/memberships/update_members';\nimport * as removeMembersEndpointConfig from './endpoints/memberships/remove_members';\nimport * as getMembershipsEndpointConfig from './endpoints/memberships/get_memberships';\nimport * as updateMembershipsEndpointConfig from './endpoints/memberships/update_memberships';\nimport * as joinSpacesEndpointConfig from './endpoints/memberships/join_spaces';\nimport * as leaveSpacesEndpointConfig from './endpoints/memberships/leave_spaces';\n\nimport * as auditEndpointConfig from './endpoints/access_manager/audit';\nimport * as grantEndpointConfig from './endpoints/access_manager/grant';\nimport * as grantTokenEndpointConfig from './endpoints/access_manager/grant_token';\nimport revokeTokenEndpointConfig, {\n type RevokeTokenParams,\n type RevokeTokenResult,\n} from './endpoints/access_manager/revoke_token';\n\nimport * as publishEndpointConfig from './endpoints/publish';\nimport * as signalEndpointConfig from './endpoints/signal';\nimport * as historyEndpointConfig from './endpoints/history/get_history';\nimport * as deleteMessagesEndpointConfig from './endpoints/history/delete_messages';\nimport * as messageCountsEndpointConfig from './endpoints/history/message_counts';\nimport * as fetchMessagesEndpointConfig from './endpoints/fetch_messages';\nimport * as timeEndpointConfig from './endpoints/time';\nimport * as subscribeEndpointConfig from './endpoints/subscribe';\n\nimport OPERATIONS from './constants/operations';\nimport CATEGORIES from './constants/categories';\n\nimport { InternalSetupStruct } from './flow_interfaces';\nimport uuidGenerator from './components/uuid';\n\ntype CallbackStatus = {|\n error: boolean,\n operation: string,\n statusCode: number,\n|};\n\nexport default class {\n _config: Config;\n _telemetryManager: TelemetryManager;\n _listenerManager: ListenerManager;\n _tokenManager: TokenManager;\n\n // tell flow about the mounted endpoint\n time: Function;\n publish: Function;\n fire: Function;\n\n history: Function;\n deleteMessages: Function;\n messageCounts: Function;\n fetchMessages: Function;\n\n //\n channelGroups: Object;\n //\n push: Object;\n //\n hereNow: Function;\n whereNow: Function;\n getState: Function;\n setState: Function;\n //\n grant: Function;\n grantToken: Function;\n audit: Function;\n revokeToken: (\n parameters: RevokeTokenParams,\n callback?: (status: CallbackStatus, result: RevokeTokenResult) => void\n ) => Promise;\n //\n subscribe: Function;\n signal: Function;\n presence: Function;\n unsubscribe: Function;\n unsubscribeAll: Function;\n\n // Actions API\n addMessageAction: Function;\n removeMessageAction: Function;\n getMessageActions: Function;\n\n // File Upload API v1\n\n File: FileClass;\n encryptFile: (key: string, file: IFile) => Promise;\n decryptFile: (key: string, file: IFile) => Promise;\n\n listFiles: (\n parameters: fileUploadTypes.ListFilesParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.ListFilesResult) => void\n ) => Promise;\n sendFile: (\n parameters: fileUploadTypes.SendFileParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.SendFileResult) => void\n ) => Promise;\n downloadFile: (\n parameters: fileUploadTypes.DownloadFileParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.DownloadFileResult) => void\n ) => Promise;\n getFileUrl: (parameters: fileUploadTypes.GetFileUrlParams) => fileUploadTypes.GetFileUrlResult;\n deleteFile: (\n parameters: fileUploadTypes.DeleteFileParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.DeleteFileResult) => void\n ) => Promise;\n publishFile: (\n parameters: fileUploadTypes.PublishFileParams,\n callback?: (status: CallbackStatus, result: fileUploadTypes.PublishFileResult) => void\n ) => Promise;\n\n // Objects API v2\n\n objects: {\n getAllUUIDMetadata: (\n parameters?: GetAllUUIDMetadataParams,\n cb?: (status: CallbackStatus, result: GetAllUUIDMetadataResult) => void\n ) => Promise,\n getUUIDMetadata: (\n parameters?: GetUUIDMetadataParams,\n cb?: (status: CallbackStatus, result: GetUUIDMetadataResult) => void\n ) => Promise,\n setUUIDMetadata: (\n parameters: SetUUIDMetadataParams,\n cb?: (status: CallbackStatus, result: SetUUIDMetadataResult) => void\n ) => Promise,\n removeUUIDMetadata: (\n parameters?: RemoveUUIDMetadataParams,\n cb?: (status: CallbackStatus, result: RemoveUUIDMetadataResult) => void\n ) => Promise,\n\n getAllChannelMetadata: (\n parameters?: GetAllChannelMetadataParams,\n cb?: (status: CallbackStatus, result: GetAllChannelMetadataResult) => void\n ) => Promise,\n getChannelMetadata: (\n parameters: GetChannelMetadataParams,\n cb?: (status: CallbackStatus, result: GetChannelMetadataResult) => void\n ) => Promise,\n setChannelMetadata: (\n parameters: SetChannelMetadataParams,\n cb?: (status: CallbackStatus, result: SetChannelMetadataResult) => void\n ) => Promise,\n removeChannelMetadata: (\n parameters: RemoveChannelMetadataParams,\n cb?: (status: CallbackStatus, result: RemoveChannelMetadataResult) => void\n ) => Promise,\n\n getMemberships: (\n parameters: GetMembershipsParams,\n cb?: (status: CallbackStatus, result: GetMembershipsResult) => void\n ) => Promise,\n setMemberships: (\n parameters: $Diff,\n cb?: (status: CallbackStatus, result: SetMembershipsResult) => void\n ) => Promise,\n removeMemberships: (\n parameters: $Diff,\n cb?: (status: CallbackStatus, result: SetMembershipsResult) => void\n ) => Promise,\n\n getChannelMembers: (\n parameters: GetMembersParams,\n cb?: (status: CallbackStatus, result: GetMembersResult) => void\n ) => Promise,\n setChannelMembers: (\n parameters: $Diff,\n cb?: (status: CallbackStatus, result: SetMembersResult) => void\n ) => Promise,\n removeChannelMembers: (\n parameters: $Diff,\n cb?: (status: CallbackStatus, result: SetMembersResult) => void\n ) => Promise,\n };\n\n // Objects API\n\n createUser: Function;\n updateUser: Function;\n deleteUser: Function;\n getUser: Function;\n getUsers: Function;\n createSpace: Function;\n updateSpace: Function;\n deleteSpace: Function;\n getSpaces: Function;\n getSpace: Function;\n getMembers: Function;\n addMembers: Function;\n updateMembers: Function;\n removeMembers: Function;\n getMemberships: Function;\n joinSpaces: Function;\n updateMemberships: Function;\n leaveSpaces: Function;\n\n disconnect: Function;\n reconnect: Function;\n\n destroy: Function;\n stop: Function;\n\n getSubscribedChannels: Function;\n getSubscribedChannelGroups: Function;\n\n addListener: Function;\n removeListener: Function;\n removeAllListeners: Function;\n\n parseToken: Function;\n setToken: Function;\n getToken: Function;\n\n getAuthKey: Function;\n setAuthKey: Function;\n\n setCipherKey: Function;\n setUUID: Function;\n getUUID: Function;\n\n getFilterExpression: Function;\n setFilterExpression: Function;\n\n setHeartbeatInterval: Function;\n\n setProxy: Function;\n\n encrypt: Function;\n decrypt: Function;\n\n //\n\n constructor(setup: InternalSetupStruct) {\n let { networking, cbor } = setup;\n\n const config = (this._config = new Config({ setup }));\n const crypto = new Crypto({ config }); // LEGACY\n\n const cryptography = setup.cryptography;\n\n networking.init(config);\n\n const tokenManager = (this._tokenManager = new TokenManager(config, cbor));\n const telemetryManager = (this._telemetryManager = new TelemetryManager({\n maximumSamplesCount: 60000,\n }));\n\n let modules = {\n config,\n networking,\n crypto,\n cryptography,\n tokenManager,\n telemetryManager,\n PubNubFile: setup.PubNubFile,\n };\n\n this.File = setup.PubNubFile;\n\n this.encryptFile = (key, file) => cryptography.encryptFile(key, file, this.File);\n this.decryptFile = (key, file) => cryptography.decryptFile(key, file, this.File);\n\n const timeEndpoint = endpointCreator.bind(this, modules, timeEndpointConfig);\n const leaveEndpoint = endpointCreator.bind(this, modules, presenceLeaveEndpointConfig);\n const heartbeatEndpoint = endpointCreator.bind(this, modules, presenceHeartbeatEndpointConfig);\n const setStateEndpoint = endpointCreator.bind(this, modules, presenceSetStateConfig);\n const subscribeEndpoint = endpointCreator.bind(this, modules, subscribeEndpointConfig);\n\n // managers\n const listenerManager = (this._listenerManager = new ListenerManager());\n\n const subscriptionManager = new SubscriptionManager({\n timeEndpoint,\n leaveEndpoint,\n heartbeatEndpoint,\n setStateEndpoint,\n subscribeEndpoint,\n crypto: modules.crypto,\n config: modules.config,\n listenerManager,\n getFileUrl: (params) => getFileUrlFunction(modules, params),\n });\n\n this.addListener = listenerManager.addListener.bind(listenerManager);\n this.removeListener = listenerManager.removeListener.bind(listenerManager);\n this.removeAllListeners = listenerManager.removeAllListeners.bind(listenerManager);\n\n this.parseToken = tokenManager.parseToken.bind(tokenManager);\n this.setToken = tokenManager.setToken.bind(tokenManager);\n this.getToken = tokenManager.getToken.bind(tokenManager);\n\n /* channel groups */\n this.channelGroups = {\n listGroups: endpointCreator.bind(this, modules, listChannelGroupsConfig),\n listChannels: endpointCreator.bind(this, modules, listChannelsInChannelGroupConfig),\n addChannels: endpointCreator.bind(this, modules, addChannelsChannelGroupConfig),\n removeChannels: endpointCreator.bind(this, modules, removeChannelsChannelGroupConfig),\n deleteGroup: endpointCreator.bind(this, modules, deleteChannelGroupConfig),\n };\n /* push */\n this.push = {\n addChannels: endpointCreator.bind(this, modules, addPushChannelsConfig),\n removeChannels: endpointCreator.bind(this, modules, removePushChannelsConfig),\n deleteDevice: endpointCreator.bind(this, modules, removeDevicePushConfig),\n listChannels: endpointCreator.bind(this, modules, listPushChannelsConfig),\n };\n /* presence */\n this.hereNow = endpointCreator.bind(this, modules, presenceHereNowConfig);\n this.whereNow = endpointCreator.bind(this, modules, presenceWhereNowEndpointConfig);\n this.getState = endpointCreator.bind(this, modules, presenceGetStateConfig);\n this.setState = subscriptionManager.adaptStateChange.bind(subscriptionManager);\n /* PAM */\n this.grant = endpointCreator.bind(this, modules, grantEndpointConfig);\n this.grantToken = endpointCreator.bind(this, modules, grantTokenEndpointConfig);\n this.audit = endpointCreator.bind(this, modules, auditEndpointConfig);\n this.revokeToken = endpointCreator.bind(this, modules, revokeTokenEndpointConfig);\n //\n this.publish = endpointCreator.bind(this, modules, publishEndpointConfig);\n\n this.fire = (args, callback) => {\n args.replicate = false;\n args.storeInHistory = false;\n return this.publish(args, callback);\n };\n\n this.signal = endpointCreator.bind(this, modules, signalEndpointConfig);\n\n this.history = endpointCreator.bind(this, modules, historyEndpointConfig);\n this.deleteMessages = endpointCreator.bind(this, modules, deleteMessagesEndpointConfig);\n this.messageCounts = endpointCreator.bind(this, modules, messageCountsEndpointConfig);\n this.fetchMessages = endpointCreator.bind(this, modules, fetchMessagesEndpointConfig);\n\n // Actions API\n\n this.addMessageAction = endpointCreator.bind(this, modules, addMessageActionEndpointConfig);\n\n this.removeMessageAction = endpointCreator.bind(this, modules, removeMessageActionEndpointConfig);\n\n this.getMessageActions = endpointCreator.bind(this, modules, getMessageActionEndpointConfig);\n\n // File Upload API v1\n\n this.listFiles = endpointCreator.bind(this, modules, listFilesEndpointConfig);\n\n const generateUploadUrl = endpointCreator.bind(this, modules, generateUploadUrlEndpointConfig);\n this.publishFile = endpointCreator.bind(this, modules, publishFileEndpointConfig);\n\n this.sendFile = sendFileFunction({\n generateUploadUrl,\n publishFile: this.publishFile,\n modules,\n });\n\n this.getFileUrl = (params) => getFileUrlFunction(modules, params);\n\n this.downloadFile = endpointCreator.bind(this, modules, downloadFileEndpointConfig);\n\n this.deleteFile = endpointCreator.bind(this, modules, deleteFileEndpointConfig);\n\n // Objects API v2\n\n this.objects = {\n getAllUUIDMetadata: endpointCreator.bind(this, modules, getAllUUIDMetadataEndpointConfig),\n getUUIDMetadata: endpointCreator.bind(this, modules, getUUIDMetadataEndpointConfig),\n setUUIDMetadata: endpointCreator.bind(this, modules, setUUIDMetadataEndpointConfig),\n removeUUIDMetadata: endpointCreator.bind(this, modules, removeUUIDMetadataEndpointConfig),\n\n getAllChannelMetadata: endpointCreator.bind(this, modules, getAllChannelMetadataEndpointConfig),\n getChannelMetadata: endpointCreator.bind(this, modules, getChannelMetadataEndpointConfig),\n setChannelMetadata: endpointCreator.bind(this, modules, setChannelMetadataEndpointConfig),\n removeChannelMetadata: endpointCreator.bind(this, modules, removeChannelMetadataEndpointConfig),\n\n getChannelMembers: endpointCreator.bind(this, modules, getMembersV2EndpointConfig),\n setChannelMembers: (parameters: $Diff, ...rest) =>\n endpointCreator.call(\n this,\n modules,\n setMembersV2EndpointConfig,\n {\n type: 'set',\n ...parameters,\n },\n ...rest\n ),\n removeChannelMembers: (parameters: $Diff, ...rest) =>\n endpointCreator.call(\n this,\n modules,\n setMembersV2EndpointConfig,\n {\n type: 'delete',\n ...parameters,\n },\n ...rest\n ),\n\n getMemberships: endpointCreator.bind(this, modules, getMembershipsV2EndpointConfig),\n setMemberships: (parameters: $Diff, ...rest) =>\n endpointCreator.call(\n this,\n modules,\n setMembershipsV2EndpointConfig,\n {\n type: 'set',\n ...parameters,\n },\n ...rest\n ),\n removeMemberships: (parameters: $Diff, ...rest) =>\n endpointCreator.call(\n this,\n modules,\n setMembershipsV2EndpointConfig,\n {\n type: 'delete',\n ...parameters,\n },\n ...rest\n ),\n };\n\n // Objects API\n\n this.createUser = deprecated(endpointCreator.bind(this, modules, createUserEndpointConfig));\n\n this.updateUser = deprecated(endpointCreator.bind(this, modules, updateUserEndpointConfig));\n\n this.deleteUser = deprecated(endpointCreator.bind(this, modules, deleteUserEndpointConfig));\n\n this.getUser = deprecated(endpointCreator.bind(this, modules, getUserEndpointConfig));\n\n this.getUsers = deprecated(endpointCreator.bind(this, modules, getUsersEndpointConfig));\n\n this.createSpace = deprecated(endpointCreator.bind(this, modules, createSpaceEndpointConfig));\n\n this.updateSpace = deprecated(endpointCreator.bind(this, modules, updateSpaceEndpointConfig));\n\n this.deleteSpace = deprecated(endpointCreator.bind(this, modules, deleteSpaceEndpointConfig));\n\n this.getSpaces = deprecated(endpointCreator.bind(this, modules, getSpacesEndpointConfig));\n\n this.getSpace = deprecated(endpointCreator.bind(this, modules, getSpaceEndpointConfig));\n\n this.addMembers = deprecated(endpointCreator.bind(this, modules, addMembersEndpointConfig));\n\n this.updateMembers = deprecated(endpointCreator.bind(this, modules, updateMembersEndpointConfig));\n\n this.removeMembers = deprecated(endpointCreator.bind(this, modules, removeMembersEndpointConfig));\n\n this.getMembers = deprecated(endpointCreator.bind(this, modules, getMembersEndpointConfig));\n\n this.getMemberships = deprecated(endpointCreator.bind(this, modules, getMembershipsEndpointConfig));\n\n this.joinSpaces = deprecated(endpointCreator.bind(this, modules, joinSpacesEndpointConfig));\n\n this.updateMemberships = deprecated(endpointCreator.bind(this, modules, updateMembershipsEndpointConfig));\n\n this.leaveSpaces = deprecated(endpointCreator.bind(this, modules, leaveSpacesEndpointConfig));\n\n this.time = timeEndpoint;\n\n // subscription related methods\n this.subscribe = subscriptionManager.adaptSubscribeChange.bind(subscriptionManager);\n this.presence = subscriptionManager.adaptPresenceChange.bind(subscriptionManager);\n this.unsubscribe = subscriptionManager.adaptUnsubscribeChange.bind(subscriptionManager);\n this.disconnect = subscriptionManager.disconnect.bind(subscriptionManager);\n this.reconnect = subscriptionManager.reconnect.bind(subscriptionManager);\n\n this.destroy = (isOffline: boolean) => {\n subscriptionManager.unsubscribeAll(isOffline);\n subscriptionManager.disconnect();\n };\n\n // --- deprecated ------------------\n this.stop = this.destroy; // --------\n // --- deprecated ------------------\n\n this.unsubscribeAll = subscriptionManager.unsubscribeAll.bind(subscriptionManager);\n\n this.getSubscribedChannels = subscriptionManager.getSubscribedChannels.bind(subscriptionManager);\n this.getSubscribedChannelGroups = subscriptionManager.getSubscribedChannelGroups.bind(subscriptionManager);\n\n // mount crypto\n this.encrypt = crypto.encrypt.bind(crypto);\n this.decrypt = crypto.decrypt.bind(crypto);\n\n /* config */\n this.getAuthKey = modules.config.getAuthKey.bind(modules.config);\n this.setAuthKey = modules.config.setAuthKey.bind(modules.config);\n this.setCipherKey = modules.config.setCipherKey.bind(modules.config);\n this.getUUID = modules.config.getUUID.bind(modules.config);\n this.setUUID = modules.config.setUUID.bind(modules.config);\n this.getFilterExpression = modules.config.getFilterExpression.bind(modules.config);\n this.setFilterExpression = modules.config.setFilterExpression.bind(modules.config);\n\n this.setHeartbeatInterval = modules.config.setHeartbeatInterval.bind(modules.config);\n\n if (networking.hasModule('proxy')) {\n this.setProxy = (proxy) => {\n modules.config.setProxy(proxy);\n this.reconnect();\n };\n }\n }\n\n getVersion(): string {\n return this._config.getVersion();\n }\n\n _addPnsdkSuffix(name: string, suffix: string) {\n this._config._addPnsdkSuffix(name, suffix);\n }\n\n // network hooks to indicate network changes\n networkDownDetected() {\n this._listenerManager.announceNetworkDown();\n\n if (this._config.restore) {\n this.disconnect();\n } else {\n this.destroy(true);\n }\n }\n\n networkUpDetected() {\n this._listenerManager.announceNetworkUp();\n this.reconnect();\n }\n\n static notificationPayload(title: ?string, body: ?string): NotificationsPayload {\n return new NotificationsPayload(title, body);\n }\n\n static generateUUID(): string {\n return uuidGenerator.createUUID();\n }\n\n static OPERATIONS = OPERATIONS;\n static CATEGORIES = CATEGORIES;\n}\n"],"file":"pubnub-common.js"} \ No newline at end of file diff --git a/lib/crypto/modules/node.js b/lib/crypto/modules/node.js index 672544cee..a7e4104e9 100644 --- a/lib/crypto/modules/node.js +++ b/lib/crypto/modules/node.js @@ -27,6 +27,11 @@ var NodeCryptography = function () { } (0, _createClass2["default"])(NodeCryptography, [{ + key: "algo", + get: function get() { + return 'aes-256-cbc'; + } + }, { key: "encrypt", value: function () { var _encrypt = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(key, input) { @@ -355,11 +360,6 @@ var NodeCryptography = function () { }); return output; } - }, { - key: "algo", - get: function get() { - return 'aes-256-cbc'; - } }]); return NodeCryptography; }(); diff --git a/lib/crypto/modules/node.js.map b/lib/crypto/modules/node.js.map index b888a9b51..a1feb294b 100644 --- a/lib/crypto/modules/node.js.map +++ b/lib/crypto/modules/node.js.map @@ -1 +1 @@ -{"version":3,"sources":["crypto/modules/node.js"],"names":["NodeCryptography","key","input","bKey","getKey","Buffer","encryptBuffer","Readable","encryptStream","encryptString","Error","decryptBuffer","decryptStream","decryptString","file","File","data","name","mimeType","create","stream","sha","update","from","digest","slice","IV_LENGTH","plaintext","bIv","getIv","bPlaintext","aes","algo","concat","toString","sCiphertext","ciphertext","bCiphertext","output","PassThrough","write","pipe","alloc","read","bChunk","sliceLen","byteLength","on","end"],"mappings":"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","sourcesContent":["/** @flow */\nimport { Readable, PassThrough } from 'stream';\nimport { createCipheriv, createDecipheriv, createHash, randomBytes } from 'crypto';\n\nimport type { ICryptography } from '../';\nimport type { IFile, FileClass } from '../../file';\n\nexport default class NodeCryptography implements ICryptography {\n static IV_LENGTH = 16;\n\n get algo() {\n return 'aes-256-cbc';\n }\n\n async encrypt(key: string, input: Buffer | Readable | string): Promise {\n const bKey = this.getKey(key);\n if (input instanceof Buffer) {\n return this.encryptBuffer(bKey, input);\n } else if (input instanceof Readable) {\n return this.encryptStream(bKey, input);\n } else if (typeof input === 'string') {\n return this.encryptString(bKey, input);\n } else {\n throw new Error('Unsupported input format');\n }\n }\n\n async decrypt(key: string, input: Buffer | Readable | string): Promise {\n const bKey = this.getKey(key);\n if (input instanceof Buffer) {\n return this.decryptBuffer(bKey, input);\n } else if (input instanceof Readable) {\n return this.decryptStream(bKey, input);\n } else if (typeof input === 'string') {\n return this.decryptString(bKey, input);\n } else {\n throw new Error('Unsupported input format');\n }\n }\n\n async encryptFile(key: string, file: IFile, File: FileClass): Promise {\n const bKey = this.getKey(key);\n\n if (file.data instanceof Buffer) {\n return File.create({\n name: file.name,\n mimeType: 'application/octet-stream',\n data: await this.encryptBuffer(bKey, file.data),\n });\n } else if (file.data instanceof Readable) {\n return File.create({\n name: file.name,\n mimeType: 'application/octet-stream',\n stream: await this.encryptStream(bKey, file.data),\n });\n } else {\n throw new Error('Cannot encrypt this file. In Node.js file encryption supports only string, Buffer or Stream.');\n }\n }\n\n async decryptFile(key: string, file: IFile, File: FileClass): Promise {\n const bKey = this.getKey(key);\n\n if (file.data instanceof Buffer) {\n return File.create({\n name: file.name,\n data: await this.decryptBuffer(bKey, file.data),\n });\n } else if (file.data instanceof Readable) {\n return File.create({\n name: file.name,\n stream: await this.decryptStream(bKey, file.data),\n });\n } else {\n throw new Error('Cannot decrypt this file. In Node.js file decryption supports only string, Buffer or Stream.');\n }\n }\n\n getKey(key: string): Buffer {\n const sha = createHash('sha256');\n\n sha.update(Buffer.from(key, 'utf8'));\n\n return Buffer.from(sha.digest('hex').slice(0, 32), 'utf8');\n }\n\n getIv(): Buffer {\n return randomBytes(NodeCryptography.IV_LENGTH);\n }\n\n encryptString(key: Buffer, plaintext: string): string {\n const bIv = this.getIv();\n\n const bPlaintext = Buffer.from(plaintext);\n\n const aes = createCipheriv(this.algo, key, bIv);\n\n return Buffer.concat([bIv, aes.update(bPlaintext), aes.final()]).toString('utf8');\n }\n\n decryptString(key: Buffer, sCiphertext: string): string {\n const ciphertext = Buffer.from(sCiphertext);\n const bIv = ciphertext.slice(0, NodeCryptography.IV_LENGTH);\n const bCiphertext = ciphertext.slice(NodeCryptography.IV_LENGTH);\n\n const aes = createDecipheriv(this.algo, key, bIv);\n\n return Buffer.concat([aes.update(bCiphertext), aes.final()]).toString('utf8');\n }\n\n encryptBuffer(key: Buffer, plaintext: Buffer): Buffer {\n const bIv = this.getIv();\n\n const aes = createCipheriv(this.algo, key, bIv);\n\n return Buffer.concat([bIv, aes.update(plaintext), aes.final()]);\n }\n\n decryptBuffer(key: Buffer, ciphertext: Buffer): Buffer {\n const bIv = ciphertext.slice(0, NodeCryptography.IV_LENGTH);\n const bCiphertext = ciphertext.slice(NodeCryptography.IV_LENGTH);\n\n const aes = createDecipheriv(this.algo, key, bIv);\n\n return Buffer.concat([aes.update(bCiphertext), aes.final()]);\n }\n\n encryptStream(key: Buffer, stream: Readable): Readable {\n const output = new PassThrough();\n const bIv = this.getIv();\n\n const aes = createCipheriv(this.algo, key, bIv);\n\n output.write(bIv);\n stream.pipe(aes).pipe(output);\n\n return output;\n }\n\n decryptStream(key: Buffer, stream: Readable): Readable {\n const output = new PassThrough();\n\n let bIv = Buffer.alloc(0);\n let aes = null;\n\n const getIv = () => {\n let data = stream.read();\n\n while (data !== null) {\n if (data) {\n let bChunk = Buffer.from(data);\n let sliceLen = NodeCryptography.IV_LENGTH - bIv.byteLength;\n\n if (bChunk.byteLength < sliceLen) {\n bIv = Buffer.concat([bIv, bChunk]);\n } else {\n bIv = Buffer.concat([bIv, bChunk.slice(0, sliceLen)]);\n\n aes = createDecipheriv(this.algo, key, bIv);\n\n aes.pipe(output);\n\n aes.write(bChunk.slice(sliceLen));\n }\n }\n\n data = stream.read();\n }\n };\n\n stream.on('readable', getIv);\n\n stream.on('end', () => {\n if (aes) {\n aes.end();\n }\n\n output.end();\n });\n\n return output;\n }\n}\n"],"file":"node.js"} \ No newline at end of file +{"version":3,"sources":["crypto/modules/node.js"],"names":["NodeCryptography","key","input","bKey","getKey","Buffer","encryptBuffer","Readable","encryptStream","encryptString","Error","decryptBuffer","decryptStream","decryptString","file","File","data","name","mimeType","create","stream","sha","update","from","digest","slice","IV_LENGTH","plaintext","bIv","getIv","bPlaintext","aes","algo","concat","toString","sCiphertext","ciphertext","bCiphertext","output","PassThrough","write","pipe","alloc","read","bChunk","sliceLen","byteLength","on","end"],"mappings":"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","sourcesContent":["/** @flow */\nimport { Readable, PassThrough } from 'stream';\nimport { createCipheriv, createDecipheriv, createHash, randomBytes } from 'crypto';\n\nimport type { ICryptography } from '../';\nimport type { IFile, FileClass } from '../../file';\n\nexport default class NodeCryptography implements ICryptography {\n static IV_LENGTH = 16;\n\n get algo() {\n return 'aes-256-cbc';\n }\n\n async encrypt(key: string, input: Buffer | Readable | string): Promise {\n const bKey = this.getKey(key);\n if (input instanceof Buffer) {\n return this.encryptBuffer(bKey, input);\n } else if (input instanceof Readable) {\n return this.encryptStream(bKey, input);\n } else if (typeof input === 'string') {\n return this.encryptString(bKey, input);\n } else {\n throw new Error('Unsupported input format');\n }\n }\n\n async decrypt(key: string, input: Buffer | Readable | string): Promise {\n const bKey = this.getKey(key);\n if (input instanceof Buffer) {\n return this.decryptBuffer(bKey, input);\n } else if (input instanceof Readable) {\n return this.decryptStream(bKey, input);\n } else if (typeof input === 'string') {\n return this.decryptString(bKey, input);\n } else {\n throw new Error('Unsupported input format');\n }\n }\n\n async encryptFile(key: string, file: IFile, File: FileClass): Promise {\n const bKey = this.getKey(key);\n\n if (file.data instanceof Buffer) {\n return File.create({\n name: file.name,\n mimeType: 'application/octet-stream',\n data: await this.encryptBuffer(bKey, file.data),\n });\n } else if (file.data instanceof Readable) {\n return File.create({\n name: file.name,\n mimeType: 'application/octet-stream',\n stream: await this.encryptStream(bKey, file.data),\n });\n } else {\n throw new Error('Cannot encrypt this file. In Node.js file encryption supports only string, Buffer or Stream.');\n }\n }\n\n async decryptFile(key: string, file: IFile, File: FileClass): Promise {\n const bKey = this.getKey(key);\n\n if (file.data instanceof Buffer) {\n return File.create({\n name: file.name,\n data: await this.decryptBuffer(bKey, file.data),\n });\n } else if (file.data instanceof Readable) {\n return File.create({\n name: file.name,\n stream: await this.decryptStream(bKey, file.data),\n });\n } else {\n throw new Error('Cannot decrypt this file. In Node.js file decryption supports only string, Buffer or Stream.');\n }\n }\n\n getKey(key: string): Buffer {\n const sha = createHash('sha256');\n\n sha.update(Buffer.from(key, 'utf8'));\n\n return Buffer.from(sha.digest('hex').slice(0, 32), 'utf8');\n }\n\n getIv(): Buffer {\n return randomBytes(NodeCryptography.IV_LENGTH);\n }\n\n encryptString(key: Buffer, plaintext: string): string {\n const bIv = this.getIv();\n\n const bPlaintext = Buffer.from(plaintext);\n\n const aes = createCipheriv(this.algo, key, bIv);\n\n return Buffer.concat([bIv, aes.update(bPlaintext), aes.final()]).toString('utf8');\n }\n\n decryptString(key: Buffer, sCiphertext: string): string {\n const ciphertext = Buffer.from(sCiphertext);\n const bIv = ciphertext.slice(0, NodeCryptography.IV_LENGTH);\n const bCiphertext = ciphertext.slice(NodeCryptography.IV_LENGTH);\n\n const aes = createDecipheriv(this.algo, key, bIv);\n\n return Buffer.concat([aes.update(bCiphertext), aes.final()]).toString('utf8');\n }\n\n encryptBuffer(key: Buffer, plaintext: Buffer): Buffer {\n const bIv = this.getIv();\n\n const aes = createCipheriv(this.algo, key, bIv);\n\n return Buffer.concat([bIv, aes.update(plaintext), aes.final()]);\n }\n\n decryptBuffer(key: Buffer, ciphertext: Buffer): Buffer {\n const bIv = ciphertext.slice(0, NodeCryptography.IV_LENGTH);\n const bCiphertext = ciphertext.slice(NodeCryptography.IV_LENGTH);\n\n const aes = createDecipheriv(this.algo, key, bIv);\n\n return Buffer.concat([aes.update(bCiphertext), aes.final()]);\n }\n\n encryptStream(key: Buffer, stream: Readable): Readable {\n const output = new PassThrough();\n const bIv = this.getIv();\n\n const aes = createCipheriv(this.algo, key, bIv);\n\n output.write(bIv);\n stream.pipe(aes).pipe(output);\n\n return output;\n }\n\n decryptStream(key: Buffer, stream: Readable): Readable {\n const output = new PassThrough();\n\n let bIv = Buffer.alloc(0);\n let aes = null;\n\n const getIv = () => {\n let data = stream.read();\n\n while (data !== null) {\n if (data) {\n let bChunk = Buffer.from(data);\n let sliceLen = NodeCryptography.IV_LENGTH - bIv.byteLength;\n\n if (bChunk.byteLength < sliceLen) {\n bIv = Buffer.concat([bIv, bChunk]);\n } else {\n bIv = Buffer.concat([bIv, bChunk.slice(0, sliceLen)]);\n\n aes = createDecipheriv(this.algo, key, bIv);\n\n aes.pipe(output);\n\n aes.write(bChunk.slice(sliceLen));\n }\n }\n\n data = stream.read();\n }\n };\n\n stream.on('readable', getIv);\n\n stream.on('end', () => {\n if (aes) {\n aes.end();\n }\n\n output.end();\n });\n\n return output;\n }\n}\n"],"file":"node.js"} \ No newline at end of file diff --git a/lib/crypto/modules/web.js b/lib/crypto/modules/web.js index 3140a3e47..4f81fe65c 100644 --- a/lib/crypto/modules/web.js +++ b/lib/crypto/modules/web.js @@ -17,8 +17,6 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); -var _isomorphicWebcrypto = _interopRequireDefault(require("isomorphic-webcrypto")); - function concatArrayBuffer(ab1, ab2) { var tmp = new Uint8Array(ab1.byteLength + ab2.byteLength); tmp.set(new Uint8Array(ab1), 0); @@ -32,6 +30,11 @@ var WebCryptography = function () { } (0, _createClass2["default"])(WebCryptography, [{ + key: "algo", + get: function get() { + return 'aes-256-cbc'; + } + }, { key: "encrypt", value: function () { var _encrypt = (0, _asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(key, input) { @@ -193,21 +196,12 @@ var WebCryptography = function () { case 8: abPlaindata = _context4.sent; - - if (!(file.data instanceof ArrayBuffer)) { - _context4.next = 13; - break; - } - return _context4.abrupt("return", File.create({ name: file.name, data: abPlaindata })); - case 13: - throw new Error('Cannot decrypt this file. In browser environment file decryption supports only ArrayBuffer.'); - - case 14: + case 10: case "end": return _context4.stop(); } @@ -232,12 +226,12 @@ var WebCryptography = function () { case 0: bKey = Buffer.from(key); _context5.next = 3; - return _isomorphicWebcrypto["default"].subtle.digest('SHA-256', bKey.buffer); + return crypto.subtle.digest('SHA-256', bKey.buffer); case 3: abHash = _context5.sent; abKey = Buffer.from(Buffer.from(abHash).toString('hex').slice(0, 32), 'utf8').buffer; - return _context5.abrupt("return", _isomorphicWebcrypto["default"].subtle.importKey('raw', abKey, 'AES-CBC', true, ['encrypt', 'decrypt'])); + return _context5.abrupt("return", crypto.subtle.importKey('raw', abKey, 'AES-CBC', true, ['encrypt', 'decrypt'])); case 6: case "end": @@ -262,11 +256,11 @@ var WebCryptography = function () { while (1) { switch (_context6.prev = _context6.next) { case 0: - abIv = _isomorphicWebcrypto["default"].getRandomValues(new Uint8Array(16)); + abIv = crypto.getRandomValues(new Uint8Array(16)); _context6.t0 = concatArrayBuffer; _context6.t1 = abIv.buffer; _context6.next = 5; - return _isomorphicWebcrypto["default"].subtle.encrypt({ + return crypto.subtle.encrypt({ name: 'AES-CBC', iv: abIv }, key, plaintext); @@ -299,7 +293,7 @@ var WebCryptography = function () { switch (_context7.prev = _context7.next) { case 0: abIv = ciphertext.slice(0, 16); - return _context7.abrupt("return", _isomorphicWebcrypto["default"].subtle.decrypt({ + return _context7.abrupt("return", crypto.subtle.decrypt({ name: 'AES-CBC', iv: abIv }, key, ciphertext.slice(16))); @@ -327,10 +321,10 @@ var WebCryptography = function () { while (1) { switch (_context8.prev = _context8.next) { case 0: - abIv = _isomorphicWebcrypto["default"].getRandomValues(new Uint8Array(16)); + abIv = crypto.getRandomValues(new Uint8Array(16)); abPlaintext = Buffer.from(plaintext).buffer; _context8.next = 4; - return _isomorphicWebcrypto["default"].subtle.encrypt({ + return crypto.subtle.encrypt({ name: 'AES-CBC', iv: abIv }, key, abPlaintext); @@ -367,7 +361,7 @@ var WebCryptography = function () { abIv = abCiphertext.slice(0, 16); abPayload = abCiphertext.slice(16); _context9.next = 5; - return _isomorphicWebcrypto["default"].subtle.decrypt({ + return crypto.subtle.decrypt({ name: 'AES-CBC', iv: abIv }, key, abPayload); @@ -390,11 +384,6 @@ var WebCryptography = function () { return decryptString; }() - }, { - key: "algo", - get: function get() { - return 'aes-256-cbc'; - } }]); return WebCryptography; }(); diff --git a/lib/crypto/modules/web.js.map b/lib/crypto/modules/web.js.map index deb01e174..4ee660ef9 100644 --- a/lib/crypto/modules/web.js.map +++ b/lib/crypto/modules/web.js.map @@ -1 +1 @@ -{"version":3,"sources":["crypto/modules/web.js"],"names":["concatArrayBuffer","ab1","ab2","tmp","Uint8Array","byteLength","set","buffer","WebCryptography","key","input","getKey","cKey","ArrayBuffer","encryptArrayBuffer","encryptString","Error","decryptArrayBuffer","decryptString","file","File","bKey","toArrayBuffer","abPlaindata","abCipherdata","create","name","mimeType","data","Buffer","from","crypto","subtle","digest","abHash","abKey","toString","slice","importKey","plaintext","abIv","getRandomValues","encrypt","iv","ciphertext","decrypt","abPlaintext","abPayload","abCiphertext"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport crypto, { type $CryptoKey } from 'isomorphic-webcrypto';\n\nimport type { ICryptography } from '../';\nimport type { IFile, FileClass } from '../../file';\n\nfunction concatArrayBuffer(ab1: ArrayBuffer, ab2: ArrayBuffer): ArrayBuffer {\n const tmp = new Uint8Array(ab1.byteLength + ab2.byteLength);\n\n tmp.set(new Uint8Array(ab1), 0);\n tmp.set(new Uint8Array(ab2), ab1.byteLength);\n\n return tmp.buffer;\n}\n\nexport default class WebCryptography implements ICryptography {\n static IV_LENGTH = 16;\n\n get algo() {\n return 'aes-256-cbc';\n }\n\n async encrypt(key: string, input: ArrayBuffer | string): Promise {\n const cKey = await this.getKey(key);\n\n if (input instanceof ArrayBuffer) {\n return this.encryptArrayBuffer(cKey, input);\n } else if (typeof input === 'string') {\n return this.encryptString(cKey, input);\n } else {\n throw new Error('Cannot encrypt this file. In browsers file encryption supports only string or ArrayBuffer');\n }\n }\n\n async decrypt(key: string, input: ArrayBuffer | string): Promise {\n const cKey = await this.getKey(key);\n\n if (input instanceof ArrayBuffer) {\n return this.decryptArrayBuffer(cKey, input);\n } else if (typeof input === 'string') {\n return this.decryptString(cKey, input);\n } else {\n throw new Error('Cannot decrypt this file. In browsers file decryption supports only string or ArrayBuffer');\n }\n }\n\n async encryptFile(key: string, file: IFile, File: FileClass): Promise {\n const bKey = await this.getKey(key);\n\n const abPlaindata = await file.toArrayBuffer();\n\n const abCipherdata = await this.encryptArrayBuffer(bKey, abPlaindata);\n\n return File.create({\n name: file.name,\n mimeType: 'application/octet-stream',\n data: abCipherdata,\n });\n }\n\n async decryptFile(key: string, file: IFile, File: FileClass): Promise {\n const bKey = await this.getKey(key);\n\n const abCipherdata = await file.toArrayBuffer();\n\n const abPlaindata = await this.decryptArrayBuffer(bKey, abCipherdata);\n\n if (file.data instanceof ArrayBuffer) {\n return File.create({\n name: file.name,\n data: abPlaindata,\n });\n } else {\n throw new Error('Cannot decrypt this file. In browser environment file decryption supports only ArrayBuffer.');\n }\n }\n\n async getKey(key: string): Promise<$CryptoKey> {\n const bKey = Buffer.from(key);\n const abHash = await crypto.subtle.digest('SHA-256', bKey.buffer);\n\n const abKey = Buffer.from(Buffer.from(abHash).toString('hex').slice(0, 32), 'utf8').buffer;\n\n return crypto.subtle.importKey('raw', abKey, 'AES-CBC', true, ['encrypt', 'decrypt']);\n }\n\n async encryptArrayBuffer(key: $CryptoKey, plaintext: ArrayBuffer) {\n const abIv = crypto.getRandomValues(new Uint8Array(16));\n\n return concatArrayBuffer(abIv.buffer, await crypto.subtle.encrypt({ name: 'AES-CBC', iv: abIv }, key, plaintext));\n }\n\n async decryptArrayBuffer(key: $CryptoKey, ciphertext: ArrayBuffer) {\n const abIv = ciphertext.slice(0, 16);\n\n return crypto.subtle.decrypt({ name: 'AES-CBC', iv: abIv }, key, ciphertext.slice(16));\n }\n\n async encryptString(key: $CryptoKey, plaintext: string) {\n const abIv = crypto.getRandomValues(new Uint8Array(16));\n\n const abPlaintext = Buffer.from(plaintext).buffer;\n const abPayload = await crypto.subtle.encrypt({ name: 'AES-CBC', iv: abIv }, key, abPlaintext);\n\n const ciphertext = concatArrayBuffer(abIv.buffer, abPayload);\n\n return Buffer.from(ciphertext).toString('utf8');\n }\n\n async decryptString(key: $CryptoKey, ciphertext: string) {\n const abCiphertext = Buffer.from(ciphertext);\n const abIv = abCiphertext.slice(0, 16);\n const abPayload = abCiphertext.slice(16);\n\n const abPlaintext = await crypto.subtle.decrypt({ name: 'AES-CBC', iv: abIv }, key, abPayload);\n\n return Buffer.from(abPlaintext).toString('utf8');\n }\n}\n"],"file":"web.js"} \ No newline at end of file +{"version":3,"sources":["crypto/modules/web.js"],"names":["concatArrayBuffer","ab1","ab2","tmp","Uint8Array","byteLength","set","buffer","WebCryptography","key","input","getKey","cKey","ArrayBuffer","encryptArrayBuffer","encryptString","Error","decryptArrayBuffer","decryptString","file","File","bKey","toArrayBuffer","abPlaindata","abCipherdata","create","name","mimeType","data","Buffer","from","crypto","subtle","digest","abHash","abKey","toString","slice","importKey","plaintext","abIv","getRandomValues","encrypt","iv","ciphertext","decrypt","abPlaintext","abPayload","abCiphertext"],"mappings":"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","sourcesContent":["/** @flow */\nimport type { ICryptography } from '../';\nimport type { IFile, FileClass } from '../../file';\n\n// This version of flow doesn't know about the Web Crypto API\ndeclare var crypto: any;\n\nfunction concatArrayBuffer(ab1: ArrayBuffer, ab2: ArrayBuffer): ArrayBuffer {\n const tmp = new Uint8Array(ab1.byteLength + ab2.byteLength);\n\n tmp.set(new Uint8Array(ab1), 0);\n tmp.set(new Uint8Array(ab2), ab1.byteLength);\n\n return tmp.buffer;\n}\n\nexport default class WebCryptography implements ICryptography {\n static IV_LENGTH = 16;\n\n get algo() {\n return 'aes-256-cbc';\n }\n\n async encrypt(key: string, input: ArrayBuffer | string): Promise {\n const cKey = await this.getKey(key);\n\n if (input instanceof ArrayBuffer) {\n return this.encryptArrayBuffer(cKey, input);\n } else if (typeof input === 'string') {\n return this.encryptString(cKey, input);\n } else {\n throw new Error('Cannot encrypt this file. In browsers file encryption supports only string or ArrayBuffer');\n }\n }\n\n async decrypt(key: string, input: ArrayBuffer | string): Promise {\n const cKey = await this.getKey(key);\n\n if (input instanceof ArrayBuffer) {\n return this.decryptArrayBuffer(cKey, input);\n } else if (typeof input === 'string') {\n return this.decryptString(cKey, input);\n } else {\n throw new Error('Cannot decrypt this file. In browsers file decryption supports only string or ArrayBuffer');\n }\n }\n\n async encryptFile(key: string, file: IFile, File: FileClass): Promise {\n const bKey = await this.getKey(key);\n\n const abPlaindata = await file.toArrayBuffer();\n\n const abCipherdata = await this.encryptArrayBuffer(bKey, abPlaindata);\n\n return File.create({\n name: file.name,\n mimeType: 'application/octet-stream',\n data: abCipherdata,\n });\n }\n\n async decryptFile(key: string, file: IFile, File: FileClass): Promise {\n const bKey = await this.getKey(key);\n\n const abCipherdata = await file.toArrayBuffer();\n\n const abPlaindata = await this.decryptArrayBuffer(bKey, abCipherdata);\n\n return File.create({\n name: file.name,\n data: abPlaindata,\n });\n }\n\n async getKey(key: string): Promise {\n const bKey = Buffer.from(key);\n const abHash = await crypto.subtle.digest('SHA-256', bKey.buffer);\n\n const abKey = Buffer.from(Buffer.from(abHash).toString('hex').slice(0, 32), 'utf8').buffer;\n\n return crypto.subtle.importKey('raw', abKey, 'AES-CBC', true, ['encrypt', 'decrypt']);\n }\n\n async encryptArrayBuffer(key: any, plaintext: ArrayBuffer) {\n const abIv = crypto.getRandomValues(new Uint8Array(16));\n\n return concatArrayBuffer(abIv.buffer, await crypto.subtle.encrypt({ name: 'AES-CBC', iv: abIv }, key, plaintext));\n }\n\n async decryptArrayBuffer(key: any, ciphertext: ArrayBuffer) {\n const abIv = ciphertext.slice(0, 16);\n\n return crypto.subtle.decrypt({ name: 'AES-CBC', iv: abIv }, key, ciphertext.slice(16));\n }\n\n async encryptString(key: any, plaintext: string) {\n const abIv = crypto.getRandomValues(new Uint8Array(16));\n\n const abPlaintext = Buffer.from(plaintext).buffer;\n const abPayload = await crypto.subtle.encrypt({ name: 'AES-CBC', iv: abIv }, key, abPlaintext);\n\n const ciphertext = concatArrayBuffer(abIv.buffer, abPayload);\n\n return Buffer.from(ciphertext).toString('utf8');\n }\n\n async decryptString(key: any, ciphertext: string) {\n const abCiphertext = Buffer.from(ciphertext);\n const abIv = abCiphertext.slice(0, 16);\n const abPayload = abCiphertext.slice(16);\n\n const abPlaintext = await crypto.subtle.decrypt({ name: 'AES-CBC', iv: abIv }, key, abPayload);\n\n return Buffer.from(abPlaintext).toString('utf8');\n }\n}\n"],"file":"web.js"} \ No newline at end of file diff --git a/lib/db/common.js.map b/lib/db/common.js.map index b46eac659..38e01f6b2 100644 --- a/lib/db/common.js.map +++ b/lib/db/common.js.map @@ -1 +1 @@ -{"version":3,"sources":["db/common.js"],"names":["storage","key","value"],"mappings":";;;;;;;;;;;;;;;;AAGE,sBAAc;AAAA;AAAA;AACZ,SAAKA,OAAL,GAAe,EAAf;AACD;;;;wBAEGC,G,EAAK;AACP,aAAO,KAAKD,OAAL,CAAaC,GAAb,CAAP;AACD;;;wBAEGA,G,EAAKC,K,EAAO;AACd,WAAKF,OAAL,CAAaC,GAAb,IAAoBC,KAApB;AACD","sourcesContent":["export default class {\n storage: Object;\n\n constructor() {\n this.storage = {};\n }\n\n get(key) {\n return this.storage[key];\n }\n\n set(key, value) {\n this.storage[key] = value;\n }\n}\n"],"file":"common.js"} \ No newline at end of file +{"version":3,"sources":["db/common.js"],"names":["storage","key","value"],"mappings":";;;;;;;;;;;;;;;;AAGE,sBAAc;AAAA;AAAA;AACZ,SAAKA,OAAL,GAAe,EAAf;AACD;;;;WAED,aAAIC,GAAJ,EAAS;AACP,aAAO,KAAKD,OAAL,CAAaC,GAAb,CAAP;AACD;;;WAED,aAAIA,GAAJ,EAASC,KAAT,EAAgB;AACd,WAAKF,OAAL,CAAaC,GAAb,IAAoBC,KAApB;AACD","sourcesContent":["export default class {\n storage: Object;\n\n constructor() {\n this.storage = {};\n }\n\n get(key) {\n return this.storage[key];\n }\n\n set(key, value) {\n this.storage[key] = value;\n }\n}\n"],"file":"common.js"} \ No newline at end of file diff --git a/lib/file/modules/node.js b/lib/file/modules/node.js index 86dedde17..187561a0e 100644 --- a/lib/file/modules/node.js +++ b/lib/file/modules/node.js @@ -28,13 +28,6 @@ var _ = require("../"); var _class, _temp; var PubNubFile = (_temp = _class = function () { - (0, _createClass2["default"])(PubNubFile, null, [{ - key: "create", - value: function create(config) { - return new this(config); - } - }]); - function PubNubFile(_ref) { var stream = _ref.stream, data = _ref.data, @@ -276,6 +269,11 @@ var PubNubFile = (_temp = _class = function () { return toBlob; }() + }], [{ + key: "create", + value: function create(config) { + return new this(config); + } }]); return PubNubFile; }(), (0, _defineProperty2["default"])(_class, "supportsBlob", false), (0, _defineProperty2["default"])(_class, "supportsFile", false), (0, _defineProperty2["default"])(_class, "supportsBuffer", typeof Buffer !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsStream", true), (0, _defineProperty2["default"])(_class, "supportsString", true), (0, _defineProperty2["default"])(_class, "supportsArrayBuffer", false), (0, _defineProperty2["default"])(_class, "supportsEncryptFile", true), (0, _defineProperty2["default"])(_class, "supportsFileUri", false), _temp); diff --git a/lib/file/modules/node.js.map b/lib/file/modules/node.js.map index c72f8d22d..ff3331095 100644 --- a/lib/file/modules/node.js.map +++ b/lib/file/modules/node.js.map @@ -1 +1 @@ -{"version":3,"sources":["file/modules/node.js"],"names":["PubNubFile","config","stream","data","encoding","name","mimeType","Readable","ReadStream","path","Buffer","from","undefined","Error","Promise","resolve","reject","chunks","on","chunk","push","once","concat","toBuffer","buffer","toString","input","read","PassThrough","pipe"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport { Readable, PassThrough } from 'stream';\nimport { ReadStream } from 'fs';\nimport { basename } from 'path';\n\nimport { IFile, FileClass } from '../';\n\ntype PubNubFileNodeConstructor = {|\n stream?: Readable,\n data?: string | Buffer,\n encoding?: string,\n name?: string,\n mimeType?: string,\n|};\n\ntype PubNubFileNodeSupportedInputType = Readable | Buffer | string;\n\nconst PubNubFile: FileClass = class PubNubFile implements IFile {\n static supportsBlob = false;\n static supportsFile = false;\n static supportsBuffer = typeof Buffer !== 'undefined';\n static supportsStream = true;\n static supportsString = true;\n static supportsArrayBuffer = false;\n static supportsEncryptFile = true;\n static supportsFileUri = false;\n\n data: PubNubFileNodeSupportedInputType;\n\n name: string;\n mimeType: string;\n\n static create(config: PubNubFileNodeConstructor) {\n return new this(config);\n }\n\n constructor({ stream, data, encoding, name, mimeType }: PubNubFileNodeConstructor) {\n if (stream instanceof Readable) {\n this.data = stream;\n\n if (stream instanceof ReadStream) {\n // $FlowFixMe: incomplete flow node definitions\n this.name = basename(stream.path);\n }\n } else if (data instanceof Buffer) {\n this.data = Buffer.from(data);\n } else if (typeof data === 'string') {\n // $FlowFixMe: incomplete flow node definitions\n this.data = Buffer.from(data, encoding ?? 'utf8');\n }\n\n if (name) {\n this.name = basename(name);\n }\n\n if (mimeType) {\n this.mimeType = mimeType;\n }\n\n if (this.data === undefined) {\n throw new Error(\"Couldn't construct a file out of supplied options.\");\n }\n\n if (this.name === undefined) {\n throw new Error(\"Couldn't guess filename out of the options. Please provide one.\");\n }\n }\n\n toBuffer(): Promise {\n if (this.data instanceof Buffer) {\n return Promise.resolve(Buffer.from(this.data));\n }\n\n if (this.data instanceof Readable) {\n const stream = this.data;\n return new Promise((resolve, reject) => {\n const chunks = [];\n\n stream.on('data', (chunk) => chunks.push(chunk));\n stream.once('error', reject);\n stream.once('end', () => {\n resolve(Buffer.concat(chunks));\n });\n });\n }\n\n if (typeof this.data === 'string') {\n return Promise.resolve(Buffer.from(this.data));\n }\n\n throw new Error(\"Can't cast to 'buffer'.\");\n }\n\n async toArrayBuffer() {\n throw new Error('This feature is only supported in browser environments.');\n }\n\n async toString(encoding: buffer$NonBufferEncoding = 'utf8') {\n const buffer = await this.toBuffer();\n\n return buffer.toString(encoding);\n }\n\n async toStream() {\n if (!(this.data instanceof Readable)) {\n const input = this.data;\n\n return new Readable({\n read() {\n this.push(Buffer.from(input));\n this.push(null);\n },\n });\n }\n\n const stream = new PassThrough();\n\n if (this.data instanceof Readable) {\n this.data.pipe(stream);\n }\n\n return stream;\n }\n\n async toFile() {\n throw new Error('This feature is only supported in browser environments.');\n }\n\n async toFileUri() {\n throw new Error('This feature is only supported in react native environments.');\n }\n\n async toBlob() {\n throw new Error('This feature is only supported in browser environments.');\n }\n};\n\nexport default PubNubFile;\n"],"file":"node.js"} \ No newline at end of file +{"version":3,"sources":["file/modules/node.js"],"names":["PubNubFile","stream","data","encoding","name","mimeType","Readable","ReadStream","path","Buffer","from","undefined","Error","Promise","resolve","reject","chunks","on","chunk","push","once","concat","toBuffer","buffer","toString","input","read","PassThrough","pipe","config"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport { Readable, PassThrough } from 'stream';\nimport { ReadStream } from 'fs';\nimport { basename } from 'path';\n\nimport { IFile, FileClass } from '../';\n\ntype PubNubFileNodeConstructor = {|\n stream?: Readable,\n data?: string | Buffer,\n encoding?: string,\n name?: string,\n mimeType?: string,\n|};\n\ntype PubNubFileNodeSupportedInputType = Readable | Buffer | string;\n\nconst PubNubFile: FileClass = class PubNubFile implements IFile {\n static supportsBlob = false;\n static supportsFile = false;\n static supportsBuffer = typeof Buffer !== 'undefined';\n static supportsStream = true;\n static supportsString = true;\n static supportsArrayBuffer = false;\n static supportsEncryptFile = true;\n static supportsFileUri = false;\n\n data: PubNubFileNodeSupportedInputType;\n\n name: string;\n mimeType: string;\n\n static create(config: PubNubFileNodeConstructor) {\n return new this(config);\n }\n\n constructor({ stream, data, encoding, name, mimeType }: PubNubFileNodeConstructor) {\n if (stream instanceof Readable) {\n this.data = stream;\n\n if (stream instanceof ReadStream) {\n // $FlowFixMe: incomplete flow node definitions\n this.name = basename(stream.path);\n }\n } else if (data instanceof Buffer) {\n this.data = Buffer.from(data);\n } else if (typeof data === 'string') {\n // $FlowFixMe: incomplete flow node definitions\n this.data = Buffer.from(data, encoding ?? 'utf8');\n }\n\n if (name) {\n this.name = basename(name);\n }\n\n if (mimeType) {\n this.mimeType = mimeType;\n }\n\n if (this.data === undefined) {\n throw new Error(\"Couldn't construct a file out of supplied options.\");\n }\n\n if (this.name === undefined) {\n throw new Error(\"Couldn't guess filename out of the options. Please provide one.\");\n }\n }\n\n toBuffer(): Promise {\n if (this.data instanceof Buffer) {\n return Promise.resolve(Buffer.from(this.data));\n }\n\n if (this.data instanceof Readable) {\n const stream = this.data;\n return new Promise((resolve, reject) => {\n const chunks = [];\n\n stream.on('data', (chunk) => chunks.push(chunk));\n stream.once('error', reject);\n stream.once('end', () => {\n resolve(Buffer.concat(chunks));\n });\n });\n }\n\n if (typeof this.data === 'string') {\n return Promise.resolve(Buffer.from(this.data));\n }\n\n throw new Error(\"Can't cast to 'buffer'.\");\n }\n\n async toArrayBuffer() {\n throw new Error('This feature is only supported in browser environments.');\n }\n\n async toString(encoding: buffer$NonBufferEncoding = 'utf8') {\n const buffer = await this.toBuffer();\n\n return buffer.toString(encoding);\n }\n\n async toStream() {\n if (!(this.data instanceof Readable)) {\n const input = this.data;\n\n return new Readable({\n read() {\n this.push(Buffer.from(input));\n this.push(null);\n },\n });\n }\n\n const stream = new PassThrough();\n\n if (this.data instanceof Readable) {\n this.data.pipe(stream);\n }\n\n return stream;\n }\n\n async toFile() {\n throw new Error('This feature is only supported in browser environments.');\n }\n\n async toFileUri() {\n throw new Error('This feature is only supported in react native environments.');\n }\n\n async toBlob() {\n throw new Error('This feature is only supported in browser environments.');\n }\n};\n\nexport default PubNubFile;\n"],"file":"node.js"} \ No newline at end of file diff --git a/lib/file/modules/react-native.js b/lib/file/modules/react-native.js index 922aab55a..a5536a963 100644 --- a/lib/file/modules/react-native.js +++ b/lib/file/modules/react-native.js @@ -22,13 +22,6 @@ var _ = require("../"); var _class, _temp; var PubNubFile = (_temp = _class = function () { - (0, _createClass2["default"])(PubNubFile, null, [{ - key: "create", - value: function create(config) { - return new this(config); - } - }]); - function PubNubFile(config) { (0, _classCallCheck2["default"])(this, PubNubFile); (0, _defineProperty2["default"])(this, "data", void 0); @@ -352,6 +345,11 @@ var PubNubFile = (_temp = _class = function () { return toFileUri; }() + }], [{ + key: "create", + value: function create(config) { + return new this(config); + } }]); return PubNubFile; }(), (0, _defineProperty2["default"])(_class, "supportsFile", typeof File !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsBlob", typeof Blob !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsArrayBuffer", typeof ArrayBuffer !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsBuffer", false), (0, _defineProperty2["default"])(_class, "supportsStream", false), (0, _defineProperty2["default"])(_class, "supportsString", true), (0, _defineProperty2["default"])(_class, "supportsEncryptFile", false), (0, _defineProperty2["default"])(_class, "supportsFileUri", true), _temp); diff --git a/lib/file/modules/react-native.js.map b/lib/file/modules/react-native.js.map index 33b2a3779..9e9cb134d 100644 --- a/lib/file/modules/react-native.js.map +++ b/lib/file/modules/react-native.js.map @@ -1 +1 @@ -{"version":3,"sources":["file/modules/react-native.js"],"names":["PubNubFile","config","File","data","name","mimeType","type","uri","Error","undefined","blob","Promise","resolve","reject","reader","FileReader","addEventListener","result","ArrayBuffer","error","readAsArrayBuffer","arrayBuffer","JSON","stringify","readAsBinaryString","text","Blob"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport { IFile, FileClass } from '../';\n\ntype PubNubFileReactNativeConstructor =\n| File\n| {|\n data: string,\n name: string,\n mimeType: string,\n |}\n| {|\n data: ArrayBuffer,\n name: string,\n mimeType: string,\n |}\n| {|\n uri: string,\n name: string,\n mimeType: string,\n |};\n\nconst PubNubFile: FileClass = class PubNubFile implements IFile {\n static supportsFile = typeof File !== 'undefined';\n static supportsBlob = typeof Blob !== 'undefined';\n static supportsArrayBuffer = typeof ArrayBuffer !== 'undefined';\n static supportsBuffer = false;\n static supportsStream = false;\n static supportsString = true;\n static supportsEncryptFile = false;\n static supportsFileUri = true;\n\n static create(config: PubNubFileReactNativeConstructor) {\n return new this(config);\n }\n\n data: any;\n name: string;\n mimeType: string;\n\n constructor(config: PubNubFileReactNativeConstructor) {\n if (config instanceof File) {\n this.data = config;\n\n this.name = this.data.name;\n this.mimeType = this.data.type;\n } else if (config.uri) {\n // uri upload for react native\n this.data = {\n uri: config.uri,\n name: config.name,\n type: config.mimeType\n };\n\n this.name = config.name;\n\n if (config.mimeType) {\n this.mimeType = config.mimeType;\n }\n } else if (config.data) {\n this.data = config.data;\n this.name = config.name;\n\n if (config.mimeType) {\n this.mimeType = config.mimeType;\n }\n } else {\n throw new Error(\"Couldn't construct a file out of supplied options. URI or file data required.\");\n }\n\n if (this.data === undefined) {\n throw new Error(\"Couldn't construct a file out of supplied options.\");\n }\n\n if (this.name === undefined) {\n throw new Error(\"Couldn't guess filename out of the options. Please provide one.\");\n }\n }\n\n async toBuffer() {\n throw new Error('This feature is only supported in Node.js environments.');\n }\n\n async toStream() {\n throw new Error('This feature is only supported in Node.js environments.');\n }\n\n async toBlob() {\n if (this.data && this.data.uri) {\n throw new Error('This file contains a file URI and does not contain the file contents.');\n } else if (this.data instanceof File) {\n return this.data;\n } else {\n // data must be a fetch response\n return this.data.blob();\n }\n }\n\n async toArrayBuffer() {\n if (this.data && this.data.uri) {\n throw new Error('This file contains a file URI and does not contain the file contents.');\n } else if (this.data instanceof File) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.addEventListener('load', () => {\n if (reader.result instanceof ArrayBuffer) {\n return resolve(reader.result);\n }\n });\n\n reader.addEventListener('error', () => {\n reject(reader.error);\n });\n\n reader.readAsArrayBuffer(this.data);\n });\n } else {\n // data must be a fetch response\n let result;\n\n try {\n result = await this.data.arrayBuffer();\n } catch (e) {\n throw new Error(`Unable to support toArrayBuffer in ReactNative environment: ${e}`);\n }\n\n return result;\n }\n }\n\n async toString() {\n if (this.data && this.data.uri) {\n return JSON.stringify(this.data);\n } else if (this.data instanceof File) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.addEventListener('load', () => {\n if (typeof reader.result === 'string') {\n return resolve(reader.result);\n }\n });\n\n reader.addEventListener('error', () => {\n reject(reader.error);\n });\n\n reader.readAsBinaryString(this.data);\n });\n } else {\n // data must be a fetch response\n return this.data.text();\n }\n }\n\n async toFile() {\n if (this.data.uri) {\n throw new Error('This file contains a file URI and does not contain the file contents.');\n } else if (this.data instanceof File) {\n return this.data;\n } else {\n // data must be a fetch response\n return this.data.blob();\n }\n }\n\n async toFileUri() {\n if (this.data && this.data.uri) {\n return this.data;\n } else {\n throw new Error('This file does not contain a file URI');\n }\n }\n};\n\nexport default PubNubFile;\n"],"file":"react-native.js"} \ No newline at end of file +{"version":3,"sources":["file/modules/react-native.js"],"names":["PubNubFile","config","File","data","name","mimeType","type","uri","Error","undefined","blob","Promise","resolve","reject","reader","FileReader","addEventListener","result","ArrayBuffer","error","readAsArrayBuffer","arrayBuffer","JSON","stringify","readAsBinaryString","text","Blob"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport { IFile, FileClass } from '../';\n\ntype PubNubFileReactNativeConstructor =\n| File\n| {|\n data: string,\n name: string,\n mimeType: string,\n |}\n| {|\n data: ArrayBuffer,\n name: string,\n mimeType: string,\n |}\n| {|\n uri: string,\n name: string,\n mimeType: string,\n |};\n\nconst PubNubFile: FileClass = class PubNubFile implements IFile {\n static supportsFile = typeof File !== 'undefined';\n static supportsBlob = typeof Blob !== 'undefined';\n static supportsArrayBuffer = typeof ArrayBuffer !== 'undefined';\n static supportsBuffer = false;\n static supportsStream = false;\n static supportsString = true;\n static supportsEncryptFile = false;\n static supportsFileUri = true;\n\n static create(config: PubNubFileReactNativeConstructor) {\n return new this(config);\n }\n\n data: any;\n name: string;\n mimeType: string;\n\n constructor(config: PubNubFileReactNativeConstructor) {\n if (config instanceof File) {\n this.data = config;\n\n this.name = this.data.name;\n this.mimeType = this.data.type;\n } else if (config.uri) {\n // uri upload for react native\n this.data = {\n uri: config.uri,\n name: config.name,\n type: config.mimeType\n };\n\n this.name = config.name;\n\n if (config.mimeType) {\n this.mimeType = config.mimeType;\n }\n } else if (config.data) {\n this.data = config.data;\n this.name = config.name;\n\n if (config.mimeType) {\n this.mimeType = config.mimeType;\n }\n } else {\n throw new Error(\"Couldn't construct a file out of supplied options. URI or file data required.\");\n }\n\n if (this.data === undefined) {\n throw new Error(\"Couldn't construct a file out of supplied options.\");\n }\n\n if (this.name === undefined) {\n throw new Error(\"Couldn't guess filename out of the options. Please provide one.\");\n }\n }\n\n async toBuffer() {\n throw new Error('This feature is only supported in Node.js environments.');\n }\n\n async toStream() {\n throw new Error('This feature is only supported in Node.js environments.');\n }\n\n async toBlob() {\n if (this.data && this.data.uri) {\n throw new Error('This file contains a file URI and does not contain the file contents.');\n } else if (this.data instanceof File) {\n return this.data;\n } else {\n // data must be a fetch response\n return this.data.blob();\n }\n }\n\n async toArrayBuffer() {\n if (this.data && this.data.uri) {\n throw new Error('This file contains a file URI and does not contain the file contents.');\n } else if (this.data instanceof File) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.addEventListener('load', () => {\n if (reader.result instanceof ArrayBuffer) {\n return resolve(reader.result);\n }\n });\n\n reader.addEventListener('error', () => {\n reject(reader.error);\n });\n\n reader.readAsArrayBuffer(this.data);\n });\n } else {\n // data must be a fetch response\n let result;\n\n try {\n result = await this.data.arrayBuffer();\n } catch (e) {\n throw new Error(`Unable to support toArrayBuffer in ReactNative environment: ${e}`);\n }\n\n return result;\n }\n }\n\n async toString() {\n if (this.data && this.data.uri) {\n return JSON.stringify(this.data);\n } else if (this.data instanceof File) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.addEventListener('load', () => {\n if (typeof reader.result === 'string') {\n return resolve(reader.result);\n }\n });\n\n reader.addEventListener('error', () => {\n reject(reader.error);\n });\n\n reader.readAsBinaryString(this.data);\n });\n } else {\n // data must be a fetch response\n return this.data.text();\n }\n }\n\n async toFile() {\n if (this.data.uri) {\n throw new Error('This file contains a file URI and does not contain the file contents.');\n } else if (this.data instanceof File) {\n return this.data;\n } else {\n // data must be a fetch response\n return this.data.blob();\n }\n }\n\n async toFileUri() {\n if (this.data && this.data.uri) {\n return this.data;\n } else {\n throw new Error('This file does not contain a file URI');\n }\n }\n};\n\nexport default PubNubFile;\n"],"file":"react-native.js"} \ No newline at end of file diff --git a/lib/file/modules/web.js b/lib/file/modules/web.js index 5c8f9ed05..693fd5e73 100644 --- a/lib/file/modules/web.js +++ b/lib/file/modules/web.js @@ -22,13 +22,6 @@ var _ = require("../"); var _class, _temp; var PubNubFile = (_temp = _class = function () { - (0, _createClass2["default"])(PubNubFile, null, [{ - key: "create", - value: function create(config) { - return new this(config); - } - }]); - function PubNubFile(config) { (0, _classCallCheck2["default"])(this, PubNubFile); (0, _defineProperty2["default"])(this, "data", void 0); @@ -254,6 +247,11 @@ var PubNubFile = (_temp = _class = function () { return toFile; }() + }], [{ + key: "create", + value: function create(config) { + return new this(config); + } }]); return PubNubFile; }(), (0, _defineProperty2["default"])(_class, "supportsFile", typeof File !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsBlob", typeof Blob !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsArrayBuffer", typeof ArrayBuffer !== 'undefined'), (0, _defineProperty2["default"])(_class, "supportsBuffer", false), (0, _defineProperty2["default"])(_class, "supportsStream", false), (0, _defineProperty2["default"])(_class, "supportsString", true), (0, _defineProperty2["default"])(_class, "supportsEncryptFile", true), (0, _defineProperty2["default"])(_class, "supportsFileUri", false), _temp); diff --git a/lib/file/modules/web.js.map b/lib/file/modules/web.js.map index 12afef412..4d0d08fef 100644 --- a/lib/file/modules/web.js.map +++ b/lib/file/modules/web.js.map @@ -1 +1 @@ -{"version":3,"sources":["file/modules/web.js"],"names":["PubNubFile","config","File","data","name","mimeType","type","contents","undefined","Error","Promise","resolve","reject","reader","FileReader","addEventListener","result","ArrayBuffer","error","readAsArrayBuffer","readAsBinaryString","Blob"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport { IFile, FileClass } from '../';\n\ntype PubNubFileWebConstructor =\n | File\n | {|\n data: string,\n name: string,\n mimeType: string,\n |}\n | {|\n data: ArrayBuffer,\n name: string,\n mimeType: string,\n |};\n\nconst PubNubFile: FileClass = class PubNubFile implements IFile {\n static supportsFile = typeof File !== 'undefined';\n static supportsBlob = typeof Blob !== 'undefined';\n static supportsArrayBuffer = typeof ArrayBuffer !== 'undefined';\n static supportsBuffer = false;\n static supportsStream = false;\n static supportsString = true;\n static supportsEncryptFile = true;\n static supportsFileUri = false;\n\n static create(config: PubNubFileWebConstructor) {\n return new this(config);\n }\n\n data: any;\n name: string;\n mimeType: string;\n\n constructor(config: PubNubFileWebConstructor) {\n if (config instanceof File) {\n this.data = config;\n\n this.name = this.data.name;\n this.mimeType = this.data.type;\n } else if (config.data) {\n let contents = config.data;\n\n this.data = new File([contents], config.name, { type: config.mimeType });\n\n this.name = config.name;\n\n if (config.mimeType) {\n this.mimeType = config.mimeType;\n }\n }\n\n if (this.data === undefined) {\n throw new Error(\"Couldn't construct a file out of supplied options.\");\n }\n\n if (this.name === undefined) {\n throw new Error(\"Couldn't guess filename out of the options. Please provide one.\");\n }\n }\n\n async toBuffer() {\n throw new Error('This feature is only supported in Node.js environments.');\n }\n\n async toStream() {\n throw new Error('This feature is only supported in Node.js environments.');\n }\n\n async toFileUri() {\n throw new Error('This feature is only supported in react native environments.');\n }\n\n async toBlob() {\n return this.data;\n }\n\n async toArrayBuffer() {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.addEventListener('load', () => {\n if (reader.result instanceof ArrayBuffer) {\n return resolve(reader.result);\n }\n });\n\n reader.addEventListener('error', () => {\n reject(reader.error);\n });\n\n reader.readAsArrayBuffer(this.data);\n });\n }\n\n async toString() {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.addEventListener('load', () => {\n if (typeof reader.result === 'string') {\n return resolve(reader.result);\n }\n });\n\n reader.addEventListener('error', () => {\n reject(reader.error);\n });\n\n reader.readAsBinaryString(this.data);\n });\n }\n\n async toFile() {\n return this.data;\n }\n};\n\nexport default PubNubFile;\n"],"file":"web.js"} \ No newline at end of file +{"version":3,"sources":["file/modules/web.js"],"names":["PubNubFile","config","File","data","name","mimeType","type","contents","undefined","Error","Promise","resolve","reject","reader","FileReader","addEventListener","result","ArrayBuffer","error","readAsArrayBuffer","readAsBinaryString","Blob"],"mappings":"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","sourcesContent":["/** @flow */\n\nimport { IFile, FileClass } from '../';\n\ntype PubNubFileWebConstructor =\n | File\n | {|\n data: string,\n name: string,\n mimeType: string,\n |}\n | {|\n data: ArrayBuffer,\n name: string,\n mimeType: string,\n |};\n\nconst PubNubFile: FileClass = class PubNubFile implements IFile {\n static supportsFile = typeof File !== 'undefined';\n static supportsBlob = typeof Blob !== 'undefined';\n static supportsArrayBuffer = typeof ArrayBuffer !== 'undefined';\n static supportsBuffer = false;\n static supportsStream = false;\n static supportsString = true;\n static supportsEncryptFile = true;\n static supportsFileUri = false;\n\n static create(config: PubNubFileWebConstructor) {\n return new this(config);\n }\n\n data: any;\n name: string;\n mimeType: string;\n\n constructor(config: PubNubFileWebConstructor) {\n if (config instanceof File) {\n this.data = config;\n\n this.name = this.data.name;\n this.mimeType = this.data.type;\n } else if (config.data) {\n let contents = config.data;\n\n this.data = new File([contents], config.name, { type: config.mimeType });\n\n this.name = config.name;\n\n if (config.mimeType) {\n this.mimeType = config.mimeType;\n }\n }\n\n if (this.data === undefined) {\n throw new Error(\"Couldn't construct a file out of supplied options.\");\n }\n\n if (this.name === undefined) {\n throw new Error(\"Couldn't guess filename out of the options. Please provide one.\");\n }\n }\n\n async toBuffer() {\n throw new Error('This feature is only supported in Node.js environments.');\n }\n\n async toStream() {\n throw new Error('This feature is only supported in Node.js environments.');\n }\n\n async toFileUri() {\n throw new Error('This feature is only supported in react native environments.');\n }\n\n async toBlob() {\n return this.data;\n }\n\n async toArrayBuffer() {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.addEventListener('load', () => {\n if (reader.result instanceof ArrayBuffer) {\n return resolve(reader.result);\n }\n });\n\n reader.addEventListener('error', () => {\n reject(reader.error);\n });\n\n reader.readAsArrayBuffer(this.data);\n });\n }\n\n async toString() {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n reader.addEventListener('load', () => {\n if (typeof reader.result === 'string') {\n return resolve(reader.result);\n }\n });\n\n reader.addEventListener('error', () => {\n reject(reader.error);\n });\n\n reader.readAsBinaryString(this.data);\n });\n }\n\n async toFile() {\n return this.data;\n }\n};\n\nexport default PubNubFile;\n"],"file":"web.js"} \ No newline at end of file diff --git a/lib/nativescript/index.js b/lib/nativescript/index.js index 55108a58f..5d08e69b8 100644 --- a/lib/nativescript/index.js +++ b/lib/nativescript/index.js @@ -27,7 +27,7 @@ var _flow_interfaces = require("../core/flow_interfaces"); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var _default = function (_PubNubCore) { (0, _inherits2["default"])(_default, _PubNubCore); diff --git a/lib/networking/index.js b/lib/networking/index.js index ff5c12665..33144d6d1 100644 --- a/lib/networking/index.js +++ b/lib/networking/index.js @@ -26,11 +26,9 @@ var _default = function () { (0, _classCallCheck2["default"])(this, _default); (0, _defineProperty2["default"])(this, "_modules", void 0); (0, _defineProperty2["default"])(this, "_config", void 0); - (0, _defineProperty2["default"])(this, "_maxSubDomain", void 0); (0, _defineProperty2["default"])(this, "_currentSubDomain", void 0); (0, _defineProperty2["default"])(this, "_standardOrigin", void 0); (0, _defineProperty2["default"])(this, "_subscribeOrigin", void 0); - (0, _defineProperty2["default"])(this, "_providedFQDN", void 0); (0, _defineProperty2["default"])(this, "_requestTimeout", void 0); (0, _defineProperty2["default"])(this, "_coreParams", void 0); this._modules = {}; @@ -43,28 +41,33 @@ var _default = function () { key: "init", value: function init(config) { this._config = config; - this._maxSubDomain = 20; - this._currentSubDomain = Math.floor(Math.random() * this._maxSubDomain); - this._providedFQDN = (this._config.secure ? 'https://' : 'http://') + this._config.origin; + + if (Array.isArray(this._config.origin)) { + this._currentSubDomain = Math.floor(Math.random() * this._config.origin.length); + } else { + this._currentSubDomain = 0; + } + this._coreParams = {}; this.shiftStandardOrigin(); } }, { key: "nextOrigin", value: function nextOrigin() { - if (!this._providedFQDN.match(/ps\.pndsn\.com$/i)) { - return this._providedFQDN; + var protocol = this._config.secure ? 'https://' : 'http://'; + + if (typeof this._config.origin === 'string') { + return "".concat(protocol).concat(this._config.origin); } - var newSubDomain; this._currentSubDomain += 1; - if (this._currentSubDomain >= this._maxSubDomain) { - this._currentSubDomain = 1; + if (this._currentSubDomain >= this._config.origin.length) { + this._currentSubDomain = 0; } - newSubDomain = this._currentSubDomain.toString(); - return this._providedFQDN.replace('ps.pndsn.com', "ps".concat(newSubDomain, ".pndsn.com")); + var origin = this._config.origin[this._currentSubDomain]; + return "".concat(protocol).concat(origin); } }, { key: "hasModule", diff --git a/lib/networking/index.js.map b/lib/networking/index.js.map index 265f70fda..5543649b6 100644 --- a/lib/networking/index.js.map +++ b/lib/networking/index.js.map @@ -1 +1 @@ -{"version":3,"sources":["networking/index.js"],"names":["modules","_modules","Object","keys","forEach","key","bind","config","_config","_maxSubDomain","_currentSubDomain","Math","floor","random","_providedFQDN","secure","origin","_coreParams","shiftStandardOrigin","match","newSubDomain","toString","replace","name","_standardOrigin","nextOrigin","url","fields","file","postfile","params","endpoint","callback","getfile","body","post","patch","get","del","err","code","categoryConstants","PNNetworkIssuesCategory","status","hasOwnProperty","timeout","PNTimeoutCategory","response","badRequest","PNBadRequestCategory","forbidden","PNAccessDeniedCategory","PNUnknownCategory"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport Config from '../core/components/config';\nimport categoryConstants from '../core/constants/categories';\n\nimport { EndpointDefinition, NetworkingModules } from '../core/flow_interfaces';\n\nexport default class {\n _modules: NetworkingModules;\n _config: Config;\n\n _maxSubDomain: number;\n _currentSubDomain: number;\n\n _standardOrigin: string;\n _subscribeOrigin: string;\n\n _providedFQDN: string;\n\n _requestTimeout: number;\n\n _coreParams: Object; /* items that must be passed with each request. */\n\n constructor(modules: NetworkingModules) {\n this._modules = {};\n\n Object.keys(modules).forEach((key) => {\n this._modules[key] = modules[key].bind(this);\n });\n }\n\n init(config: Config) {\n this._config = config;\n\n this._maxSubDomain = 20;\n this._currentSubDomain = Math.floor(Math.random() * this._maxSubDomain);\n this._providedFQDN = (this._config.secure ? 'https://' : 'http://') + this._config.origin;\n this._coreParams = {};\n\n // create initial origins\n this.shiftStandardOrigin();\n }\n\n nextOrigin(): string {\n // if a custom origin is supplied, use do not bother with shuffling subdomains\n if (!this._providedFQDN.match(/ps\\.pndsn\\.com$/i)) {\n return this._providedFQDN;\n }\n\n let newSubDomain: string;\n\n this._currentSubDomain += 1;\n\n if (this._currentSubDomain >= this._maxSubDomain) {\n this._currentSubDomain = 1;\n }\n\n newSubDomain = this._currentSubDomain.toString();\n\n return this._providedFQDN.replace('ps.pndsn.com', `ps${newSubDomain}.pndsn.com`);\n }\n\n hasModule(name: string) {\n return name in this._modules;\n }\n\n // origin operations\n shiftStandardOrigin(): string {\n this._standardOrigin = this.nextOrigin();\n\n return this._standardOrigin;\n }\n\n getStandardOrigin(): string {\n return this._standardOrigin;\n }\n\n POSTFILE(url: string, fields: $ReadOnlyArray<{ key: string, value: string }>, file: any) {\n return this._modules.postfile(url, fields, file);\n }\n\n GETFILE(params: Object, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.getfile(params, endpoint, callback);\n }\n\n POST(params: Object, body: string, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.post(params, body, endpoint, callback);\n }\n\n PATCH(params: Object, body: string, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.patch(params, body, endpoint, callback);\n }\n\n GET(params: Object, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.get(params, endpoint, callback);\n }\n\n DELETE(params: Object, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.del(params, endpoint, callback);\n }\n\n _detectErrorCategory(err: Object): string {\n if (err.code === 'ENOTFOUND') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n if (err.code === 'ECONNREFUSED') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n if (err.code === 'ECONNRESET') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n if (err.code === 'EAI_AGAIN') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n\n if (err.status === 0 || (err.hasOwnProperty('status') && typeof err.status === 'undefined')) {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n if (err.timeout) return categoryConstants.PNTimeoutCategory;\n\n if (err.code === 'ETIMEDOUT') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n\n if (err.response) {\n if (err.response.badRequest) {\n return categoryConstants.PNBadRequestCategory;\n }\n if (err.response.forbidden) {\n return categoryConstants.PNAccessDeniedCategory;\n }\n }\n\n return categoryConstants.PNUnknownCategory;\n }\n}\n"],"file":"index.js"} \ No newline at end of file +{"version":3,"sources":["networking/index.js"],"names":["modules","_modules","Object","keys","forEach","key","bind","config","_config","Array","isArray","origin","_currentSubDomain","Math","floor","random","length","_coreParams","shiftStandardOrigin","protocol","secure","name","_standardOrigin","nextOrigin","url","fields","file","postfile","params","endpoint","callback","getfile","body","post","patch","get","del","err","code","categoryConstants","PNNetworkIssuesCategory","status","hasOwnProperty","timeout","PNTimeoutCategory","response","badRequest","PNBadRequestCategory","forbidden","PNAccessDeniedCategory","PNUnknownCategory"],"mappings":"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","sourcesContent":["/* @flow */\n\nimport Config from '../core/components/config';\nimport categoryConstants from '../core/constants/categories';\n\nimport { EndpointDefinition, NetworkingModules } from '../core/flow_interfaces';\n\nexport default class {\n _modules: NetworkingModules;\n _config: Config;\n\n _currentSubDomain: number;\n\n _standardOrigin: string;\n _subscribeOrigin: string;\n\n _requestTimeout: number;\n\n _coreParams: Object; /* items that must be passed with each request. */\n\n constructor(modules: NetworkingModules) {\n this._modules = {};\n\n Object.keys(modules).forEach((key) => {\n this._modules[key] = modules[key].bind(this);\n });\n }\n\n init(config: Config) {\n this._config = config;\n\n if (Array.isArray(this._config.origin)) {\n this._currentSubDomain = Math.floor(Math.random() * this._config.origin.length);\n } else {\n this._currentSubDomain = 0;\n }\n\n this._coreParams = {};\n\n // create initial origins\n this.shiftStandardOrigin();\n }\n\n nextOrigin(): string {\n const protocol = this._config.secure ? 'https://' : 'http://';\n\n if (typeof this._config.origin === 'string') {\n return `${protocol}${this._config.origin}`;\n }\n\n this._currentSubDomain += 1;\n\n if (this._currentSubDomain >= this._config.origin.length) {\n this._currentSubDomain = 0;\n }\n\n const origin = this._config.origin[this._currentSubDomain];\n\n return `${protocol}${origin}`;\n }\n\n hasModule(name: string) {\n return name in this._modules;\n }\n\n // origin operations\n shiftStandardOrigin(): string {\n this._standardOrigin = this.nextOrigin();\n\n return this._standardOrigin;\n }\n\n getStandardOrigin(): string {\n return this._standardOrigin;\n }\n\n POSTFILE(url: string, fields: $ReadOnlyArray<{ key: string, value: string }>, file: any) {\n return this._modules.postfile(url, fields, file);\n }\n\n GETFILE(params: Object, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.getfile(params, endpoint, callback);\n }\n\n POST(params: Object, body: string, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.post(params, body, endpoint, callback);\n }\n\n PATCH(params: Object, body: string, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.patch(params, body, endpoint, callback);\n }\n\n GET(params: Object, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.get(params, endpoint, callback);\n }\n\n DELETE(params: Object, endpoint: EndpointDefinition, callback: Function) {\n return this._modules.del(params, endpoint, callback);\n }\n\n _detectErrorCategory(err: Object): string {\n if (err.code === 'ENOTFOUND') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n if (err.code === 'ECONNREFUSED') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n if (err.code === 'ECONNRESET') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n if (err.code === 'EAI_AGAIN') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n\n if (err.status === 0 || (err.hasOwnProperty('status') && typeof err.status === 'undefined')) {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n if (err.timeout) return categoryConstants.PNTimeoutCategory;\n\n if (err.code === 'ETIMEDOUT') {\n return categoryConstants.PNNetworkIssuesCategory;\n }\n\n if (err.response) {\n if (err.response.badRequest) {\n return categoryConstants.PNBadRequestCategory;\n }\n if (err.response.forbidden) {\n return categoryConstants.PNAccessDeniedCategory;\n }\n }\n\n return categoryConstants.PNUnknownCategory;\n }\n}\n"],"file":"index.js"} \ No newline at end of file diff --git a/lib/networking/modules/nativescript.js b/lib/networking/modules/nativescript.js index 7ccf0f7ac..4048f8bd0 100644 --- a/lib/networking/modules/nativescript.js +++ b/lib/networking/modules/nativescript.js @@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true }); +exports.del = del; exports.get = get; -exports.post = post; exports.patch = patch; -exports.del = del; +exports.post = post; var _http = require("http"); diff --git a/lib/networking/modules/node.js b/lib/networking/modules/node.js index 8be0b3021..786eacaaa 100644 --- a/lib/networking/modules/node.js +++ b/lib/networking/modules/node.js @@ -5,8 +5,8 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau Object.defineProperty(exports, "__esModule", { value: true }); -exports.proxy = proxy; exports.keepAlive = keepAlive; +exports.proxy = proxy; var _superagent = _interopRequireDefault(require("superagent")); diff --git a/lib/networking/modules/react_native.js b/lib/networking/modules/react_native.js index 993ddea72..d842f729b 100644 --- a/lib/networking/modules/react_native.js +++ b/lib/networking/modules/react_native.js @@ -5,8 +5,8 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau Object.defineProperty(exports, "__esModule", { value: true }); -exports.postfile = postfile; exports.getfile = getfile; +exports.postfile = postfile; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); diff --git a/lib/networking/modules/titanium.js b/lib/networking/modules/titanium.js index 3eaad9339..c5aef6a86 100644 --- a/lib/networking/modules/titanium.js +++ b/lib/networking/modules/titanium.js @@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true }); +exports.del = del; exports.get = get; -exports.post = post; exports.patch = patch; -exports.del = del; +exports.post = post; var _flow_interfaces = require("../../core/flow_interfaces"); diff --git a/lib/networking/modules/web-node.js b/lib/networking/modules/web-node.js index 6323105cf..4a6c59cbc 100644 --- a/lib/networking/modules/web-node.js +++ b/lib/networking/modules/web-node.js @@ -5,12 +5,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau Object.defineProperty(exports, "__esModule", { value: true }); -exports.postfile = postfile; -exports.getfile = getfile; +exports.del = del; exports.get = get; -exports.post = post; +exports.getfile = getfile; exports.patch = patch; -exports.del = del; +exports.post = post; +exports.postfile = postfile; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); @@ -72,7 +72,8 @@ function xdr(superagentConstruct, endpoint, callback) { sc = sc.buffer(false); } - return sc.timeout(endpoint.timeout).end(function (err, resp) { + sc = sc.timeout(endpoint.timeout); + sc.end(function (err, resp) { var parsedResponse; var status = {}; status.error = err !== null; @@ -125,6 +126,7 @@ function xdr(superagentConstruct, endpoint, callback) { return callback(status, parsedResponse); }); + return sc; } function postfile(_x, _x2, _x3) { diff --git a/lib/networking/modules/web-node.js.map b/lib/networking/modules/web-node.js.map index 1ed4af198..078e75bd7 100644 --- a/lib/networking/modules/web-node.js.map +++ b/lib/networking/modules/web-node.js.map @@ -1 +1 @@ -{"version":3,"sources":["networking/modules/web-node.js"],"names":["log","req","_pickLogger","console","window","start","Date","getTime","timestamp","toISOString","logger","url","qs","on","res","now","elapsed","timestampDone","text","xdr","superagentConstruct","endpoint","callback","_config","logVerbosity","use","proxy","_modules","call","keepAlive","sc","forceBuffered","Blob","buffer","responseType","timeout","end","err","resp","parsedResponse","status","error","operation","statusCode","response","errorData","JSON","parse","e","category","_detectErrorCategory","ignoreBody","headers","redirects","message","service","postfile","fields","fileInput","agent","superagent","post","forEach","key","value","field","attach","contentType","result","getfile","params","get","getStandardOrigin","set","query","body","send","patch","del"],"mappings":"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","sourcesContent":["/* @flow */\n/* global window */\n\nimport superagent from 'superagent';\nimport { EndpointDefinition, StatusAnnouncement } from '../../core/flow_interfaces';\n\nfunction log(req: Object) {\n let _pickLogger = () => {\n if (console && console.log) return console; // eslint-disable-line no-console\n if (window && window.console && window.console.log) return window.console;\n return console;\n };\n\n let start = new Date().getTime();\n let timestamp = new Date().toISOString();\n let logger = _pickLogger();\n logger.log('<<<<<'); // eslint-disable-line no-console\n logger.log(`[${timestamp}]`, '\\n', req.url, '\\n', req.qs); // eslint-disable-line no-console\n logger.log('-----'); // eslint-disable-line no-console\n\n req.on('response', (res) => {\n let now = new Date().getTime();\n let elapsed = now - start;\n let timestampDone = new Date().toISOString();\n\n logger.log('>>>>>>'); // eslint-disable-line no-console\n logger.log(`[${timestampDone} / ${elapsed}]`, '\\n', req.url, '\\n', req.qs, '\\n', res.text); // eslint-disable-line no-console\n logger.log('-----'); // eslint-disable-line no-console\n });\n}\n\nfunction xdr(superagentConstruct: superagent, endpoint: EndpointDefinition, callback: Function): Object {\n if (this._config.logVerbosity) {\n superagentConstruct = superagentConstruct.use(log);\n }\n\n if (this._config.proxy && this._modules.proxy) {\n superagentConstruct = this._modules.proxy.call(this, superagentConstruct);\n }\n\n if (this._config.keepAlive && this._modules.keepAlive) {\n superagentConstruct = this._modules.keepAlive(superagentConstruct);\n }\n\n let sc = superagentConstruct;\n\n if (endpoint.forceBuffered === true) {\n if (typeof Blob === 'undefined') {\n sc = sc.buffer().responseType('arraybuffer');\n } else {\n sc = sc.responseType('arraybuffer');\n }\n } else if (endpoint.forceBuffered === false) {\n sc = sc.buffer(false);\n }\n\n return sc.timeout(endpoint.timeout).end((err, resp) => {\n let parsedResponse;\n let status: StatusAnnouncement = {};\n status.error = err !== null;\n status.operation = endpoint.operation;\n\n if (resp && resp.status) {\n status.statusCode = resp.status;\n }\n\n if (err) {\n if (err.response && err.response.text && !this._config.logVerbosity) {\n try {\n status.errorData = JSON.parse(err.response.text);\n } catch (e) {\n status.errorData = err;\n }\n } else {\n status.errorData = err;\n }\n status.category = this._detectErrorCategory(err);\n return callback(status, null);\n }\n\n if (endpoint.ignoreBody) {\n parsedResponse = {\n headers: resp.headers,\n redirects: resp.redirects,\n response: resp,\n };\n } else {\n try {\n parsedResponse = JSON.parse(resp.text);\n } catch (e) {\n status.errorData = resp;\n status.error = true;\n return callback(status, null);\n }\n }\n\n if (\n parsedResponse.error &&\n parsedResponse.error === 1 &&\n parsedResponse.status &&\n parsedResponse.message &&\n parsedResponse.service\n ) {\n status.errorData = parsedResponse;\n status.statusCode = parsedResponse.status;\n status.error = true;\n status.category = this._detectErrorCategory(status);\n return callback(status, null);\n } else if (parsedResponse.error && parsedResponse.error.message) {\n status.errorData = parsedResponse.error;\n }\n\n return callback(status, parsedResponse);\n });\n}\n\nexport async function postfile(\n url: string,\n fields: $ReadOnlyArray<{ key: string, value: string }>,\n fileInput: any\n): Promise {\n let agent = superagent.post(url);\n\n fields.forEach(({ key, value }) => {\n agent = agent.field(key, value);\n });\n\n agent.attach('file', fileInput, { contentType: 'application/octet-stream' });\n\n const result = await agent;\n\n return result;\n}\n\nexport function getfile(params: Object, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .get(this.getStandardOrigin() + endpoint.url)\n .set(endpoint.headers)\n .query(params);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nexport function get(params: Object, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .get(this.getStandardOrigin() + endpoint.url)\n .set(endpoint.headers)\n .query(params);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nexport function post(params: Object, body: string, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .post(this.getStandardOrigin() + endpoint.url)\n .query(params)\n .set(endpoint.headers)\n .send(body);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nexport function patch(params: Object, body: string, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .patch(this.getStandardOrigin() + endpoint.url)\n .query(params)\n .set(endpoint.headers)\n .send(body);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nexport function del(params: Object, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .delete(this.getStandardOrigin() + endpoint.url)\n .set(endpoint.headers)\n .query(params);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n"],"file":"web-node.js"} \ No newline at end of file +{"version":3,"sources":["networking/modules/web-node.js"],"names":["log","req","_pickLogger","console","window","start","Date","getTime","timestamp","toISOString","logger","url","qs","on","res","now","elapsed","timestampDone","text","xdr","superagentConstruct","endpoint","callback","_config","logVerbosity","use","proxy","_modules","call","keepAlive","sc","forceBuffered","Blob","buffer","responseType","timeout","end","err","resp","parsedResponse","status","error","operation","statusCode","response","errorData","JSON","parse","e","category","_detectErrorCategory","ignoreBody","headers","redirects","message","service","postfile","fields","fileInput","agent","superagent","post","forEach","key","value","field","attach","contentType","result","getfile","params","get","getStandardOrigin","set","query","body","send","patch","del"],"mappings":"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","sourcesContent":["/* @flow */\n/* global window */\n\nimport superagent from 'superagent';\nimport { EndpointDefinition, StatusAnnouncement } from '../../core/flow_interfaces';\n\nfunction log(req: Object) {\n let _pickLogger = () => {\n if (console && console.log) return console; // eslint-disable-line no-console\n if (window && window.console && window.console.log) return window.console;\n return console;\n };\n\n let start = new Date().getTime();\n let timestamp = new Date().toISOString();\n let logger = _pickLogger();\n logger.log('<<<<<'); // eslint-disable-line no-console\n logger.log(`[${timestamp}]`, '\\n', req.url, '\\n', req.qs); // eslint-disable-line no-console\n logger.log('-----'); // eslint-disable-line no-console\n\n req.on('response', (res) => {\n let now = new Date().getTime();\n let elapsed = now - start;\n let timestampDone = new Date().toISOString();\n\n logger.log('>>>>>>'); // eslint-disable-line no-console\n logger.log(`[${timestampDone} / ${elapsed}]`, '\\n', req.url, '\\n', req.qs, '\\n', res.text); // eslint-disable-line no-console\n logger.log('-----'); // eslint-disable-line no-console\n });\n}\n\nfunction xdr(superagentConstruct: superagent, endpoint: EndpointDefinition, callback: Function): Object {\n if (this._config.logVerbosity) {\n superagentConstruct = superagentConstruct.use(log);\n }\n\n if (this._config.proxy && this._modules.proxy) {\n superagentConstruct = this._modules.proxy.call(this, superagentConstruct);\n }\n\n if (this._config.keepAlive && this._modules.keepAlive) {\n superagentConstruct = this._modules.keepAlive(superagentConstruct);\n }\n\n let sc = superagentConstruct;\n\n if (endpoint.forceBuffered === true) {\n if (typeof Blob === 'undefined') {\n sc = sc.buffer().responseType('arraybuffer');\n } else {\n sc = sc.responseType('arraybuffer');\n }\n } else if (endpoint.forceBuffered === false) {\n sc = sc.buffer(false);\n }\n\n sc = sc.timeout(endpoint.timeout);\n\n sc.end((err, resp) => {\n let parsedResponse;\n let status: StatusAnnouncement = {};\n status.error = err !== null;\n status.operation = endpoint.operation;\n\n if (resp && resp.status) {\n status.statusCode = resp.status;\n }\n\n if (err) {\n if (err.response && err.response.text && !this._config.logVerbosity) {\n try {\n status.errorData = JSON.parse(err.response.text);\n } catch (e) {\n status.errorData = err;\n }\n } else {\n status.errorData = err;\n }\n status.category = this._detectErrorCategory(err);\n return callback(status, null);\n }\n\n if (endpoint.ignoreBody) {\n parsedResponse = {\n headers: resp.headers,\n redirects: resp.redirects,\n response: resp,\n };\n } else {\n try {\n parsedResponse = JSON.parse(resp.text);\n } catch (e) {\n status.errorData = resp;\n status.error = true;\n return callback(status, null);\n }\n }\n\n if (\n parsedResponse.error &&\n parsedResponse.error === 1 &&\n parsedResponse.status &&\n parsedResponse.message &&\n parsedResponse.service\n ) {\n status.errorData = parsedResponse;\n status.statusCode = parsedResponse.status;\n status.error = true;\n status.category = this._detectErrorCategory(status);\n return callback(status, null);\n } else if (parsedResponse.error && parsedResponse.error.message) {\n status.errorData = parsedResponse.error;\n }\n\n return callback(status, parsedResponse);\n });\n\n return sc;\n}\n\nexport async function postfile(\n url: string,\n fields: $ReadOnlyArray<{ key: string, value: string }>,\n fileInput: any\n): Promise {\n let agent = superagent.post(url);\n\n fields.forEach(({ key, value }) => {\n agent = agent.field(key, value);\n });\n\n agent.attach('file', fileInput, { contentType: 'application/octet-stream' });\n\n const result = await agent;\n\n return result;\n}\n\nexport function getfile(params: Object, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .get(this.getStandardOrigin() + endpoint.url)\n .set(endpoint.headers)\n .query(params);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nexport function get(params: Object, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .get(this.getStandardOrigin() + endpoint.url)\n .set(endpoint.headers)\n .query(params);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nexport function post(params: Object, body: string, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .post(this.getStandardOrigin() + endpoint.url)\n .query(params)\n .set(endpoint.headers)\n .send(body);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nexport function patch(params: Object, body: string, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .patch(this.getStandardOrigin() + endpoint.url)\n .query(params)\n .set(endpoint.headers)\n .send(body);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n\nexport function del(params: Object, endpoint: EndpointDefinition, callback: Function): superagent {\n let superagentConstruct = superagent\n .delete(this.getStandardOrigin() + endpoint.url)\n .set(endpoint.headers)\n .query(params);\n return xdr.call(this, superagentConstruct, endpoint, callback);\n}\n"],"file":"web-node.js"} \ No newline at end of file diff --git a/lib/networking/utils.js b/lib/networking/utils.js index cd4452fd7..a12cb2739 100644 --- a/lib/networking/utils.js +++ b/lib/networking/utils.js @@ -5,8 +5,8 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau Object.defineProperty(exports, "__esModule", { value: true }); -exports.encodedKeyValuePair = encodedKeyValuePair; exports.buildUrl = buildUrl; +exports.encodedKeyValuePair = encodedKeyValuePair; var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof")); diff --git a/lib/node/index.js b/lib/node/index.js index fd8f2485f..7e3abc98f 100755 --- a/lib/node/index.js +++ b/lib/node/index.js @@ -37,7 +37,7 @@ var _node3 = _interopRequireDefault(require("../file/modules/node")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var _default = function (_PubNubCore) { (0, _inherits2["default"])(_default, _PubNubCore); diff --git a/lib/react_native/index.js b/lib/react_native/index.js index c3921369d..b16ac7bd4 100644 --- a/lib/react_native/index.js +++ b/lib/react_native/index.js @@ -17,6 +17,8 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge var _cborSync = _interopRequireDefault(require("cbor-sync")); +var _buffer = require("buffer"); + var _pubnubCommon = _interopRequireDefault(require("../core/pubnub-common")); var _networking = _interopRequireDefault(require("../networking")); @@ -35,7 +37,9 @@ var _reactNative = _interopRequireDefault(require("../file/modules/react-native" function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } + +global.Buffer = global.Buffer || _buffer.Buffer; var _default = function (_PubNubCore) { (0, _inherits2["default"])(_default, _PubNubCore); @@ -46,7 +50,7 @@ var _default = function (_PubNubCore) { (0, _classCallCheck2["default"])(this, _default); setup.db = new _common["default"](); setup.cbor = new _common2["default"](_cborSync["default"].decode, function (base64String) { - return Buffer.from(base64String, 'base64'); + return _buffer.Buffer.from(base64String, 'base64'); }); setup.PubNubFile = _reactNative["default"]; setup.networking = new _networking["default"]({ diff --git a/lib/react_native/index.js.map b/lib/react_native/index.js.map index 3b3eb1481..973159467 100644 --- a/lib/react_native/index.js.map +++ b/lib/react_native/index.js.map @@ -1 +1 @@ -{"version":3,"sources":["react_native/index.js"],"names":["setup","db","Database","cbor","Cbor","CborReader","decode","base64String","Buffer","from","PubNubFile","networking","Networking","del","get","post","patch","getfile","postfile","sdkFamily","ssl","PubNubCore"],"mappings":";;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;;;;;;AAGE,oBAAYA,KAAZ,EAAwC;AAAA;AACtCA,IAAAA,KAAK,CAACC,EAAN,GAAW,IAAIC,kBAAJ,EAAX;AACAF,IAAAA,KAAK,CAACG,IAAN,GAAa,IAAIC,mBAAJ,CAASC,qBAAWC,MAApB,EAA4B,UAACC,YAAD;AAAA,aAAkBC,MAAM,CAACC,IAAP,CAAYF,YAAZ,EAA0B,QAA1B,CAAlB;AAAA,KAA5B,CAAb;AAEAP,IAAAA,KAAK,CAACU,UAAN,GAAmBA,uBAAnB;AAEAV,IAAAA,KAAK,CAACW,UAAN,GAAmB,IAAIC,sBAAJ,CAAe;AAAEC,MAAAA,GAAG,EAAHA,YAAF;AAAOC,MAAAA,GAAG,EAAHA,YAAP;AAAYC,MAAAA,IAAI,EAAJA,aAAZ;AAAkBC,MAAAA,KAAK,EAALA,cAAlB;AAAyBC,MAAAA,OAAO,EAAPA,qBAAzB;AAAkCC,MAAAA,QAAQ,EAARA;AAAlC,KAAf,CAAnB;AACAlB,IAAAA,KAAK,CAACmB,SAAN,GAAkB,aAAlB;AACAnB,IAAAA,KAAK,CAACoB,GAAN,GAAY,IAAZ;AARsC,6BAUhCpB,KAVgC;AAWvC;;;EAZ0BqB,wB","sourcesContent":["/* @flow */\n\nimport CborReader from 'cbor-sync';\nimport PubNubCore from '../core/pubnub-common';\nimport Networking from '../networking';\nimport Database from '../db/common';\nimport Cbor from '../cbor/common';\nimport { del, get, post, patch } from '../networking/modules/web-node';\nimport { getfile, postfile } from '../networking/modules/react_native';\nimport { InternalSetupStruct } from '../core/flow_interfaces';\n\nimport PubNubFile from '../file/modules/react-native';\n\nexport default class extends PubNubCore {\n constructor(setup: InternalSetupStruct) {\n setup.db = new Database();\n setup.cbor = new Cbor(CborReader.decode, (base64String) => Buffer.from(base64String, 'base64'));\n\n setup.PubNubFile = PubNubFile;\n\n setup.networking = new Networking({ del, get, post, patch, getfile, postfile });\n setup.sdkFamily = 'ReactNative';\n setup.ssl = true;\n\n super(setup);\n }\n}\n"],"file":"index.js"} \ No newline at end of file +{"version":3,"sources":["react_native/index.js"],"names":["global","Buffer","setup","db","Database","cbor","Cbor","CborReader","decode","base64String","from","PubNubFile","networking","Networking","del","get","post","patch","getfile","postfile","sdkFamily","ssl","PubNubCore"],"mappings":";;;;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;AAEAA,MAAM,CAACC,MAAP,GAAgBD,MAAM,CAACC,MAAP,IAAkBA,cAAlC;;;;;;;AAGE,oBAAYC,KAAZ,EAAwC;AAAA;AACtCA,IAAAA,KAAK,CAACC,EAAN,GAAW,IAAIC,kBAAJ,EAAX;AACAF,IAAAA,KAAK,CAACG,IAAN,GAAa,IAAIC,mBAAJ,CAASC,qBAAWC,MAApB,EAA4B,UAACC,YAAD;AAAA,aAAkBR,eAAOS,IAAP,CAAYD,YAAZ,EAA0B,QAA1B,CAAlB;AAAA,KAA5B,CAAb;AAEAP,IAAAA,KAAK,CAACS,UAAN,GAAmBA,uBAAnB;AAEAT,IAAAA,KAAK,CAACU,UAAN,GAAmB,IAAIC,sBAAJ,CAAe;AAAEC,MAAAA,GAAG,EAAHA,YAAF;AAAOC,MAAAA,GAAG,EAAHA,YAAP;AAAYC,MAAAA,IAAI,EAAJA,aAAZ;AAAkBC,MAAAA,KAAK,EAALA,cAAlB;AAAyBC,MAAAA,OAAO,EAAPA,qBAAzB;AAAkCC,MAAAA,QAAQ,EAARA;AAAlC,KAAf,CAAnB;AACAjB,IAAAA,KAAK,CAACkB,SAAN,GAAkB,aAAlB;AACAlB,IAAAA,KAAK,CAACmB,GAAN,GAAY,IAAZ;AARsC,6BAUhCnB,KAVgC;AAWvC;;;EAZ0BoB,wB","sourcesContent":["/* @flow */\n\nimport CborReader from 'cbor-sync';\nimport { Buffer } from 'buffer';\nimport PubNubCore from '../core/pubnub-common';\nimport Networking from '../networking';\nimport Database from '../db/common';\nimport Cbor from '../cbor/common';\nimport { del, get, post, patch } from '../networking/modules/web-node';\nimport { getfile, postfile } from '../networking/modules/react_native';\nimport { InternalSetupStruct } from '../core/flow_interfaces';\n\nimport PubNubFile from '../file/modules/react-native';\n\nglobal.Buffer = global.Buffer || Buffer;\n\nexport default class extends PubNubCore {\n constructor(setup: InternalSetupStruct) {\n setup.db = new Database();\n setup.cbor = new Cbor(CborReader.decode, (base64String) => Buffer.from(base64String, 'base64'));\n\n setup.PubNubFile = PubNubFile;\n\n setup.networking = new Networking({ del, get, post, patch, getfile, postfile });\n setup.sdkFamily = 'ReactNative';\n setup.ssl = true;\n\n super(setup);\n }\n}\n"],"file":"index.js"} \ No newline at end of file diff --git a/lib/titanium/index.js b/lib/titanium/index.js index 7f92c85ce..83d624d75 100644 --- a/lib/titanium/index.js +++ b/lib/titanium/index.js @@ -31,7 +31,7 @@ var _flow_interfaces = require("../core/flow_interfaces"); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var PubNub = function (_PubNubCore) { (0, _inherits2["default"])(PubNub, _PubNubCore); diff --git a/lib/web/index.js b/lib/web/index.js index 48cfea7af..3103d9fa1 100644 --- a/lib/web/index.js +++ b/lib/web/index.js @@ -39,7 +39,7 @@ var _web3 = _interopRequireDefault(require("../file/modules/web")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; } -function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } function sendBeacon(url) { if (navigator && navigator.sendBeacon) { diff --git a/lib/web/index.js.map b/lib/web/index.js.map index 48f750cc3..85a93b880 100644 --- a/lib/web/index.js.map +++ b/lib/web/index.js.map @@ -1 +1 @@ -{"version":3,"sources":["web/index.js"],"names":["sendBeacon","url","navigator","base64ToBinary","base64String","parsedWordArray","CryptoJS","enc","Base64","parse","words","arrayBuffer","ArrayBuffer","length","view","Uint8Array","filledArrayBuffer","zeroBytesCount","byteOffset","wordIdx","word","byteIdx","buffer","slice","byteLength","stringifyBufferKeys","obj","isObject","value","constructor","Object","isString","String","isNumber","isFinite","normalizedObject","keys","forEach","key","keyIsString","stringifiedKey","Array","isArray","indexOf","bytes","split","reduce","string","byte","fromCharCode","isNaN","parseInt","setup","listenToBrowserNetworkEvents","db","sdkFamily","networking","Networking","del","get","post","patch","getfile","postfile","cbor","Cbor","CborReader","decode","PubNubFile","cryptography","WebCryptography","window","addEventListener","networkDownDetected","networkUpDetected","PubNubCore"],"mappings":"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","sourcesContent":["/* @flow */\n/* eslint no-bitwise: [\"error\", { \"allow\": [\"~\", \"&\", \">>\"] }] */\n/* global navigator, window */\n\nimport CborReader from 'cbor-js';\nimport PubNubCore from '../core/pubnub-common';\nimport Networking from '../networking';\nimport CryptoJS from '../core/components/cryptography/hmac-sha256';\nimport db from '../db/web';\nimport Cbor from '../cbor/common';\nimport { del, get, post, patch, getfile, postfile } from '../networking/modules/web-node';\nimport { InternalSetupStruct } from '../core/flow_interfaces';\n\nimport WebCryptography from '../crypto/modules/web';\nimport PubNubFile from '../file/modules/web';\n\nfunction sendBeacon(url: string) {\n if (navigator && navigator.sendBeacon) {\n navigator.sendBeacon(url);\n } else {\n return false;\n }\n}\n\nfunction base64ToBinary(base64String: string) {\n const parsedWordArray = CryptoJS.enc.Base64.parse(base64String).words;\n const arrayBuffer = new ArrayBuffer(parsedWordArray.length * 4);\n const view = new Uint8Array(arrayBuffer);\n let filledArrayBuffer = null;\n let zeroBytesCount = 0;\n let byteOffset = 0;\n\n for (let wordIdx = 0; wordIdx < parsedWordArray.length; wordIdx += 1) {\n const word = parsedWordArray[wordIdx];\n byteOffset = wordIdx * 4;\n view[byteOffset] = (word & 0xff000000) >> 24;\n view[byteOffset + 1] = (word & 0x00ff0000) >> 16;\n view[byteOffset + 2] = (word & 0x0000ff00) >> 8;\n view[byteOffset + 3] = word & 0x000000ff;\n }\n\n for (let byteIdx = byteOffset + 3; byteIdx >= byteOffset; byteIdx -= 1) {\n if (view[byteIdx] === 0) {\n zeroBytesCount += 1;\n }\n }\n\n if (zeroBytesCount > 0) {\n filledArrayBuffer = view.buffer.slice(0, view.byteLength - zeroBytesCount);\n } else {\n filledArrayBuffer = view.buffer;\n }\n\n return filledArrayBuffer;\n}\n\nfunction stringifyBufferKeys(obj) {\n const isObject = (value) => value && typeof value === 'object' && value.constructor === Object;\n const isString = (value) => typeof value === 'string' || value instanceof String;\n const isNumber = (value) => typeof value === 'number' && isFinite(value);\n\n if (!isObject(obj)) {\n return obj;\n }\n\n const normalizedObject = {};\n\n Object.keys(obj).forEach((key: any) => {\n const keyIsString = isString(key);\n let stringifiedKey = key;\n let value = obj[key];\n\n if (Array.isArray(key) || (keyIsString && key.indexOf(',') >= 0)) {\n const bytes: Array = keyIsString ? key.split(',') : key;\n\n stringifiedKey = bytes.reduce((string, byte) => {\n string += String.fromCharCode(byte);\n return string;\n }, '');\n } else if (isNumber(key) || (keyIsString && !isNaN(key))) {\n stringifiedKey = String.fromCharCode(keyIsString ? parseInt(key, 10) : 10);\n }\n\n normalizedObject[stringifiedKey] = isObject(value) ? stringifyBufferKeys(value) : value;\n });\n\n return normalizedObject;\n}\n\nexport default class extends PubNubCore {\n constructor(setup: InternalSetupStruct) {\n // extract config.\n const { listenToBrowserNetworkEvents = true } = setup;\n\n setup.db = db;\n setup.sdkFamily = 'Web';\n setup.networking = new Networking({ del, get, post, patch, sendBeacon, getfile, postfile });\n setup.cbor = new Cbor((arrayBuffer) => stringifyBufferKeys(CborReader.decode(arrayBuffer)), base64ToBinary);\n\n setup.PubNubFile = PubNubFile;\n setup.cryptography = new WebCryptography();\n\n super(setup);\n\n if (listenToBrowserNetworkEvents) {\n // mount network events.\n window.addEventListener('offline', () => {\n this.networkDownDetected();\n });\n\n window.addEventListener('online', () => {\n this.networkUpDetected();\n });\n }\n }\n}\n"],"file":"index.js"} \ No newline at end of file +{"version":3,"sources":["web/index.js"],"names":["sendBeacon","url","navigator","base64ToBinary","base64String","parsedWordArray","CryptoJS","enc","Base64","parse","words","arrayBuffer","ArrayBuffer","length","view","Uint8Array","filledArrayBuffer","zeroBytesCount","byteOffset","wordIdx","word","byteIdx","buffer","slice","byteLength","stringifyBufferKeys","obj","isObject","value","constructor","Object","isString","String","isNumber","isFinite","normalizedObject","keys","forEach","key","keyIsString","stringifiedKey","Array","isArray","indexOf","bytes","split","reduce","string","byte","fromCharCode","isNaN","parseInt","setup","listenToBrowserNetworkEvents","db","sdkFamily","networking","Networking","del","get","post","patch","getfile","postfile","cbor","Cbor","CborReader","decode","PubNubFile","cryptography","WebCryptography","window","addEventListener","networkDownDetected","networkUpDetected","PubNubCore"],"mappings":"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","sourcesContent":["/* @flow */\n/* eslint no-bitwise: [\"error\", { \"allow\": [\"~\", \"&\", \">>\"] }] */\n/* global navigator, window */\n\nimport CborReader from 'cbor-js';\nimport PubNubCore from '../core/pubnub-common';\nimport Networking from '../networking';\nimport CryptoJS from '../core/components/cryptography/hmac-sha256';\nimport db from '../db/web';\nimport Cbor from '../cbor/common';\nimport { del, get, post, patch, getfile, postfile } from '../networking/modules/web-node';\nimport { InternalSetupStruct } from '../core/flow_interfaces';\n\nimport WebCryptography from '../crypto/modules/web';\nimport PubNubFile from '../file/modules/web';\n\nfunction sendBeacon(url: string) {\n if (navigator && navigator.sendBeacon) {\n navigator.sendBeacon(url);\n } else {\n return false;\n }\n}\n\nfunction base64ToBinary(base64String: string) {\n const parsedWordArray = CryptoJS.enc.Base64.parse(base64String).words;\n const arrayBuffer = new ArrayBuffer(parsedWordArray.length * 4);\n const view = new Uint8Array(arrayBuffer);\n let filledArrayBuffer = null;\n let zeroBytesCount = 0;\n let byteOffset = 0;\n\n for (let wordIdx = 0; wordIdx < parsedWordArray.length; wordIdx += 1) {\n const word = parsedWordArray[wordIdx];\n byteOffset = wordIdx * 4;\n view[byteOffset] = (word & 0xff000000) >> 24;\n view[byteOffset + 1] = (word & 0x00ff0000) >> 16;\n view[byteOffset + 2] = (word & 0x0000ff00) >> 8;\n view[byteOffset + 3] = word & 0x000000ff;\n }\n\n for (let byteIdx = byteOffset + 3; byteIdx >= byteOffset; byteIdx -= 1) {\n if (view[byteIdx] === 0) {\n zeroBytesCount += 1;\n }\n }\n\n if (zeroBytesCount > 0) {\n filledArrayBuffer = view.buffer.slice(0, view.byteLength - zeroBytesCount);\n } else {\n filledArrayBuffer = view.buffer;\n }\n\n return filledArrayBuffer;\n}\n\nfunction stringifyBufferKeys(obj) {\n const isObject = (value) => value && typeof value === 'object' && value.constructor === Object;\n const isString = (value) => typeof value === 'string' || value instanceof String;\n const isNumber = (value) => typeof value === 'number' && isFinite(value);\n\n if (!isObject(obj)) {\n return obj;\n }\n\n const normalizedObject = {};\n\n Object.keys(obj).forEach((key: any) => {\n const keyIsString = isString(key);\n let stringifiedKey = key;\n let value = obj[key];\n\n if (Array.isArray(key) || (keyIsString && key.indexOf(',') >= 0)) {\n const bytes: Array = keyIsString ? key.split(',') : key;\n\n stringifiedKey = bytes.reduce((string, byte) => {\n string += String.fromCharCode(byte);\n return string;\n }, '');\n } else if (isNumber(key) || (keyIsString && !isNaN(key))) {\n stringifiedKey = String.fromCharCode(keyIsString ? parseInt(key, 10) : 10);\n }\n\n normalizedObject[stringifiedKey] = isObject(value) ? stringifyBufferKeys(value) : value;\n });\n\n return normalizedObject;\n}\n\nexport default class extends PubNubCore {\n constructor(setup: InternalSetupStruct) {\n // extract config.\n const { listenToBrowserNetworkEvents = true } = setup;\n\n setup.db = db;\n setup.sdkFamily = 'Web';\n setup.networking = new Networking({ del, get, post, patch, sendBeacon, getfile, postfile });\n setup.cbor = new Cbor((arrayBuffer) => stringifyBufferKeys(CborReader.decode(arrayBuffer)), base64ToBinary);\n\n setup.PubNubFile = PubNubFile;\n setup.cryptography = new WebCryptography();\n\n super(setup);\n\n if (listenToBrowserNetworkEvents) {\n // mount network events.\n window.addEventListener('offline', () => {\n this.networkDownDetected();\n });\n\n window.addEventListener('online', () => {\n this.networkUpDetected();\n });\n }\n }\n}\n"],"file":"index.js"} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 3b5a6a275..2b82f342d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,1127 +1,1119 @@ { "name": "pubnub", - "version": "4.30.1", - "lockfileVersion": 2, + "version": "5.0.0", + "lockfileVersion": 1, "requires": true, - "packages": { - "": { - "name": "pubnub", - "version": "4.30.1", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.10.5", - "agentkeepalive": "^3.5.2", - "cbor-js": "^0.1.0", - "cbor-sync": "^1.0.4", - "isomorphic-webcrypto": "^2.3.6", - "lil-uuid": "^0.1.1", - "superagent": "^3.8.1", - "superagent-proxy": "^2.0.0" - }, - "devDependencies": { - "@babel/core": "^7.7.7", - "@babel/plugin-proposal-class-properties": "^7.7.4", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-proposal-optional-chaining": "^7.9.0", - "@babel/plugin-transform-flow-strip-types": "^7.7.4", - "@babel/plugin-transform-modules-commonjs": "^7.7.5", - "@babel/plugin-transform-runtime": "^7.10.5", - "@babel/polyfill": "^7.8.7", - "@babel/preset-env": "^7.7.7", - "@babel/register": "^7.7.7", - "babel-eslint": "^10.0.3", - "babel-loader": "^8.0.6", - "babel-plugin-add-module-exports": "^1.0.2", - "chai": "^4.2.0", - "chai-as-promised": "^7.1.1", - "chai-nock": "^1.2.0", - "eslint-config-airbnb": "^17.1.1", - "eslint-plugin-flowtype": "^3.13.0", - "eslint-plugin-import": "^2.19.1", - "eslint-plugin-mocha": "^6.2.2", - "flow-bin": "^0.103.0", - "gulp": "^4.0.2", - "gulp-babel": "^8.0.0", - "gulp-clean": "^0.4.0", - "gulp-eslint": "^6.0.0", - "gulp-exec": "^4.0.0", - "gulp-gzip": "^1.4.2", - "gulp-istanbul": "git+https://github.com/raipubnub/gulp-istanbul.git#gulp4", - "gulp-mocha": "^7.0.2", - "gulp-rename": "^1.4.0", - "gulp-sourcemaps": "^2.6.5", - "gulp-terser": "^1.2.0", - "gulp-uglify": "^3.0.2", - "gulp-unzip": "^1.1.0", - "gulp4-run-sequence": "^0.4.0", - "imports-loader": "^0.7.0", - "js-yaml": "^3.13.1", - "json-loader": "^0.5.7", - "karma": "^5.0.3", - "karma-babel-preprocessor": "^8.0.1", - "karma-chai": "^0.1.0", - "karma-chrome-launcher": "^3.1.0", - "karma-coverage": "^2.0.2", - "karma-mocha": "^2.0.1", - "karma-phantomjs-launcher": "^1.0.4", - "karma-sinon-chai": "^2.0.2", - "karma-sourcemap-loader": "^0.3.7", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "^4.0.2", - "mocha": "^7.1.2", - "nock": "^9.6.1", - "node-fetch": "^1.7.3", - "nyc": "^15.0.1", - "phantomjs-prebuilt": "^2.1.16", - "puppeteer": "^5.2.0", - "rimraf": "^3.0.2", - "sinon": "^7.5.0", - "sinon-chai": "^3.3.0", - "stats-webpack-plugin": "^0.7.0", - "terser": "^4.8.0", - "uglify-js": "^2.8.26", - "underscore": "^1.9.2", - "webpack": "^4.41.2", - "webpack-stream": "^5.2.1", - "wrapper-webpack-plugin": "^2.1.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", + "dependencies": { + "@babel/code-frame": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.0.tgz", + "integrity": "sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==", "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" + "requires": { + "@babel/highlight": "^7.16.0" } }, - "node_modules/@babel/compat-data": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz", - "integrity": "sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==", - "dev": true, - "dependencies": { - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "semver": "^5.5.0" - } + "@babel/compat-data": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.4.tgz", + "integrity": "sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==", + "dev": true }, - "node_modules/@babel/core": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", - "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-module-transforms": "^7.11.0", - "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.1", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.11.0", - "@babel/types": "^7.11.0", + "@babel/core": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.0.tgz", + "integrity": "sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helpers": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", + "gensync": "^1.0.0-beta.2", "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", + "semver": "^6.3.0", "source-map": "^0.5.0" }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/@babel/core/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } } }, - "node_modules/@babel/generator": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", - "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", + "@babel/generator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.0.tgz", + "integrity": "sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew==", "dev": true, - "dependencies": { - "@babel/types": "^7.11.0", + "requires": { + "@babel/types": "^7.16.0", "jsesc": "^2.5.1", "source-map": "^0.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } } }, - "node_modules/@babel/generator/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz", - "integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==", + "@babel/helper-annotate-as-pure": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.0.tgz", + "integrity": "sha512-ItmYF9vR4zA8cByDocY05o0LGUkp1zhbTQOH1NFyl5xXEqlTJQCEJjieriw+aFpxo16swMxUnUiKS7a/r4vtHg==", "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", - "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.0.tgz", + "integrity": "sha512-9KuleLT0e77wFUku6TUkqZzCEymBdtuQQ27MhEKzf9UOOJu3cYj98kyaDAzxpC7lV6DGiZFuC8XqDsq8/Kl6aQ==", "dev": true, - "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/helper-explode-assignable-expression": "^7.16.0", + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz", - "integrity": "sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==", + "@babel/helper-compilation-targets": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz", + "integrity": "sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA==", "dev": true, + "requires": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-validator-option": "^7.14.5", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + }, "dependencies": { - "@babel/compat-data": "^7.10.4", - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "levenary": "^1.1.1", - "semver": "^5.5.0" + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, - "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz", - "integrity": "sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==", + "@babel/helper-create-class-features-plugin": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.0.tgz", + "integrity": "sha512-XLwWvqEaq19zFlF5PTgOod4bUA+XbkR4WLQBct1bkzmxJGB0ZEJaoKF4c8cgH9oBtCDuYJ8BP5NB9uFiEgO5QA==", "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-member-expression-to-functions": "^7.10.5", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4" + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0" } }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz", - "integrity": "sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==", + "@babel/helper-create-regexp-features-plugin": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.0.tgz", + "integrity": "sha512-3DyG0zAFAZKcOp7aVr33ddwkxJ0Z0Jr5V99y3I690eYLpukJsJvAbzTy1ewoCqsML8SbIrjH14Jc/nSQ4TvNPA==", "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-regex": "^7.10.4", - "regexpu-core": "^4.7.0" + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "regexpu-core": "^4.7.1" } }, - "node_modules/@babel/helper-define-map": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", - "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", + "@babel/helper-define-polyfill-provider": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.0.tgz", + "integrity": "sha512-7hfT8lUljl/tM3h+izTX/pO3W3frz2ok6Pk+gzys8iJqDfZrZy2pXjRTZAvG2YmfHun1X4q8/UZRLatMfqc5Tg==", "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, "dependencies": { - "@babel/helper-function-name": "^7.10.4", - "@babel/types": "^7.10.5", - "lodash": "^4.17.19" + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz", - "integrity": "sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A==", + "@babel/helper-explode-assignable-expression": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.0.tgz", + "integrity": "sha512-Hk2SLxC9ZbcOhLpg/yMznzJ11W++lg5GMbxt1ev6TXUiJB0N42KPC+7w8a+eWGuqDnUYuwStJoZHM7RgmIOaGQ==", "dev": true, - "dependencies": { - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", - "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", + "@babel/helper-function-name": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz", + "integrity": "sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog==", "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/helper-get-function-arity": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-get-function-arity": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", - "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", + "@babel/helper-get-function-arity": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz", + "integrity": "sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ==", "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz", - "integrity": "sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==", + "@babel/helper-hoist-variables": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz", + "integrity": "sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg==", "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", - "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", + "@babel/helper-member-expression-to-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz", + "integrity": "sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ==", "dev": true, - "dependencies": { - "@babel/types": "^7.11.0" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", - "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", + "@babel/helper-module-imports": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz", + "integrity": "sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==", "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", - "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", + "@babel/helper-module-transforms": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz", + "integrity": "sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA==", "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/template": "^7.10.4", - "@babel/types": "^7.11.0", - "lodash": "^4.17.19" + "requires": { + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-simple-access": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/helper-validator-identifier": "^7.15.7", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", - "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", + "@babel/helper-optimise-call-expression": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz", + "integrity": "sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw==", "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", + "@babel/helper-plugin-utils": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", "dev": true }, - "node_modules/@babel/helper-regex": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz", - "integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==", + "@babel/helper-remap-async-to-generator": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.4.tgz", + "integrity": "sha512-vGERmmhR+s7eH5Y/cp8PCVzj4XEjerq8jooMfxFdA5xVtAk9Sh4AQsrWgiErUEBjtGrBtOFKDUcWQFW4/dFwMA==", "dev": true, - "dependencies": { - "lodash": "^4.17.19" + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-wrap-function": "^7.16.0", + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz", - "integrity": "sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg==", + "@babel/helper-replace-supers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz", + "integrity": "sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA==", "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-wrap-function": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/helper-member-expression-to-functions": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", - "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", + "@babel/helper-simple-access": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz", + "integrity": "sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw==", "dev": true, - "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-simple-access": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", - "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", "dev": true, - "dependencies": { - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz", - "integrity": "sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==", + "@babel/helper-split-export-declaration": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz", + "integrity": "sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw==", "dev": true, - "dependencies": { - "@babel/types": "^7.11.0" + "requires": { + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", - "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.11.0" - } + "@babel/helper-validator-identifier": { + "version": "7.15.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "dev": true }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", - "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", + "@babel/helper-validator-option": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==", "dev": true }, - "node_modules/@babel/helper-wrap-function": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz", - "integrity": "sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==", + "@babel/helper-wrap-function": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.0.tgz", + "integrity": "sha512-VVMGzYY3vkWgCJML+qVLvGIam902mJW0FvT7Avj1zEe0Gn7D93aWdLblYARTxEw+6DhZmtzhBM2zv0ekE5zg1g==", "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/helper-function-name": "^7.16.0", + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.0", + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/helpers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", - "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", + "@babel/helpers": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.3.tgz", + "integrity": "sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w==", "dev": true, - "dependencies": { - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/template": "^7.16.0", + "@babel/traverse": "^7.16.3", + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/highlight": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", - "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", + "@babel/highlight": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz", + "integrity": "sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==", "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", + "requires": { + "@babel/helper-validator-identifier": "^7.15.7", "chalk": "^2.0.0", "js-tokens": "^4.0.0" } }, - "node_modules/@babel/parser": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.1.tgz", - "integrity": "sha512-u9QMIRdKVF7hfEkb3nu2LgZDIzCQPv+yHD9Eg6ruoJLjkrQ9fFz4IBSlF/9XwoNri9+2F1IY+dYuOfZrXq8t3w==", + "@babel/parser": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz", + "integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==", + "dev": true + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.16.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.2.tgz", + "integrity": "sha512-h37CvpLSf8gb2lIJ2CgC3t+EjFbi0t8qS7LCS1xcJIlEXE4czlofwaW7W1HA8zpgOCzI9C1nmoqNR1zWkk0pQg==", "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz", - "integrity": "sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.0.tgz", + "integrity": "sha512-4tcFwwicpWTrpl9qjf7UsoosaArgImF85AxqCRZlgc3IQDvkUHjJpruXAL58Wmj+T6fypWTC/BakfEkwIL/pwA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.0" } }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz", - "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==", + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.4.tgz", + "integrity": "sha512-/CUekqaAaZCQHleSK/9HajvcD/zdnJiKRiuUFq8ITE+0HsPzquf53cpFiqAwl/UfmJbR6n5uGPQSPdrmKOvHHg==", "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.16.4", + "@babel/plugin-syntax-async-generators": "^7.8.4" } }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz", - "integrity": "sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==", + "@babel/plugin-proposal-class-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.0.tgz", + "integrity": "sha512-mCF3HcuZSY9Fcx56Lbn+CGdT44ioBMMvjNVldpKtj8tpniETdLjnxdHI1+sDWXIM1nNt+EanJOZ3IG9lzVjs7A==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" + "requires": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz", - "integrity": "sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==", + "@babel/plugin-proposal-class-static-block": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.0.tgz", + "integrity": "sha512-mAy3sdcY9sKAkf3lQbDiv3olOfiLqI51c9DR9b19uMoR2Z6r5pmGl7dfNFqEvqOyqbf1ta4lknK4gc5PJn3mfA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.0.tgz", + "integrity": "sha512-QGSA6ExWk95jFQgwz5GQ2Dr95cf7eI7TKutIXXTb7B1gCLTCz5hTjFTQGfLFBBiC5WSNi7udNwWsqbbMh1c4yQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.0.tgz", + "integrity": "sha512-CjI4nxM/D+5wCnhD11MHB1AwRSAYeDT+h8gCdcVJZ/OK7+wRzFsf7PFPWVpVpNRkHMmMkQWAHpTq+15IXQ1diA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-export-namespace-from": "^7.8.3" } }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz", - "integrity": "sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==", + "@babel/plugin-proposal-json-strings": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.0.tgz", + "integrity": "sha512-kouIPuiv8mSi5JkEhzApg5Gn6hFyKPnlkO0a9YSzqRurH8wYzSlf6RJdzluAsbqecdW5pBvDJDfyDIUR/vLxvg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.0" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" } }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz", - "integrity": "sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==", + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.0.tgz", + "integrity": "sha512-pbW0fE30sVTYXXm9lpVQQ/Vc+iTeQKiXlaNRZPPN2A2VdlWyAtsUrsQ3xydSlDW00TFMK7a8m3cDTkBF5WnV3Q==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" } }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz", - "integrity": "sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==", + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.0.tgz", + "integrity": "sha512-3bnHA8CAFm7cG93v8loghDYyQ8r97Qydf63BeYiGgYbjKKB/XP53W15wfRC7dvKfoiJ34f6Rbyyx2btExc8XsQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" } }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz", - "integrity": "sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==", + "@babel/plugin-proposal-numeric-separator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.0.tgz", + "integrity": "sha512-FAhE2I6mjispy+vwwd6xWPyEx3NYFS13pikDBWUAFGZvq6POGs5eNchw8+1CYoEgBl9n11I3NkzD7ghn25PQ9Q==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", "@babel/plugin-syntax-numeric-separator": "^7.10.4" } }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz", - "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==", + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.0.tgz", + "integrity": "sha512-LU/+jp89efe5HuWJLmMmFG0+xbz+I2rSI7iLc1AlaeSMDMOGzWlc5yJrMN1d04osXN4sSfpo4O+azkBNBes0jg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.10.4" + "requires": { + "@babel/compat-data": "^7.16.0", + "@babel/helper-compilation-targets": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.16.0" } }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz", - "integrity": "sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==", + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.0.tgz", + "integrity": "sha512-kicDo0A/5J0nrsCPbn89mTG3Bm4XgYi0CZtvex9Oyw7gGZE3HXGD0zpQNH+mo+tEfbo8wbmMvJftOwpmPy7aVw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" } }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz", - "integrity": "sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==", + "@babel/plugin-proposal-optional-chaining": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.0.tgz", + "integrity": "sha512-Y4rFpkZODfHrVo70Uaj6cC1JJOt3Pp0MdWSwIKtb8z1/lsjl9AmnB7ErRFV+QNGIfcY1Eruc2UMx5KaRnXjMyg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" } }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz", - "integrity": "sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==", + "@babel/plugin-proposal-private-methods": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.0.tgz", + "integrity": "sha512-IvHmcTHDFztQGnn6aWq4t12QaBXTKr1whF/dgp9kz84X6GUcwq9utj7z2wFCUfeOup/QKnOlt2k0zxkGFx9ubg==", "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz", - "integrity": "sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==", + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.0.tgz", + "integrity": "sha512-3jQUr/HBbMVZmi72LpjQwlZ55i1queL8KcDTQEkAHihttJnAPrcvG9ZNXIfsd2ugpizZo595egYV6xy+pv4Ofw==", "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - }, - "engines": { - "node": ">=4" + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-create-class-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" } }, - "node_modules/@babel/plugin-syntax-async-generators": { + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.0.tgz", + "integrity": "sha512-ti7IdM54NXv29cA4+bNNKEMS4jLMCbJgl+Drv+FgYy0erJLAxNAIXcNjNjrRZEcWq0xJHsNVwQezskMFpF8N9g==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", - "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-syntax-dynamic-import": { + "@babel/plugin-syntax-dynamic-import": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { + "@babel/plugin-syntax-export-namespace-from": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.8.3" } }, - "node_modules/@babel/plugin-syntax-flow": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.10.4.tgz", - "integrity": "sha512-yxQsX1dJixF4qEEdzVbst3SZQ58Nrooz8NV9Z9GL4byTE25BvJgl5lf0RECUf0fh28rZBb/RYTWn/eeKwCMrZQ==", + "@babel/plugin-syntax-flow": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.16.0.tgz", + "integrity": "sha512-dH91yCo0RyqfzWgoM5Ji9ir8fQ+uFbt9KHM3d2x4jZOuHS6wNA+CRmRUP/BWCsHG2bjc7A2Way6AvH1eQk0wig==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-syntax-json-strings": { + "@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.10.4" } }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "@babel/plugin-syntax-nullish-coalescing-operator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/@babel/plugin-syntax-numeric-separator": { + "@babel/plugin-syntax-numeric-separator": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.10.4" } }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { + "@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "@babel/plugin-syntax-optional-catch-binding": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/@babel/plugin-syntax-optional-chaining": { + "@babel/plugin-syntax-optional-chaining": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", - "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz", - "integrity": "sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==", + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz", - "integrity": "sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==", + "@babel/plugin-transform-arrow-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.0.tgz", + "integrity": "sha512-vIFb5250Rbh7roWARvCLvIJ/PtAU5Lhv7BtZ1u24COwpI9Ypjsh+bZcKk6rlIyalK+r0jOc1XQ8I4ovNxNrWrA==", "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz", - "integrity": "sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==", + "@babel/plugin-transform-async-to-generator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.0.tgz", + "integrity": "sha512-PbIr7G9kR8tdH6g8Wouir5uVjklETk91GMVSUq+VaOgiinbCkBP6Q7NN/suM/QutZkMJMvcyAriogcYAdhg8Gw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-remap-async-to-generator": "^7.16.0" } }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz", - "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.0.tgz", + "integrity": "sha512-V14As3haUOP4ZWrLJ3VVx5rCnrYhMSHN/jX7z6FAt5hjRkLsb0snPCmJwSOML5oxkKO4FNoNv7V5hw/y2bjuvg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz", - "integrity": "sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==", + "@babel/plugin-transform-block-scoping": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.0.tgz", + "integrity": "sha512-27n3l67/R3UrXfizlvHGuTwsRIFyce3D/6a37GRxn28iyTPvNXaW4XvznexRh1zUNLPjbLL22Id0XQElV94ruw==", "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-define-map": "^7.10.4", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4", + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.0.tgz", + "integrity": "sha512-HUxMvy6GtAdd+GKBNYDWCIA776byUQH8zjnfjxwT1P1ARv/wFu8eBDpmXQcLS/IwRtrxIReGiplOwMeyO7nsDQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-optimise-call-expression": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", "globals": "^11.1.0" } }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz", - "integrity": "sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==", + "@babel/plugin-transform-computed-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.0.tgz", + "integrity": "sha512-63l1dRXday6S8V3WFY5mXJwcRAnPYxvFfTlt67bwV1rTyVTM5zrp0DBBb13Kl7+ehkCVwIZPumPpFP/4u70+Tw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz", - "integrity": "sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==", + "@babel/plugin-transform-destructuring": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.0.tgz", + "integrity": "sha512-Q7tBUwjxLTsHEoqktemHBMtb3NYwyJPTJdM+wDwb0g8PZ3kQUIzNvwD5lPaqW/p54TXBc/MXZu9Jr7tbUEUM8Q==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz", - "integrity": "sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==", + "@babel/plugin-transform-dotall-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.0.tgz", + "integrity": "sha512-FXlDZfQeLILfJlC6I1qyEwcHK5UpRCFkaoVyA1nk9A1L1Yu583YO4un2KsLBsu3IJb4CUbctZks8tD9xPQubLw==", "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz", - "integrity": "sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==", + "@babel/plugin-transform-duplicate-keys": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.0.tgz", + "integrity": "sha512-LIe2kcHKAZOJDNxujvmp6z3mfN6V9lJxubU4fJIGoQCkKe3Ec2OcbdlYP+vW++4MpxwG0d1wSDOJtQW5kLnkZQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz", - "integrity": "sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==", + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.0.tgz", + "integrity": "sha512-OwYEvzFI38hXklsrbNivzpO3fh87skzx8Pnqi4LoSYeav0xHlueSoCJrSgTPfnbyzopo5b3YVAJkFIcUpK2wsw==", "dev": true, - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-flow-strip-types": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.10.4.tgz", - "integrity": "sha512-XTadyuqNst88UWBTdLjM+wEY7BFnY2sYtPyAidfC7M/QaZnSuIZpMvLxqGT7phAcnGyWh/XQFLKcGf04CnvxSQ==", + "@babel/plugin-transform-flow-strip-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.16.0.tgz", + "integrity": "sha512-vs/F5roOaO/+WxKfp9PkvLsAyj0G+Q0zbFimHm9X2KDgabN2XmNFoAafmeGEYspUlIF9+MvVmyek9UyHiqeG/w==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-flow": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/plugin-syntax-flow": "^7.16.0" } }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz", - "integrity": "sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==", + "@babel/plugin-transform-for-of": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.0.tgz", + "integrity": "sha512-5QKUw2kO+GVmKr2wMYSATCTTnHyscl6sxFRAY+rvN7h7WB0lcG0o4NoV6ZQU32OZGVsYUsfLGgPQpDFdkfjlJQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz", - "integrity": "sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==", + "@babel/plugin-transform-function-name": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.0.tgz", + "integrity": "sha512-lBzMle9jcOXtSOXUpc7tvvTpENu/NuekNJVova5lCCWCV9/U1ho2HH2y0p6mBg8fPm/syEAbfaaemYGOHCY3mg==", "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz", - "integrity": "sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==", + "@babel/plugin-transform-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.0.tgz", + "integrity": "sha512-gQDlsSF1iv9RU04clgXqRjrPyyoJMTclFt3K1cjLmTKikc0s/6vE3hlDeEVC71wLTRu72Fq7650kABrdTc2wMQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz", - "integrity": "sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==", + "@babel/plugin-transform-member-expression-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.0.tgz", + "integrity": "sha512-WRpw5HL4Jhnxw8QARzRvwojp9MIE7Tdk3ez6vRyUk1MwgjJN0aNpRoXainLR5SgxmoXx/vsXGZ6OthP6t/RbUg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz", - "integrity": "sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==", + "@babel/plugin-transform-modules-amd": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.0.tgz", + "integrity": "sha512-rWFhWbCJ9Wdmzln1NmSCqn7P0RAD+ogXG/bd9Kg5c7PKWkJtkiXmYsMBeXjDlzHpVTJ4I/hnjs45zX4dEv81xw==", "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", + "requires": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", "babel-plugin-dynamic-import-node": "^2.3.3" } }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz", - "integrity": "sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==", + "@babel/plugin-transform-modules-commonjs": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.0.tgz", + "integrity": "sha512-Dzi+NWqyEotgzk/sb7kgQPJQf7AJkQBWsVp1N6JWc1lBVo0vkElUnGdr1PzUBmfsCCN5OOFya3RtpeHk15oLKQ==", "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", + "requires": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-simple-access": "^7.16.0", "babel-plugin-dynamic-import-node": "^2.3.3" } }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz", - "integrity": "sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==", + "@babel/plugin-transform-modules-systemjs": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.0.tgz", + "integrity": "sha512-yuGBaHS3lF1m/5R+6fjIke64ii5luRUg97N2wr+z1sF0V+sNSXPxXDdEEL/iYLszsN5VKxVB1IPfEqhzVpiqvg==", "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.10.4", - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", + "requires": { + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-identifier": "^7.15.7", "babel-plugin-dynamic-import-node": "^2.3.3" } }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz", - "integrity": "sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==", + "@babel/plugin-transform-modules-umd": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.0.tgz", + "integrity": "sha512-nx4f6no57himWiHhxDM5pjwhae5vLpTK2zCnDH8+wNLJy0TVER/LJRHl2bkt6w9Aad2sPD5iNNoUpY3X9sTGDg==", "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-module-transforms": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz", - "integrity": "sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==", + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.0.tgz", + "integrity": "sha512-LogN88uO+7EhxWc8WZuQ8vxdSyVGxhkh8WTC3tzlT8LccMuQdA81e9SGV6zY7kY2LjDhhDOFdQVxdGwPyBCnvg==", "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4" + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0" } }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz", - "integrity": "sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==", + "@babel/plugin-transform-new-target": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.0.tgz", + "integrity": "sha512-fhjrDEYv2DBsGN/P6rlqakwRwIp7rBGLPbrKxwh7oVt5NNkIhZVOY2GRV+ULLsQri1bDqwDWnU3vhlmx5B2aCw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz", - "integrity": "sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==", + "@babel/plugin-transform-object-super": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.0.tgz", + "integrity": "sha512-fds+puedQHn4cPLshoHcR1DTMN0q1V9ou0mUjm8whx9pGcNvDrVVrgw+KJzzCaiTdaYhldtrUps8DWVMgrSEyg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-replace-supers": "^7.16.0" } }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz", - "integrity": "sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==", + "@babel/plugin-transform-parameters": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.3.tgz", + "integrity": "sha512-3MaDpJrOXT1MZ/WCmkOFo7EtmVVC8H4EUZVrHvFOsmwkk4lOjQj8rzv8JKUZV4YoQKeoIgk07GO+acPU9IMu/w==", "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz", - "integrity": "sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==", + "@babel/plugin-transform-property-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.0.tgz", + "integrity": "sha512-XLldD4V8+pOqX2hwfWhgwXzGdnDOThxaNTgqagOcpBgIxbUvpgU2FMvo5E1RyHbk756WYgdbS0T8y0Cj9FKkWQ==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz", - "integrity": "sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==", + "@babel/plugin-transform-regenerator": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.0.tgz", + "integrity": "sha512-JAvGxgKuwS2PihiSFaDrp94XOzzTUeDeOQlcKzVAyaPap7BnZXK/lvMDiubkPTdotPKOIZq9xWXWnggUMYiExg==", "dev": true, - "dependencies": { + "requires": { "regenerator-transform": "^0.14.2" } }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz", - "integrity": "sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==", + "@babel/plugin-transform-reserved-words": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.0.tgz", + "integrity": "sha512-Dgs8NNCehHSvXdhEhln8u/TtJxfVwGYCgP2OOr5Z3Ar+B+zXicEOKNTyc+eca2cuEOMtjW6m9P9ijOt8QdqWkg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-runtime": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.11.0.tgz", - "integrity": "sha512-LFEsP+t3wkYBlis8w6/kmnd6Kb1dxTd+wGJ8MlxTGzQo//ehtqlVL4S9DNUa53+dtPSQobN2CXx4d81FqC58cw==", + "@babel/plugin-transform-runtime": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.16.4.tgz", + "integrity": "sha512-pru6+yHANMTukMtEZGC4fs7XPwg35v8sj5CIEmE+gEkFljFiVJxEWxx/7ZDkTK+iZRYo1bFXBtfIN95+K3cJ5A==", "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.4.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "semver": "^6.3.0" + }, "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "resolve": "^1.8.1", - "semver": "^5.5.1" + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", - "integrity": "sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==", + "@babel/plugin-transform-shorthand-properties": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.0.tgz", + "integrity": "sha512-iVb1mTcD8fuhSv3k99+5tlXu5N0v8/DPm2mO3WACLG6al1CGZH7v09HJyUb1TtYl/Z+KrM6pHSIJdZxP5A+xow==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz", - "integrity": "sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==", + "@babel/plugin-transform-spread": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.0.tgz", + "integrity": "sha512-Ao4MSYRaLAQczZVp9/7E7QHsCuK92yHRrmVNRe/SlEJjhzivq0BSn8mEraimL8wizHZ3fuaHxKH0iwzI13GyGg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" } }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz", - "integrity": "sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==", + "@babel/plugin-transform-sticky-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.0.tgz", + "integrity": "sha512-/ntT2NljR9foobKk4E/YyOSwcGUXtYWv5tinMK/3RkypyNBNdhHUaq6Orw5DWq9ZcNlS03BIlEALFeQgeVAo4Q==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-regex": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz", - "integrity": "sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==", + "@babel/plugin-transform-template-literals": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.0.tgz", + "integrity": "sha512-Rd4Ic89hA/f7xUSJQk5PnC+4so50vBoBfxjdQAdvngwidM8jYIBVxBZ/sARxD4e0yMXRbJVDrYf7dyRtIIKT6Q==", "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz", - "integrity": "sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==", + "@babel/plugin-transform-typeof-symbol": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.0.tgz", + "integrity": "sha512-++V2L8Bdf4vcaHi2raILnptTBjGEFxn5315YU+e8+EqXIucA+q349qWngCLpUYqqv233suJ6NOienIVUpS9cqg==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz", - "integrity": "sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==", + "@babel/plugin-transform-unicode-escapes": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.0.tgz", + "integrity": "sha512-VFi4dhgJM7Bpk8lRc5CMaRGlKZ29W9C3geZjt9beuzSUrlJxsNwX7ReLwaL6WEvsOf2EQkyIJEPtF8EXjB/g2A==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz", - "integrity": "sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==", + "@babel/plugin-transform-unicode-regex": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.0.tgz", + "integrity": "sha512-jHLK4LxhHjvCeZDWyA9c+P9XH1sOxRd1RO9xMtDVRAOND/PczPqizEtVdx4TQF/wyPaewqpT+tgQFYMnN/P94A==", "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.16.0", + "@babel/helper-plugin-utils": "^7.14.5" } }, - "node_modules/@babel/polyfill": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", - "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", + "@babel/polyfill": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.12.1.tgz", + "integrity": "sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g==", "dev": true, - "dependencies": { + "requires": { "core-js": "^2.6.5", "regenerator-runtime": "^0.13.4" } }, - "node_modules/@babel/preset-env": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.11.0.tgz", - "integrity": "sha512-2u1/k7rG/gTh02dylX2kL3S0IJNF+J6bfDSp4DI2Ma8QN6Y9x9pmAax59fsCk6QUQG0yqH47yJWA+u1I1LccAg==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.11.0", - "@babel/helper-compilation-targets": "^7.10.4", - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-proposal-async-generator-functions": "^7.10.4", - "@babel/plugin-proposal-class-properties": "^7.10.4", - "@babel/plugin-proposal-dynamic-import": "^7.10.4", - "@babel/plugin-proposal-export-namespace-from": "^7.10.4", - "@babel/plugin-proposal-json-strings": "^7.10.4", - "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", - "@babel/plugin-proposal-numeric-separator": "^7.10.4", - "@babel/plugin-proposal-object-rest-spread": "^7.11.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", - "@babel/plugin-proposal-optional-chaining": "^7.11.0", - "@babel/plugin-proposal-private-methods": "^7.10.4", - "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-class-properties": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "@babel/preset-env": { + "version": "7.16.4", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.4.tgz", + "integrity": "sha512-v0QtNd81v/xKj4gNKeuAerQ/azeNn/G1B1qMLeXOcV8+4TWlD2j3NV1u8q29SDFBXx/NBq5kyEAO+0mpRgacjA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.16.4", + "@babel/helper-compilation-targets": "^7.16.3", + "@babel/helper-plugin-utils": "^7.14.5", + "@babel/helper-validator-option": "^7.14.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.16.2", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.16.0", + "@babel/plugin-proposal-async-generator-functions": "^7.16.4", + "@babel/plugin-proposal-class-properties": "^7.16.0", + "@babel/plugin-proposal-class-static-block": "^7.16.0", + "@babel/plugin-proposal-dynamic-import": "^7.16.0", + "@babel/plugin-proposal-export-namespace-from": "^7.16.0", + "@babel/plugin-proposal-json-strings": "^7.16.0", + "@babel/plugin-proposal-logical-assignment-operators": "^7.16.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.0", + "@babel/plugin-proposal-numeric-separator": "^7.16.0", + "@babel/plugin-proposal-object-rest-spread": "^7.16.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.0", + "@babel/plugin-proposal-private-methods": "^7.16.0", + "@babel/plugin-proposal-private-property-in-object": "^7.16.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.16.0", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0", + "@babel/plugin-syntax-json-strings": "^7.8.3", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.10.4", - "@babel/plugin-transform-arrow-functions": "^7.10.4", - "@babel/plugin-transform-async-to-generator": "^7.10.4", - "@babel/plugin-transform-block-scoped-functions": "^7.10.4", - "@babel/plugin-transform-block-scoping": "^7.10.4", - "@babel/plugin-transform-classes": "^7.10.4", - "@babel/plugin-transform-computed-properties": "^7.10.4", - "@babel/plugin-transform-destructuring": "^7.10.4", - "@babel/plugin-transform-dotall-regex": "^7.10.4", - "@babel/plugin-transform-duplicate-keys": "^7.10.4", - "@babel/plugin-transform-exponentiation-operator": "^7.10.4", - "@babel/plugin-transform-for-of": "^7.10.4", - "@babel/plugin-transform-function-name": "^7.10.4", - "@babel/plugin-transform-literals": "^7.10.4", - "@babel/plugin-transform-member-expression-literals": "^7.10.4", - "@babel/plugin-transform-modules-amd": "^7.10.4", - "@babel/plugin-transform-modules-commonjs": "^7.10.4", - "@babel/plugin-transform-modules-systemjs": "^7.10.4", - "@babel/plugin-transform-modules-umd": "^7.10.4", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.10.4", - "@babel/plugin-transform-new-target": "^7.10.4", - "@babel/plugin-transform-object-super": "^7.10.4", - "@babel/plugin-transform-parameters": "^7.10.4", - "@babel/plugin-transform-property-literals": "^7.10.4", - "@babel/plugin-transform-regenerator": "^7.10.4", - "@babel/plugin-transform-reserved-words": "^7.10.4", - "@babel/plugin-transform-shorthand-properties": "^7.10.4", - "@babel/plugin-transform-spread": "^7.11.0", - "@babel/plugin-transform-sticky-regex": "^7.10.4", - "@babel/plugin-transform-template-literals": "^7.10.4", - "@babel/plugin-transform-typeof-symbol": "^7.10.4", - "@babel/plugin-transform-unicode-escapes": "^7.10.4", - "@babel/plugin-transform-unicode-regex": "^7.10.4", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.11.0", - "browserslist": "^4.12.0", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.1", - "semver": "^5.5.0" + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.16.0", + "@babel/plugin-transform-async-to-generator": "^7.16.0", + "@babel/plugin-transform-block-scoped-functions": "^7.16.0", + "@babel/plugin-transform-block-scoping": "^7.16.0", + "@babel/plugin-transform-classes": "^7.16.0", + "@babel/plugin-transform-computed-properties": "^7.16.0", + "@babel/plugin-transform-destructuring": "^7.16.0", + "@babel/plugin-transform-dotall-regex": "^7.16.0", + "@babel/plugin-transform-duplicate-keys": "^7.16.0", + "@babel/plugin-transform-exponentiation-operator": "^7.16.0", + "@babel/plugin-transform-for-of": "^7.16.0", + "@babel/plugin-transform-function-name": "^7.16.0", + "@babel/plugin-transform-literals": "^7.16.0", + "@babel/plugin-transform-member-expression-literals": "^7.16.0", + "@babel/plugin-transform-modules-amd": "^7.16.0", + "@babel/plugin-transform-modules-commonjs": "^7.16.0", + "@babel/plugin-transform-modules-systemjs": "^7.16.0", + "@babel/plugin-transform-modules-umd": "^7.16.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.16.0", + "@babel/plugin-transform-new-target": "^7.16.0", + "@babel/plugin-transform-object-super": "^7.16.0", + "@babel/plugin-transform-parameters": "^7.16.3", + "@babel/plugin-transform-property-literals": "^7.16.0", + "@babel/plugin-transform-regenerator": "^7.16.0", + "@babel/plugin-transform-reserved-words": "^7.16.0", + "@babel/plugin-transform-shorthand-properties": "^7.16.0", + "@babel/plugin-transform-spread": "^7.16.0", + "@babel/plugin-transform-sticky-regex": "^7.16.0", + "@babel/plugin-transform-template-literals": "^7.16.0", + "@babel/plugin-transform-typeof-symbol": "^7.16.0", + "@babel/plugin-transform-unicode-escapes": "^7.16.0", + "@babel/plugin-transform-unicode-regex": "^7.16.0", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.16.0", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.4.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.19.1", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, - "node_modules/@babel/preset-modules": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", - "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", "dev": true, - "dependencies": { + "requires": { "@babel/helper-plugin-utils": "^7.0.0", "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", "@babel/plugin-transform-dotall-regex": "^7.4.4", @@ -1129,476 +1121,442 @@ "esutils": "^2.0.2" } }, - "node_modules/@babel/register": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.10.5.tgz", - "integrity": "sha512-eYHdLv43nyvmPn9bfNfrcC4+iYNwdQ8Pxk1MFJuU/U5LpSYl/PH4dFMazCYZDFVi8ueG3shvO+AQfLrxpYulQw==", + "@babel/register": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.16.0.tgz", + "integrity": "sha512-lzl4yfs0zVXnooeLE0AAfYaT7F3SPA8yB2Bj4W1BiZwLbMS3MZH35ZvCWSRHvneUugwuM+Wsnrj7h0F7UmU3NQ==", "dev": true, - "dependencies": { + "requires": { + "clone-deep": "^4.0.1", "find-cache-dir": "^2.0.0", - "lodash": "^4.17.19", "make-dir": "^2.1.0", "pirates": "^4.0.0", "source-map-support": "^0.5.16" } }, - "node_modules/@babel/runtime": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.1.tgz", - "integrity": "sha512-nH5y8fLvVl3HAb+ezbgcgwrH8QbClWo8xzkOu7+oyqngo3EVorwpWJQaqXPjGRpfj7mQvsJCl/S8knkfkPWqrw==", - "dependencies": { + "@babel/runtime": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.3.tgz", + "integrity": "sha512-WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ==", + "requires": { "regenerator-runtime": "^0.13.4" } }, - "node_modules/@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", + "@babel/template": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.0.tgz", + "integrity": "sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A==", "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/parser": "^7.16.0", + "@babel/types": "^7.16.0" } }, - "node_modules/@babel/traverse": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", - "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.11.0", - "@babel/types": "^7.11.0", + "@babel/traverse": { + "version": "7.16.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.3.tgz", + "integrity": "sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.16.0", + "@babel/generator": "^7.16.0", + "@babel/helper-function-name": "^7.16.0", + "@babel/helper-hoist-variables": "^7.16.0", + "@babel/helper-split-export-declaration": "^7.16.0", + "@babel/parser": "^7.16.3", + "@babel/types": "^7.16.0", "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" + "globals": "^11.1.0" } }, - "node_modules/@babel/traverse/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "@babel/types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.0.tgz", + "integrity": "sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg==", "dev": true, - "dependencies": { - "ms": "^2.1.1" + "requires": { + "@babel/helper-validator-identifier": "^7.15.7", + "to-fast-properties": "^2.0.0" } }, - "node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", + "@cucumber/create-meta": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@cucumber/create-meta/-/create-meta-5.0.0.tgz", + "integrity": "sha512-Z5kMZkUff00S3/KSnKzB/KOm2UIxMXY1xXmj2dQMlD49lV6v/W8EEvgDMNtQotQNSOQU5bDupmWQpk+o16tXIw==", "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" + "requires": { + "@cucumber/messages": "^16.0.0" } }, - "node_modules/@gulp-sourcemaps/identity-map": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-1.0.2.tgz", - "integrity": "sha512-ciiioYMLdo16ShmfHBXJBOFm3xPC4AuwO4xeRpFeHz7WK9PYsWCmigagG2XyzZpubK4a3qNKoUBDhbzHfa50LQ==", - "dev": true, - "dependencies": { - "acorn": "^5.0.3", - "css": "^2.2.1", - "normalize-path": "^2.1.1", - "source-map": "^0.6.0", - "through2": "^2.0.3" - }, - "engines": { - "node": ">= 0.10" + "@cucumber/cucumber": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/@cucumber/cucumber/-/cucumber-7.3.1.tgz", + "integrity": "sha512-x1+/AvouZy205ZvfYbeEVat5aBAj4EeLt9TZfD7pO9j+tQ3W6uxSuDB1TKfxAXFU3WYrswor0CXoJBYOIZhzMw==", + "dev": true, + "requires": { + "@cucumber/create-meta": "^5.0.0", + "@cucumber/cucumber-expressions": "^12.1.1", + "@cucumber/gherkin": "^19.0.3", + "@cucumber/gherkin-streams": "^2.0.2", + "@cucumber/html-formatter": "^15.0.2", + "@cucumber/messages": "^16.0.1", + "@cucumber/tag-expressions": "^3.0.1", + "assertion-error-formatter": "^3.0.0", + "bluebird": "^3.7.2", + "capital-case": "^1.0.4", + "cli-table3": "^0.6.0", + "colors": "^1.4.0", + "commander": "^7.0.0", + "create-require": "^1.1.1", + "duration": "^0.2.2", + "durations": "^3.4.2", + "figures": "^3.2.0", + "glob": "^7.1.6", + "indent-string": "^4.0.0", + "is-generator": "^1.0.3", + "is-stream": "^2.0.0", + "knuth-shuffle-seeded": "^1.0.6", + "lodash": "^4.17.21", + "mz": "^2.7.0", + "progress": "^2.0.3", + "resolve": "^1.19.0", + "resolve-pkg": "^2.0.0", + "stack-chain": "^2.0.0", + "stacktrace-js": "^2.0.2", + "string-argv": "^0.3.1", + "tmp": "^0.2.1", + "util-arity": "^1.1.0", + "verror": "^1.10.0" } }, - "node_modules/@gulp-sourcemaps/identity-map/node_modules/acorn": { - "version": "5.7.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", - "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", + "@cucumber/cucumber-expressions": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/@cucumber/cucumber-expressions/-/cucumber-expressions-12.1.3.tgz", + "integrity": "sha512-LB8MAzE4F/t2KIgsDEz4gZH0xSI4aG0/LmYUPyISPPjUS1pI/yGWWyeX2WsiUQxpSs765WcNIq5Bggt7gGGO3Q==", "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "requires": { + "regexp-match-indices": "1.0.2" } }, - "node_modules/@gulp-sourcemaps/identity-map/node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "@cucumber/gherkin": { + "version": "19.0.3", + "resolved": "https://registry.npmjs.org/@cucumber/gherkin/-/gherkin-19.0.3.tgz", + "integrity": "sha512-gWdMm8mfRk3P+VugJWvNALaQV5QnT+5RkqWy3tO+4NsMSQZPo5p4V4vXwriQZ/sZR1Wni5TDRztuRsKLgZ3XHA==", "dev": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" + "requires": { + "@cucumber/message-streams": "^2.0.0", + "@cucumber/messages": "^16.0.1" } }, - "node_modules/@gulp-sourcemaps/map-sources": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz", - "integrity": "sha1-iQrnxdjId/bThIYCFazp1+yUW9o=", - "dev": true, - "dependencies": { - "normalize-path": "^2.0.1", - "through2": "^2.0.3" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/@gulp-sourcemaps/map-sources/node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "@cucumber/gherkin-streams": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@cucumber/gherkin-streams/-/gherkin-streams-2.0.2.tgz", + "integrity": "sha512-cKmXOBz4OwGlrHMBCc4qCC3KzLaqcEZ11nWWskIbv6jyfvlIRuM2OgEF6VLcNVewczifW1p6DrDj0OO+BeXocA==", "dev": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" + "requires": { + "@cucumber/gherkin": "^19.0.1", + "@cucumber/message-streams": "^2.0.0", + "@cucumber/messages": "^16.0.0", + "commander": "7.2.0", + "source-map-support": "0.5.19" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" + "source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + } } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "@cucumber/html-formatter": { + "version": "15.0.2", + "resolved": "https://registry.npmjs.org/@cucumber/html-formatter/-/html-formatter-15.0.2.tgz", + "integrity": "sha512-j+YGY4ytj78G/v1gZo53D+vuKXlTg/oxNwSCCGvRQo75+AqYDJSkm/vexXJQ5lY1rXAvlbZ9KI6jhg6LDs0YdQ==", "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "requires": { + "@cucumber/messages": "^16.0.1", + "commander": "7.2.0", + "source-map-support": "0.5.19" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" + "source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + } } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "@cucumber/message-streams": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@cucumber/message-streams/-/message-streams-2.1.0.tgz", + "integrity": "sha512-Yh3mw3qv6QL9NI/ihkZF8V9MX2GbnR6oktv34kC3uAbrQy9d/b2SZ3HNjG3J9JQqpV4B7Om3SPElJYIeo66TrA==", "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" + "requires": { + "@cucumber/messages": "^16.0.1" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "@cucumber/messages": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/@cucumber/messages/-/messages-16.0.1.tgz", + "integrity": "sha512-80JcaAfQragFqR1rMhRwiqWL9HcR6Z4LDD2mfF0Lxg/lFkCNvmWa9Jl10NUNfFXYD555NKPzP/8xFo55abw8TQ==", "dev": true, - "engines": { - "node": ">=8" + "requires": { + "@types/uuid": "8.3.0", + "class-transformer": "0.4.0", + "reflect-metadata": "0.1.13", + "uuid": "8.3.2" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } + "@cucumber/tag-expressions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@cucumber/tag-expressions/-/tag-expressions-3.0.1.tgz", + "integrity": "sha512-OGCXaJ1BQXmQ5b9pw+JYsBGumK2/LPZiLmbj1o1JFVeSNs2PY8WPQFSyXrskhrHz5Nd/6lYg7lvGMtFHOncC4w==", + "dev": true }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "@gulp-sourcemaps/identity-map": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-1.0.2.tgz", + "integrity": "sha512-ciiioYMLdo16ShmfHBXJBOFm3xPC4AuwO4xeRpFeHz7WK9PYsWCmigagG2XyzZpubK4a3qNKoUBDhbzHfa50LQ==", "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@peculiar/asn1-schema": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.0.12.tgz", - "integrity": "sha512-DnZ6tMpPSxXa975dwcSe9pEJyO8gcqRVCPuJvvxfB4aC3zX6UOSoJrmlkpLHTeysPi13U5ME3fdQeEMIwZeqGg==", + "requires": { + "acorn": "^5.0.3", + "css": "^2.2.1", + "normalize-path": "^2.1.1", + "source-map": "^0.6.0", + "through2": "^2.0.3" + }, "dependencies": { - "@types/asn1js": "^0.0.1", - "asn1js": "^2.0.26", - "pvtsutils": "^1.0.11", - "tslib": "^1.11.1" + "acorn": { + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", + "dev": true + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } } }, - "node_modules/@peculiar/asn1-schema/node_modules/tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" - }, - "node_modules/@peculiar/json-schema": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/@peculiar/json-schema/-/json-schema-1.1.12.tgz", - "integrity": "sha512-coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w==", - "dependencies": { - "tslib": "^2.0.0" + "@gulp-sourcemaps/map-sources": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz", + "integrity": "sha1-iQrnxdjId/bThIYCFazp1+yUW9o=", + "dev": true, + "requires": { + "normalize-path": "^2.0.1", + "through2": "^2.0.3" }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@peculiar/webcrypto": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@peculiar/webcrypto/-/webcrypto-1.1.2.tgz", - "integrity": "sha512-BkgD5iH2n3+Fdd/+xfhac8VbISo4MPvECPhK1kRpuYC7PnhxaJe2rpU7B4udvMeEL8lhJlvCWybo8Y7A29u/xQ==", "dependencies": { - "@peculiar/asn1-schema": "^2.0.8", - "@peculiar/json-schema": "^1.1.10", - "pvtsutils": "^1.0.10", - "tslib": "^2.0.0", - "webcrypto-core": "^1.1.2" - }, - "engines": { - "node": ">=10.12.0" + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } } }, - "node_modules/@sinonjs/commons": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", - "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", + "@sinonjs/commons": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", + "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", "dev": true, - "dependencies": { + "requires": { "type-detect": "4.0.8" } }, - "node_modules/@sinonjs/formatio": { + "@sinonjs/formatio": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", "dev": true, - "dependencies": { + "requires": { "@sinonjs/commons": "^1", "@sinonjs/samsam": "^3.1.0" } }, - "node_modules/@sinonjs/samsam": { + "@sinonjs/samsam": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", "dev": true, - "dependencies": { + "requires": { "@sinonjs/commons": "^1.3.0", "array-from": "^2.1.1", "lodash": "^4.17.15" } }, - "node_modules/@sinonjs/text-encoding": { + "@sinonjs/text-encoding": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", "dev": true }, - "node_modules/@types/asn1js": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@types/asn1js/-/asn1js-0.0.1.tgz", - "integrity": "sha1-74uflwjLFjKhw6nNJ3F8qr55O8I=", - "dependencies": { - "@types/pvutils": "*" - } + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==" }, - "node_modules/@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true + "@tsconfig/node12": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.9.tgz", + "integrity": "sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==" }, - "node_modules/@types/json-schema": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", - "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", + "@types/json-schema": { + "version": "7.0.9", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", + "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==", "dev": true }, - "node_modules/@types/json5": { + "@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", "dev": true }, - "node_modules/@types/node": { - "version": "14.0.27", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", - "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==", + "@types/node": { + "version": "16.11.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.12.tgz", + "integrity": "sha512-+2Iggwg7PxoO5Kyhvsq9VarmPbIelXP070HMImEpbtGCoyWNINQj4wzjbQCXzdHTRXnqufutJb5KAURZANNBAw==", "dev": true, "optional": true }, - "node_modules/@types/pvutils": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/@types/pvutils/-/pvutils-0.0.2.tgz", - "integrity": "sha512-CgQAm7pjyeF3Gnv78ty4RBVIfluB+Td+2DR8iPaU0prF18pkzptHHP+DoKPfpsJYknKsVZyVsJEu5AuGgAqQ5w==" + "@types/uuid": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.0.tgz", + "integrity": "sha512-eQ9qFW/fhfGJF8WKHGEHZEyVWfZxrT+6CLIJGBcZPfxUh/+BnEj+UCGYMlr9qZuX/2AltsvwrGqp0LhEW8D0zQ==", + "dev": true }, - "node_modules/@types/yauzl": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.1.tgz", - "integrity": "sha512-A1b8SU4D10uoPjwb0lnHmmu8wZhR9d+9o2PKBQT2jU5YPTKsxac6M2qGAdY7VcL+dHHhARVUDmeg0rOrcd9EjA==", + "@types/yauzl": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.2.tgz", + "integrity": "sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA==", "dev": true, "optional": true, - "dependencies": { + "requires": { "@types/node": "*" } }, - "node_modules/@unimodules/core": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@unimodules/core/-/core-5.3.0.tgz", - "integrity": "sha512-uGpkYE2zI0F1LTv+p6drzCHAZo8UFITxedHUH6pjWQBHdpTtae5cU7l3F/CzQ4WYU6SWhkzaB90/Ydf3DNTuLw==", - "optional": true, - "dependencies": { - "compare-versions": "^3.4.0" - } - }, - "node_modules/@unimodules/react-native-adapter": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@unimodules/react-native-adapter/-/react-native-adapter-5.4.0.tgz", - "integrity": "sha512-2c3hDWzfBAyDWNCkBziyXphmxRZvZ5J8oSMLRDohvj6DnQiHvnlgr/A4oberkjPSEve5fN4GA+eybcJrec08AA==", - "optional": true, - "dependencies": { - "invariant": "^2.2.4", - "lodash": "^4.5.0", - "prop-types": "^15.6.1" - } - }, - "node_modules/@webassemblyjs/ast": { + "@webassemblyjs/ast": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0" } }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { + "@webassemblyjs/floating-point-hex-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", "dev": true }, - "node_modules/@webassemblyjs/helper-api-error": { + "@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", "dev": true }, - "node_modules/@webassemblyjs/helper-buffer": { + "@webassemblyjs/helper-buffer": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", "dev": true }, - "node_modules/@webassemblyjs/helper-code-frame": { + "@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/wast-printer": "1.9.0" } }, - "node_modules/@webassemblyjs/helper-fsm": { + "@webassemblyjs/helper-fsm": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", "dev": true }, - "node_modules/@webassemblyjs/helper-module-context": { + "@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/ast": "1.9.0" } }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "@webassemblyjs/helper-wasm-bytecode": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", "dev": true }, - "node_modules/@webassemblyjs/helper-wasm-section": { + "@webassemblyjs/helper-wasm-section": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", "@webassemblyjs/wasm-gen": "1.9.0" } }, - "node_modules/@webassemblyjs/ieee754": { + "@webassemblyjs/ieee754": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", "dev": true, - "dependencies": { + "requires": { "@xtuc/ieee754": "^1.2.0" } }, - "node_modules/@webassemblyjs/leb128": { + "@webassemblyjs/leb128": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", "dev": true, - "dependencies": { + "requires": { "@xtuc/long": "4.2.2" } }, - "node_modules/@webassemblyjs/utf8": { + "@webassemblyjs/utf8": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", "dev": true }, - "node_modules/@webassemblyjs/wasm-edit": { + "@webassemblyjs/wasm-edit": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -1609,12 +1567,12 @@ "@webassemblyjs/wast-printer": "1.9.0" } }, - "node_modules/@webassemblyjs/wasm-gen": { + "@webassemblyjs/wasm-gen": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", "@webassemblyjs/ieee754": "1.9.0", @@ -1622,24 +1580,24 @@ "@webassemblyjs/utf8": "1.9.0" } }, - "node_modules/@webassemblyjs/wasm-opt": { + "@webassemblyjs/wasm-opt": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", "@webassemblyjs/wasm-gen": "1.9.0", "@webassemblyjs/wasm-parser": "1.9.0" } }, - "node_modules/@webassemblyjs/wasm-parser": { + "@webassemblyjs/wasm-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-api-error": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -1648,12 +1606,12 @@ "@webassemblyjs/utf8": "1.9.0" } }, - "node_modules/@webassemblyjs/wast-parser": { + "@webassemblyjs/wast-parser": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", "@webassemblyjs/helper-api-error": "1.9.0", @@ -1662,783 +1620,699 @@ "@xtuc/long": "4.2.2" } }, - "node_modules/@webassemblyjs/wast-printer": { + "@webassemblyjs/wast-printer": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", "dev": true, - "dependencies": { + "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", "@xtuc/long": "4.2.2" } }, - "node_modules/@xtuc/ieee754": { + "@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "dev": true }, - "node_modules/@xtuc/long": { + "@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, - "node_modules/abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", - "dev": true - }, - "node_modules/accepts": { + "accepts": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", "dev": true, - "dependencies": { + "requires": { "mime-types": "~2.1.24", "negotiator": "0.6.2" - }, - "engines": { - "node": ">= 0.6" } }, - "node_modules/acorn": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", - "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true }, - "node_modules/acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true }, - "node_modules/after": { + "after": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", "dev": true }, - "node_modules/agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", - "dependencies": { - "es6-promisify": "^5.0.0" - }, - "engines": { - "node": ">= 4.0.0" + "agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "requires": { + "debug": "4" } }, - "node_modules/agentkeepalive": { + "agentkeepalive": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", - "dependencies": { + "requires": { "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/aggregate-error": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", - "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", - "dev": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" } }, - "node_modules/ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, - "dependencies": { + "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" } }, - "node_modules/ajv-errors": { + "ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", "dev": true }, - "node_modules/ajv-keywords": { + "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true }, - "node_modules/align-text": { + "align-text": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", "dev": true, - "dependencies": { + "requires": { "kind-of": "^3.0.2", "longest": "^1.0.1", "repeat-string": "^1.5.2" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/align-text/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.4.2" + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, - "node_modules/ansi-colors": { + "ansi-colors": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", "dev": true, - "dependencies": { + "requires": { "ansi-wrap": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/ansi-cyan": { + "ansi-cyan": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", "dev": true, - "dependencies": { + "requires": { "ansi-wrap": "0.1.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, - "dependencies": { - "type-fest": "^0.11.0" + "requires": { + "type-fest": "^0.21.3" }, - "engines": { - "node": ">=8" + "dependencies": { + "type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true + } } }, - "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-gray": { + "ansi-gray": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", "dev": true, - "dependencies": { + "requires": { "ansi-wrap": "0.1.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/ansi-red": { + "ansi-red": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", "dev": true, - "dependencies": { + "requires": { "ansi-wrap": "0.1.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true }, - "node_modules/ansi-styles": { + "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, - "dependencies": { + "requires": { "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" } }, - "node_modules/ansi-wrap": { + "ansi-wrap": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/any-promise": { + "any-promise": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", "dev": true }, - "node_modules/anymatch": { + "anymatch": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "dev": true, - "dependencies": { + "requires": { "micromatch": "^3.1.4", "normalize-path": "^2.1.1" - } - }, - "node_modules/anymatch/node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" }, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } } }, - "node_modules/append-buffer": { + "append-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz", "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=", "dev": true, - "dependencies": { + "requires": { "buffer-equal": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/append-transform": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", - "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", - "dev": true, - "dependencies": { - "default-require-extensions": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/aproba": { + "aproba": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", "dev": true }, - "node_modules/archy": { + "archy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", "dev": true }, - "node_modules/argparse": { + "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "dependencies": { + "requires": { "sprintf-js": "~1.0.2" } }, - "node_modules/arr-diff": { + "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/arr-filter": { + "arr-filter": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz", "integrity": "sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4=", "dev": true, - "dependencies": { + "requires": { "make-iterator": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/arr-flatten": { + "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/arr-map": { + "arr-map": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz", "integrity": "sha1-Onc0X/wc814qkYJWAfnljy4kysQ=", "dev": true, - "dependencies": { + "requires": { "make-iterator": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/arr-union": { + "arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/array-each": { + "array-each": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/array-from": { + "array-from": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", "dev": true }, - "node_modules/array-includes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", - "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", + "array-includes": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", + "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", "dev": true, - "dependencies": { + "requires": { + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.17.0", - "is-string": "^1.0.5" - }, - "engines": { - "node": ">= 0.4" + "es-abstract": "^1.19.1", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.7" } }, - "node_modules/array-initial": { + "array-initial": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz", "integrity": "sha1-L6dLJnOTccOUe9enrcc74zSz15U=", "dev": true, - "dependencies": { + "requires": { "array-slice": "^1.0.0", "is-number": "^4.0.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-initial/node_modules/is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } } }, - "node_modules/array-last": { + "array-last": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz", "integrity": "sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==", "dev": true, - "dependencies": { + "requires": { "is-number": "^4.0.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-last/node_modules/is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } } }, - "node_modules/array-slice": { + "array-slice": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/array-sort": { + "array-sort": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz", "integrity": "sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==", "dev": true, - "dependencies": { + "requires": { "default-compare": "^1.0.0", "get-value": "^2.0.6", "kind-of": "^5.0.2" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-sort/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } } }, - "node_modules/array-unique": { + "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/array.prototype.flat": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", - "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", + "array.prototype.flat": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", + "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", "dev": true, - "dependencies": { + "requires": { + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - }, - "engines": { - "node": ">= 0.4" + "es-abstract": "^1.19.0" } }, - "node_modules/arraybuffer.slice": { + "arraybuffer.slice": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", "dev": true }, - "node_modules/asmcrypto.js": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/asmcrypto.js/-/asmcrypto.js-0.22.0.tgz", - "integrity": "sha512-usgMoyXjMbx/ZPdzTSXExhMPur2FTdz/Vo5PVx2gIaBcdAAJNOFlsdgqveM8Cff7W0v+xrf9BwjOV26JSAF9qA==" - }, - "node_modules/asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "dev": true, - "dependencies": { + "requires": { "safer-buffer": "~2.1.0" } }, - "node_modules/asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", "dev": true, - "dependencies": { + "requires": { "bn.js": "^4.0.0", "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/asn1.js/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - }, - "node_modules/asn1js": { - "version": "2.0.26", - "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-2.0.26.tgz", - "integrity": "sha512-yG89F0j9B4B0MKIcFyWWxnpZPLaNTjCj4tkE3fjbAoo0qmpGw0PYYqSbX/4ebnd9Icn8ZgK4K1fvDyEtW1JYtQ==", - "dependencies": { - "pvutils": "^1.0.17" + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" }, - "engines": { - "node": ">=6.0.0" + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } } }, - "node_modules/assert": { + "assert": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", "dev": true, - "dependencies": { + "requires": { "object-assign": "^4.1.1", "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } } }, - "node_modules/assert-plus": { + "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/assert/node_modules/inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", "dev": true }, - "node_modules/assert/node_modules/util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "dependencies": { - "inherits": "2.0.1" - } - }, - "node_modules/assertion-error": { + "assertion-error": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true + }, + "assertion-error-formatter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/assertion-error-formatter/-/assertion-error-formatter-3.0.0.tgz", + "integrity": "sha512-6YyAVLrEze0kQ7CmJfUgrLHb+Y7XghmL2Ie7ijVa2Y9ynP3LV+VDiwFk62Dn0qtqbmY0BT0ss6p1xxpiF2PYbQ==", "dev": true, - "engines": { - "node": "*" + "requires": { + "diff": "^4.0.1", + "pad-right": "^0.2.2", + "repeat-string": "^1.6.1" } }, - "node_modules/assign-symbols": { + "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/ast-types": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", - "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==", - "engines": { - "node": ">=4" + "ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "requires": { + "tslib": "^2.0.1" } }, - "node_modules/astral-regex": { + "astral-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", "dev": true }, - "node_modules/async-done": { + "async-done": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz", "integrity": "sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==", "dev": true, - "dependencies": { + "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.2", "process-nextick-args": "^2.0.0", "stream-exhaust": "^1.0.1" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/async-each": { + "async-each": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", "dev": true }, - "node_modules/async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true - }, - "node_modules/async-settle": { + "async-settle": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz", "integrity": "sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs=", "dev": true, - "dependencies": { + "requires": { "async-done": "^1.2.2" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/asynckit": { + "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, - "node_modules/atob": { + "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true, - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } + "dev": true }, - "node_modules/aws-sign2": { + "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/aws4": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", - "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", "dev": true }, - "node_modules/b64-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/b64-lite/-/b64-lite-1.4.0.tgz", - "integrity": "sha512-aHe97M7DXt+dkpa8fHlCcm1CnskAHrJqEfMI0KN7dwqlzml/aUe1AGt6lk51HzrSfVD67xOso84sOpr+0wIe2w==", - "dependencies": { - "base-64": "^0.1.0" - } - }, - "node_modules/b64u-lite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/b64u-lite/-/b64u-lite-1.1.0.tgz", - "integrity": "sha512-929qWGDVCRph7gQVTC6koHqQIpF4vtVaSbwLltFQo44B1bYUquALswZdBKFfrJCPEnsCOvWkJsPdQYZ/Ukhw8A==", - "dependencies": { - "b64-lite": "^1.4.0" - } + "aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true }, - "node_modules/babel-eslint": { + "babel-eslint": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", "dev": true, - "dependencies": { + "requires": { "@babel/code-frame": "^7.0.0", "@babel/parser": "^7.7.0", "@babel/traverse": "^7.7.0", "@babel/types": "^7.7.0", "eslint-visitor-keys": "^1.0.0", "resolve": "^1.12.0" - }, - "engines": { - "node": ">=6" } }, - "node_modules/babel-loader": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", - "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "babel-loader": { + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz", + "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==", "dev": true, - "dependencies": { - "find-cache-dir": "^2.1.0", + "requires": { + "find-cache-dir": "^3.3.1", "loader-utils": "^1.4.0", - "mkdirp": "^0.5.3", - "pify": "^4.0.1", + "make-dir": "^3.1.0", "schema-utils": "^2.6.5" }, - "engines": { - "node": ">= 6.9" - } - }, - "node_modules/babel-plugin-add-module-exports": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/babel-plugin-add-module-exports/-/babel-plugin-add-module-exports-1.0.2.tgz", - "integrity": "sha512-4paN7RivvU3Rzju1vGSHWPjO8Y0rI6droWvSFKI6dvEQ4mvoV0zGojnlzVRfI6N8zISo6VERXt3coIuVmzuvNg==", - "dev": true, "dependencies": { - "chokidar": "^2.0.4" - } + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-add-module-exports": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/babel-plugin-add-module-exports/-/babel-plugin-add-module-exports-1.0.4.tgz", + "integrity": "sha512-g+8yxHUZ60RcyaUpfNzy56OtWW+x9cyEe9j+CranqLiqbju2yf/Cy6ZtYK40EZxtrdHllzlVZgLmcOUCTlJ7Jg==", + "dev": true }, - "node_modules/babel-plugin-dynamic-import-node": { + "babel-plugin-dynamic-import-node": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", "dev": true, - "dependencies": { + "requires": { "object.assign": "^4.1.0" } }, - "node_modules/bach": { + "babel-plugin-polyfill-corejs2": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.0.tgz", + "integrity": "sha512-wMDoBJ6uG4u4PNFh72Ty6t3EgfA91puCuAwKIazbQlci+ENb/UU9A3xG5lutjUIiXCIn1CY5L15r9LimiJyrSA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.0", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.4.0.tgz", + "integrity": "sha512-YxFreYwUfglYKdLUGvIF2nJEsGwj+RhWSX/ije3D2vQPOXuyMLMtg/cCGMDpOA7Nd+MwlNdnGODbd2EwUZPlsw==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.0", + "core-js-compat": "^3.18.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.0.tgz", + "integrity": "sha512-dhAPTDLGoMW5/84wkgwiLRwMnio2i1fUe53EuvtKMv0pn2p3S8OCoV1xAzfJPl0KOX7IB89s2ib85vbYiea3jg==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.0" + } + }, + "bach": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", "integrity": "sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA=", "dev": true, - "dependencies": { + "requires": { "arr-filter": "^1.1.1", "arr-flatten": "^1.0.1", "arr-map": "^2.0.0", @@ -2448,29 +2322,26 @@ "async-done": "^1.2.2", "async-settle": "^1.0.0", "now-and-later": "^2.0.0" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/backo2": { + "backo2": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", "dev": true }, - "node_modules/balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "node_modules/base": { + "base": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, - "dependencies": { + "requires": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", "component-emitter": "^1.2.1", @@ -2479,191 +2350,202 @@ "mixin-deep": "^1.2.0", "pascalcase": "^0.1.1" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base-64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", - "integrity": "sha1-eAqZyE59YAJgNhURxId2E78k9rs=" - }, - "node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } } }, - "node_modules/base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } + "base64-arraybuffer": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", + "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=", + "dev": true }, - "node_modules/base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "devOptional": true + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" }, - "node_modules/base64id": { + "base64id": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true, - "engines": { - "node": "^4.5.0 || >= 5.9" - } + "dev": true }, - "node_modules/bcrypt-pbkdf": { + "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", "dev": true, - "dependencies": { + "requires": { "tweetnacl": "^0.14.3" } }, - "node_modules/better-assert": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", - "dev": true, - "dependencies": { - "callsite": "1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/big-integer": { - "version": "1.6.48", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.48.tgz", - "integrity": "sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w==", - "dev": true, - "engines": { - "node": ">=0.6" - } + "big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "dev": true }, - "node_modules/big.js": { + "big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true, - "engines": { - "node": "*" - } + "dev": true }, - "node_modules/binary": { + "binary": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", "dev": true, - "dependencies": { + "requires": { "buffers": "~0.1.1", "chainsaw": "~0.1.0" } }, - "node_modules/binary-extensions": { + "binary-extensions": { "version": "1.13.1", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/bindings": { + "bindings": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", "dev": true, "optional": true, - "dependencies": { + "requires": { "file-uri-to-path": "1.0.0" + }, + "dependencies": { + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true, + "optional": true + } } }, - "node_modules/bl": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", - "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", + "bl": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz", + "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==", "dev": true, - "dependencies": { + "requires": { "readable-stream": "^2.3.5", "safe-buffer": "^5.1.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } + } + } } }, - "node_modules/blob": { + "blob": { "version": "0.0.5", "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", "dev": true }, - "node_modules/bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=", + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "dev": true }, - "node_modules/bn.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", + "bn.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", + "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==", "dev": true }, - "node_modules/body-parser": { + "body-parser": { "version": "1.19.0", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", "dev": true, - "dependencies": { + "requires": { "bytes": "3.1.0", "content-type": "~1.0.4", "debug": "2.6.9", @@ -2675,87 +2557,95 @@ "raw-body": "2.4.0", "type-is": "~1.6.17" }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "dev": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/body-parser/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/body-parser/node_modules/raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "dev": true, "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true + } } }, - "node_modules/brace-expansion": { + "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "dependencies": { + "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "node_modules/braces": { + "braces": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, - "dependencies": { + "requires": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", "extend-shallow": "^2.0.1", @@ -2767,40 +2657,36 @@ "split-string": "^3.0.2", "to-regex": "^3.0.1" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/braces/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, - "node_modules/brorand": { + "brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", "dev": true }, - "node_modules/browser-stdout": { + "browser-stdout": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, - "node_modules/browserify-aes": { + "browserify-aes": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, - "dependencies": { + "requires": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", "create-hash": "^1.1.0", @@ -2809,51 +2695,45 @@ "safe-buffer": "^5.0.1" } }, - "node_modules/browserify-cipher": { + "browserify-cipher": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, - "dependencies": { + "requires": { "browserify-aes": "^1.0.4", "browserify-des": "^1.0.0", "evp_bytestokey": "^1.0.0" } }, - "node_modules/browserify-des": { + "browserify-des": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "dev": true, - "dependencies": { + "requires": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", "inherits": "^2.0.1", "safe-buffer": "^5.1.2" } }, - "node_modules/browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", "dev": true, - "dependencies": { - "bn.js": "^4.1.0", + "requires": { + "bn.js": "^5.0.0", "randombytes": "^2.0.1" } }, - "node_modules/browserify-rsa/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - }, - "node_modules/browserify-sign": { + "browserify-sign": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", "dev": true, - "dependencies": { + "requires": { "bn.js": "^5.1.1", "browserify-rsa": "^4.0.1", "create-hash": "^1.2.0", @@ -2865,131 +2745,90 @@ "safe-buffer": "^5.2.0" } }, - "node_modules/browserify-sign/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/browserify-sign/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "node_modules/browserify-zlib": { + "browserify-zlib": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, - "dependencies": { + "requires": { "pako": "~1.0.5" } }, - "node_modules/browserslist": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", - "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", + "browserslist": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.1.tgz", + "integrity": "sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==", "dev": true, - "dependencies": { - "caniuse-lite": "^1.0.30001093", - "electron-to-chromium": "^1.3.488", - "escalade": "^3.0.1", - "node-releases": "^1.1.58" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "requires": { + "caniuse-lite": "^1.0.30001280", + "electron-to-chromium": "^1.3.896", + "escalade": "^3.1.1", + "node-releases": "^2.0.1", + "picocolors": "^1.0.0" } }, - "node_modules/buffer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", - "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", - "dev": true, - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" + "buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, - "node_modules/buffer-crc32": { + "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true, - "engines": { - "node": "*" - } + "dev": true }, - "node_modules/buffer-equal": { + "buffer-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", - "dev": true, - "engines": { - "node": ">=0.4.0" - } + "dev": true }, - "node_modules/buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, - "node_modules/buffer-indexof-polyfill": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.1.tgz", - "integrity": "sha1-qfuAbOgUXVQoUQznLyeLs2OmOL8=", - "dev": true, - "engines": { - "node": ">=0.10" - } + "buffer-indexof-polyfill": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", + "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", + "dev": true }, - "node_modules/buffer-xor": { + "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", "dev": true }, - "node_modules/buffers": { + "buffers": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", - "dev": true, - "engines": { - "node": ">=0.2.0" - } + "dev": true }, - "node_modules/builtin-status-codes": { + "builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", "dev": true }, - "node_modules/bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "engines": { - "node": ">= 0.8" - } + "bytes": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", + "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==" }, - "node_modules/cacache": { + "cacache": { "version": "12.0.4", "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "dev": true, - "dependencies": { + "requires": { "bluebird": "^3.5.5", "chownr": "^1.1.1", "figgy-pudding": "^3.5.1", @@ -3005,38 +2844,46 @@ "ssri": "^6.0.1", "unique-filename": "^1.1.1", "y18n": "^4.0.0" - } - }, - "node_modules/cacache/node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "node_modules/cacache/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" }, - "bin": { - "rimraf": "bin.js" + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } } }, - "node_modules/cacache/node_modules/y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "node_modules/cache-base": { + "cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "dev": true, - "dependencies": { + "requires": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", "get-value": "^2.0.6", @@ -3046,205 +2893,147 @@ "to-object-path": "^0.3.0", "union-value": "^1.0.0", "unset-value": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/caching-transform": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", - "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", - "dev": true, - "dependencies": { - "hasha": "^5.0.0", - "make-dir": "^3.0.0", - "package-hash": "^4.0.0", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/caching-transform/node_modules/hasha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz", - "integrity": "sha512-2W+jKdQbAdSIrggA8Q35Br8qKadTrqCTC8+XZvBWepKDK6m9XkX6Iz1a2yh2KP01kzAR/dpuMeUnocoLYDcskw==", - "dev": true, - "dependencies": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - }, - "engines": { - "node": ">=8" + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" } }, - "node_modules/caching-transform/node_modules/make-dir": { + "callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - } + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true }, - "node_modules/caching-transform/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/callsite": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { + "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/caniuse-lite": { - "version": "1.0.30001110", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001110.tgz", - "integrity": "sha512-KqJWeat4rhSHF0ito4yz9q/JuZHkvn71SsBnxge4azjPDbowIjOUnS8i1xpKGxZxU6BFiPqO2hSV2eiCpFQVRw==", + "caniuse-lite": { + "version": "1.0.30001285", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001285.tgz", + "integrity": "sha512-KAOkuUtcQ901MtmvxfKD+ODHH9YVDYnBt+TGYSz2KIfnq22CiArbUxXPN9067gNbgMlnNYRSwho8OPXZPALB9Q==", "dev": true }, - "node_modules/caseless": { + "capital-case": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", + "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", + "dev": true, + "requires": { + "no-case": "^3.0.4", + "tslib": "^2.0.3", + "upper-case-first": "^2.0.2" + } + }, + "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", "dev": true }, - "node_modules/cbor-js": { + "cbor-js": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/cbor-js/-/cbor-js-0.1.0.tgz", "integrity": "sha1-yAzmEg84fo+qdDcN/aIdlluPx/k=" }, - "node_modules/cbor-sync": { + "cbor-sync": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cbor-sync/-/cbor-sync-1.0.4.tgz", "integrity": "sha512-GWlXN4wiz0vdWWXBU71Dvc1q3aBo0HytqwAZnXF1wOwjqNnDWA1vZ1gDMFLlqohak31VQzmhiYfiCX5QSSfagA==" }, - "node_modules/center-align": { + "center-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", "dev": true, - "dependencies": { + "requires": { "align-text": "^0.1.3", "lazy-cache": "^1.0.3" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/chai": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", - "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", + "chai": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.4.tgz", + "integrity": "sha512-yS5H68VYOCtN1cjfwumDSuzn/9c+yza4f3reKXlE5rUg7SFcCEy90gJvydNgOYtblyf4Zi6jIWRnXOgErta0KA==", "dev": true, - "dependencies": { + "requires": { "assertion-error": "^1.1.0", "check-error": "^1.0.2", "deep-eql": "^3.0.1", "get-func-name": "^2.0.0", - "pathval": "^1.1.0", + "pathval": "^1.1.1", "type-detect": "^4.0.5" - }, - "engines": { - "node": ">=4" } }, - "node_modules/chai-as-promised": { + "chai-as-promised": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", "dev": true, - "dependencies": { + "requires": { "check-error": "^1.0.2" } }, - "node_modules/chai-nock": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/chai-nock/-/chai-nock-1.2.1.tgz", - "integrity": "sha512-MXEkenBDA/XOdR4D6vEDwtWNjpp3FPOUm38kYW9+4DaTVm4Ht6YcR10mFyL/eRWVPRfaFNunfFaN7Vck5RmW6Q==", + "chai-nock": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/chai-nock/-/chai-nock-1.3.0.tgz", + "integrity": "sha512-O3j1bW3ACoUu/sLGYSoX50c1p8dbTkCjw3/dereqzl9BL2XsQAUVC18sJpg3hVwpCk71rjWGumCmHy87t5W+Pg==", "dev": true, - "dependencies": { + "requires": { "chai": "^4.2.0", "deep-equal": "^1.0.1" } }, - "node_modules/chainsaw": { + "chainsaw": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", "dev": true, - "dependencies": { + "requires": { "traverse": ">=0.3.0 <0.4" } }, - "node_modules/chalk": { + "chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, - "dependencies": { + "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" } }, - "node_modules/chardet": { + "chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, - "node_modules/check-error": { + "check-error": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", - "dev": true, - "engines": { - "node": "*" - } + "dev": true }, - "node_modules/chokidar": { + "chokidar": { "version": "2.1.8", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", "dev": true, - "dependencies": { + "requires": { "anymatch": "^2.0.0", "async-each": "^1.0.1", "braces": "^2.3.2", + "fsevents": "^1.2.7", "glob-parent": "^3.1.0", "inherits": "^2.0.3", "is-binary-path": "^1.0.0", @@ -3253,494 +3042,541 @@ "path-is-absolute": "^1.0.0", "readdirp": "^2.2.1", "upath": "^1.1.1" - }, - "optionalDependencies": { - "fsevents": "^1.2.7" } }, - "node_modules/chownr": { + "chownr": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", "dev": true }, - "node_modules/chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/chrome-trace-event/node_modules/tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", "dev": true }, - "node_modules/cipher-base": { + "cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, - "dependencies": { + "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" } }, - "node_modules/class-utils": { + "class-transformer": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.4.0.tgz", + "integrity": "sha512-ETWD/H2TbWbKEi7m9N4Km5+cw1hNcqJSxlSYhsLsNjQzWWiZIYA1zafxpK9PwVfaZ6AqR5rrjPVUBGESm5tQUA==", + "dev": true + }, + "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "dev": true, - "dependencies": { + "requires": { "arr-union": "^3.1.0", "define-property": "^0.2.5", "isobject": "^3.0.0", "static-extend": "^0.1.1" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "engines": { - "node": ">=6" + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } } }, - "node_modules/cli-cursor": { + "cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, - "dependencies": { + "requires": { "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" } }, - "node_modules/cli-width": { + "cli-table3": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.0.tgz", + "integrity": "sha512-gnB85c3MGC7Nm9I/FkiasNBOKjOiO1RNuXXarQms37q4QMpWdlbBgD/VnOStA2faG1dpXMv31RFApjX1/QdgWQ==", + "dev": true, + "requires": { + "colors": "^1.1.2", + "object-assign": "^4.1.0", + "string-width": "^4.2.0" + } + }, + "cli-width": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true, - "engines": { - "node": ">= 10" - } + "dev": true }, - "node_modules/cliui": { + "cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", "dev": true, - "dependencies": { + "requires": { "string-width": "^1.0.1", "strip-ansi": "^3.0.1", "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } } }, - "node_modules/clone": { + "clone": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true, - "engines": { - "node": ">=0.8" - } + "dev": true }, - "node_modules/clone-buffer": { + "clone-buffer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", - "dev": true, - "engines": { - "node": ">= 0.10" - } + "dev": true }, - "node_modules/clone-deep": { + "clone-deep": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "dev": true, - "dependencies": { + "requires": { "is-plain-object": "^2.0.4", "kind-of": "^6.0.2", "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" } }, - "node_modules/clone-stats": { + "clone-stats": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", "dev": true }, - "node_modules/cloneable-readable": { + "cloneable-readable": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", "dev": true, - "dependencies": { + "requires": { "inherits": "^2.0.1", "process-nextick-args": "^2.0.0", "readable-stream": "^2.3.5" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/code-point-at": { + "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/collection-map": { + "collection-map": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz", "integrity": "sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw=", "dev": true, - "dependencies": { + "requires": { "arr-map": "^2.0.2", "for-own": "^1.0.0", "make-iterator": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/collection-visit": { + "collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, - "dependencies": { + "requires": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/color-convert": { + "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, - "dependencies": { + "requires": { "color-name": "1.1.3" } }, - "node_modules/color-name": { + "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, - "node_modules/color-support": { + "color-support": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } + "dev": true }, - "node_modules/colors": { + "colors": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } + "dev": true }, - "node_modules/combined-stream": { + "combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dependencies": { + "requires": { "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" } }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", "dev": true }, - "node_modules/commondir": { + "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "node_modules/compare-versions": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", - "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", - "optional": true - }, - "node_modules/component-bind": { + "component-bind": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", "dev": true }, - "node_modules/component-emitter": { + "component-emitter": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" }, - "node_modules/component-inherit": { + "component-inherit": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", "dev": true }, - "node_modules/concat-map": { + "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "node_modules/concat-stream": { + "concat-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, - "engines": [ - "node >= 0.8" - ], - "dependencies": { + "requires": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", "readable-stream": "^2.2.2", "typedarray": "^0.0.6" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "node_modules/confusing-browser-globals": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz", - "integrity": "sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw==", + "confusing-browser-globals": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz", + "integrity": "sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA==", "dev": true }, - "node_modules/connect": { + "connect": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", "dev": true, - "dependencies": { + "requires": { "debug": "2.6.9", "finalhandler": "1.1.2", "parseurl": "~1.3.3", "utils-merge": "1.0.1" }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/connect/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/connect/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true - }, - "node_modules/constants-browserify": { - "version": "1.0.0", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "dev": true + }, + "constants-browserify": { + "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", "dev": true }, - "node_modules/contains-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/content-type": { + "content-type": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } + "dev": true }, - "node_modules/convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", "dev": true, - "dependencies": { + "requires": { "safe-buffer": "~5.1.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } } }, - "node_modules/cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true, - "engines": { - "node": ">= 0.6" - } + "cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "dev": true }, - "node_modules/cookiejar": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", - "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" + "cookiejar": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz", + "integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==" }, - "node_modules/copy-concurrently": { + "copy-concurrently": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "dev": true, - "dependencies": { + "requires": { "aproba": "^1.1.1", "fs-write-stream-atomic": "^1.0.8", "iferr": "^0.1.5", "mkdirp": "^0.5.1", "rimraf": "^2.5.4", "run-queue": "^1.0.0" - } - }, - "node_modules/copy-concurrently/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" }, - "bin": { - "rimraf": "bin.js" + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, - "node_modules/copy-descriptor": { + "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/copy-props": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", - "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", + "copy-props": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.5.tgz", + "integrity": "sha512-XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw==", "dev": true, + "requires": { + "each-props": "^1.3.2", + "is-plain-object": "^5.0.0" + }, "dependencies": { - "each-props": "^1.3.0", - "is-plain-object": "^2.0.1" + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "dev": true + } } }, - "node_modules/core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true, - "hasInstallScript": true + "core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "dev": true }, - "node_modules/core-js-compat": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", - "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", + "core-js-compat": { + "version": "3.19.3", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.19.3.tgz", + "integrity": "sha512-59tYzuWgEEVU9r+SRgceIGXSSUn47JknoiXW6Oq7RW8QHjXWz3/vp8pa7dbtuVu40sewz3OP3JmQEcDdztrLhA==", "dev": true, - "dependencies": { - "browserslist": "^4.8.5", + "requires": { + "browserslist": "^4.18.1", "semver": "7.0.0" + }, + "dependencies": { + "semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true + } } }, - "node_modules/core-js-compat/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, - "node_modules/create-ecdh": { + "create-ecdh": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", "dev": true, - "dependencies": { + "requires": { "bn.js": "^4.1.0", "elliptic": "^6.5.3" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } } }, - "node_modules/create-ecdh/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - }, - "node_modules/create-hash": { + "create-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, - "dependencies": { + "requires": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", "md5.js": "^1.3.4", @@ -3748,12 +3584,12 @@ "sha.js": "^2.4.0" } }, - "node_modules/create-hmac": { + "create-hmac": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, - "dependencies": { + "requires": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", "inherits": "^2.0.1", @@ -3762,28 +3598,39 @@ "sha.js": "^2.4.8" } }, - "node_modules/cross-spawn": { + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", "dev": true, - "dependencies": { + "requires": { "nice-try": "^1.0.4", "path-key": "^2.0.1", "semver": "^5.5.0", "shebang-command": "^1.2.0", "which": "^1.2.9" }, - "engines": { - "node": ">=4.8" + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, - "node_modules/crypto-browserify": { + "crypto-browserify": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, - "dependencies": { + "requires": { "browserify-cipher": "^1.0.0", "browserify-sign": "^4.0.0", "create-ecdh": "^4.0.0", @@ -3795,135 +3642,132 @@ "public-encrypt": "^4.0.0", "randombytes": "^2.0.0", "randomfill": "^1.0.3" - }, - "engines": { - "node": "*" } }, - "node_modules/css": { + "css": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", "dev": true, - "dependencies": { + "requires": { "inherits": "^2.0.3", "source-map": "^0.6.1", "source-map-resolve": "^0.5.2", "urix": "^0.1.0" } }, - "node_modules/custom-event": { + "custom-event": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", "dev": true }, - "node_modules/cyclist": { + "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", "dev": true }, - "node_modules/d": { + "d": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", "dev": true, - "dependencies": { + "requires": { "es5-ext": "^0.10.50", "type": "^1.0.1" } }, - "node_modules/dargs": { + "dargs": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", - "dev": true, - "engines": { - "node": ">=8" - } + "dev": true }, - "node_modules/dashdash": { + "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "dev": true, - "dependencies": { + "requires": { "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" } }, - "node_modules/data-uri-to-buffer": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", - "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==" + "data-uri-to-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz", + "integrity": "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==" }, - "node_modules/date-format": { + "date-format": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/date-format/-/date-format-3.0.0.tgz", "integrity": "sha512-eyTcpKOcamdhWJXj56DpQMo1ylSQpcGtGKXcU0Tb97+K56/CF5amAqqqNj0+KvA0iw2ynxtHWFsPDSClCxe48w==", - "dev": true, - "engines": { - "node": ">=4.0" - } + "dev": true }, - "node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "requires": { + "ms": "2.1.2" + }, "dependencies": { - "ms": "^2.1.1" + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } } }, - "node_modules/debug-fabulous": { + "debug-fabulous": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-1.1.0.tgz", "integrity": "sha512-GZqvGIgKNlUnHUPQhepnUZFIMoi3dgZKQBzKDeL2g7oJF9SNAji/AAu36dusFUas0O+pae74lNeoIPHqXWDkLg==", "dev": true, - "dependencies": { + "requires": { "debug": "3.X", "memoizee": "0.4.X", "object-assign": "4.X" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } } }, - "node_modules/decamelize": { + "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true, - "engines": { - "node": ">=0.10" - } + "decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "dev": true }, - "node_modules/deep-eql": { + "deep-eql": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", "dev": true, - "dependencies": { + "requires": { "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=0.12" } }, - "node_modules/deep-equal": { + "deep-equal": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", "dev": true, - "dependencies": { + "requires": { "is-arguments": "^1.0.4", "is-date-object": "^1.0.1", "is-regex": "^1.0.4", @@ -3932,670 +3776,683 @@ "regexp.prototype.flags": "^1.2.0" } }, - "node_modules/deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" }, - "node_modules/default-compare": { + "default-compare": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", "dev": true, - "dependencies": { + "requires": { "kind-of": "^5.0.2" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/default-compare/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/default-require-extensions": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz", - "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==", - "dev": true, "dependencies": { - "strip-bom": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/default-require-extensions/node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true, - "engines": { - "node": ">=8" + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } } }, - "node_modules/default-resolution": { + "default-resolution": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz", "integrity": "sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ=", - "dev": true, - "engines": { - "node": ">= 0.10" - } + "dev": true }, - "node_modules/define-properties": { + "define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, - "dependencies": { + "requires": { "object-keys": "^1.0.12" - }, - "engines": { - "node": ">= 0.4" } }, - "node_modules/define-property": { + "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, - "dependencies": { + "requires": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" }, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } } }, - "node_modules/define-property/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-property/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-property/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/degenerator": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", - "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", - "dependencies": { - "ast-types": "0.x.x", - "escodegen": "1.x.x", - "esprima": "3.x.x" + "degenerator": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-3.0.1.tgz", + "integrity": "sha512-LFsIFEeLPlKvAKXu7j3ssIG6RT0TbI7/GhsqrI0DnHASEQjXQ0LUSYcjJteGgRGmZbl1TnMSxpNQIAiJ7Du5TQ==", + "requires": { + "ast-types": "^0.13.2", + "escodegen": "^1.8.1", + "esprima": "^4.0.0", + "vm2": "^3.9.3" } }, - "node_modules/delayed-stream": { + "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "engines": { - "node": ">=0.4.0" - } + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, - "node_modules/depd": { + "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "engines": { - "node": ">= 0.6" - } + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, - "node_modules/des.js": { + "des.js": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", "dev": true, - "dependencies": { + "requires": { "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" } }, - "node_modules/detect-file": { + "detect-file": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/detect-newline": { + "detect-newline": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/devtools-protocol": { - "version": "0.0.781568", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.781568.tgz", - "integrity": "sha512-9Uqnzy6m6zEStluH9iyJ3iHyaQziFnMnLeC8vK0eN6smiJmIx7+yB64d67C2lH/LZra+5cGscJAJsNXO+MdPMg==", + "devtools-protocol": { + "version": "0.0.818844", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.818844.tgz", + "integrity": "sha512-AD1hi7iVJ8OD0aMLQU5VK0XH9LDlA1+BcPIgrAxPfaibx2DbWucuyOhc4oyQCbnvDDO68nN6/LcKfqTP343Jjg==", "dev": true }, - "node_modules/di": { + "di": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", "dev": true }, - "node_modules/diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true }, - "node_modules/diffie-hellman": { + "diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, - "dependencies": { + "requires": { "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } } }, - "node_modules/diffie-hellman/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - }, - "node_modules/doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, - "dependencies": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "requires": { + "esutils": "^2.0.2" } }, - "node_modules/dom-serialize": { + "dom-serialize": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", "dev": true, - "dependencies": { + "requires": { "custom-event": "~1.0.0", "ent": "~2.2.0", "extend": "^3.0.0", "void-elements": "^2.0.0" } }, - "node_modules/domain-browser": { + "domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true, - "engines": { - "node": ">=0.4", - "npm": ">=1.2" - } + "dev": true }, - "node_modules/duplexer2": { + "duplexer2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", "dev": true, - "dependencies": { + "requires": { "readable-stream": "^2.0.2" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "node_modules/duplexify": { + "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", "dev": true, - "dependencies": { + "requires": { "end-of-stream": "^1.0.0", "inherits": "^2.0.1", "readable-stream": "^2.0.0", "stream-shift": "^1.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "duration": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/duration/-/duration-0.2.2.tgz", + "integrity": "sha512-06kgtea+bGreF5eKYgI/36A6pLXggY7oR4p1pq4SmdFBn1ReOL5D8RhG64VrqfTTKNucqqtBAwEj8aB88mcqrg==", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.46" } }, - "node_modules/each-props": { + "durations": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/durations/-/durations-3.4.2.tgz", + "integrity": "sha512-V/lf7y33dGaypZZetVI1eu7BmvkbC4dItq12OElLRpKuaU5JxQstV2zHwLv8P7cNbQ+KL1WD80zMCTx5dNC4dg==", + "dev": true + }, + "each-props": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz", "integrity": "sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==", "dev": true, - "dependencies": { + "requires": { "is-plain-object": "^2.0.1", "object.defaults": "^1.1.0" } }, - "node_modules/ecc-jsbn": { + "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", "dev": true, - "dependencies": { + "requires": { "jsbn": "~0.1.0", "safer-buffer": "^2.1.0" } }, - "node_modules/ee-first": { + "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", "dev": true }, - "node_modules/electron-to-chromium": { - "version": "1.3.519", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.519.tgz", - "integrity": "sha512-2r/p/9YOjIpX10KxcH1HcAGz1oadSD9Cwwotoek8wNJx/SRpklea14qdAMzCTTZlIezvsJ8sNsBQN05bJ/ZjhA==", + "electron-to-chromium": { + "version": "1.4.12", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.12.tgz", + "integrity": "sha512-zjfhG9Us/hIy8AlQ5OzfbR/C4aBv1Dg/ak4GX35CELYlJ4tDAtoEcQivXvyBdqdNQ+R6PhlgQqV8UNPJmhkJog==", "dev": true }, - "node_modules/elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dev": true, - "dependencies": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", + "requires": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } } }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - }, - "node_modules/emoji-regex": { + "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "node_modules/emojis-list": { + "emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true, - "engines": { - "node": ">= 4" - } + "dev": true }, - "node_modules/encodeurl": { + "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/encoding/node_modules/iconv-lite": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", - "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", - "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/end-of-stream": { + "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, - "dependencies": { + "requires": { "once": "^1.4.0" } }, - "node_modules/engine.io": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.4.2.tgz", - "integrity": "sha512-b4Q85dFkGw+TqgytGPrGgACRUhsdKc9S9ErRAXpPGy/CXKs4tYoHDkvIRdsseAF7NjfVwjRFIn6KTnbw7LwJZg==", + "engine.io": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.5.0.tgz", + "integrity": "sha512-21HlvPUKaitDGE4GXNtQ7PLP0Sz4aWLddMPw2VTyFz1FVZqu/kZsJUO8WNpKuE/OCL7nkfRaOui2ZCJloGznGA==", "dev": true, - "dependencies": { + "requires": { "accepts": "~1.3.4", "base64id": "2.0.0", - "cookie": "0.3.1", + "cookie": "~0.4.1", "debug": "~4.1.0", "engine.io-parser": "~2.2.0", - "ws": "^7.1.2" + "ws": "~7.4.2" }, - "engines": { - "node": ">=8.0.0" + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } } }, - "node_modules/engine.io-client": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.4.3.tgz", - "integrity": "sha512-0NGY+9hioejTEJCaSJZfWZLk4FPI9dN+1H1C4+wj2iuFba47UgZbJzfWs4aNFajnX/qAaYKbe2lLTfEEWzCmcw==", + "engine.io-client": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.2.tgz", + "integrity": "sha512-QEqIp+gJ/kMHeUun7f5Vv3bteRHppHH/FMBQX/esFj/fuYfjyUKWGMo3VCvIP/V8bE9KcjHmRZrhIz2Z9oNsDA==", "dev": true, - "dependencies": { + "requires": { "component-emitter": "~1.3.0", "component-inherit": "0.0.3", - "debug": "~4.1.0", + "debug": "~3.1.0", "engine.io-parser": "~2.2.0", "has-cors": "1.1.0", "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~6.1.0", - "xmlhttprequest-ssl": "~1.5.4", + "parseqs": "0.0.6", + "parseuri": "0.0.6", + "ws": "~7.4.2", + "xmlhttprequest-ssl": "~1.6.2", "yeast": "0.1.2" - } - }, - "node_modules/engine.io-client/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/engine.io-client/node_modules/ws": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.4.tgz", - "integrity": "sha512-eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==", - "dev": true, + }, "dependencies": { - "async-limiter": "~1.0.0" + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } } }, - "node_modules/engine.io-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.0.tgz", - "integrity": "sha512-6I3qD9iUxotsC5HEMuuGsKA0cXerGz+4uGcXQEkfBidgKf0amsjrrtwcbwK/nzpZBxclXlV7gGl9dgWvu4LF6w==", + "engine.io-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz", + "integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==", "dev": true, - "dependencies": { + "requires": { "after": "0.8.2", "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", + "base64-arraybuffer": "0.1.4", "blob": "0.0.5", "has-binary2": "~1.0.2" } }, - "node_modules/engine.io/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/enhanced-resolve": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", - "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "enhanced-resolve": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", + "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", "dev": true, - "dependencies": { + "requires": { "graceful-fs": "^4.1.2", "memory-fs": "^0.5.0", "tapable": "^1.0.0" }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/enhanced-resolve/node_modules/memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "dependencies": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - }, - "engines": { - "node": ">=4.3.0 <5.0.0 || >=5.10" - } - }, - "node_modules/ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", - "dev": true - }, - "node_modules/errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, "dependencies": { - "prr": "~1.0.1" - }, - "bin": { - "errno": "cli.js" - } - }, - "node_modules/error-ex": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "dev": true + }, + "errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "dependencies": { + "requires": { "is-arrayish": "^0.2.1" } }, - "node_modules/es-abstract": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", - "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "error-stack-parser": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.6.tgz", + "integrity": "sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==", "dev": true, - "dependencies": { + "requires": { + "stackframe": "^1.1.1" + } + }, + "es-abstract": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz", + "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", + "get-intrinsic": "^1.1.1", + "get-symbol-description": "^1.0.0", "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", - "is-regex": "^1.1.0", - "object-inspect": "^1.7.0", + "has-symbols": "^1.0.2", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.4", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.1", + "is-string": "^1.0.7", + "is-weakref": "^1.0.1", + "object-inspect": "^1.11.0", "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.4", + "string.prototype.trimstart": "^1.0.4", + "unbox-primitive": "^1.0.1" } }, - "node_modules/es-to-primitive": { + "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, - "dependencies": { + "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" } }, - "node_modules/es5-ext": { + "es5-ext": { "version": "0.10.53", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", "dev": true, - "dependencies": { + "requires": { "es6-iterator": "~2.0.3", "es6-symbol": "~3.1.3", "next-tick": "~1.0.0" } }, - "node_modules/es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "node_modules/es6-iterator": { + "es6-iterator": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", "dev": true, - "dependencies": { + "requires": { "d": "1", "es5-ext": "^0.10.35", "es6-symbol": "^3.1.1" } }, - "node_modules/es6-promise": { + "es6-promise": { "version": "4.2.8", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "dev": true }, - "node_modules/es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", - "dependencies": { - "es6-promise": "^4.0.3" - } + "es6-shim": { + "version": "0.35.6", + "resolved": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.35.6.tgz", + "integrity": "sha512-EmTr31wppcaIAgblChZiuN/l9Y7DPyw8Xtbg7fIVngn6zMW+IEBJDJngeKC3x6wr0V/vcA2wqeFnaw1bFJbDdA==", + "dev": true }, - "node_modules/es6-symbol": { + "es6-symbol": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", "dev": true, - "dependencies": { + "requires": { "d": "^1.0.1", "ext": "^1.1.2" } }, - "node_modules/es6-weak-map": { + "es6-weak-map": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", "dev": true, - "dependencies": { + "requires": { "d": "1", "es5-ext": "^0.10.46", "es6-iterator": "^2.0.3", "es6-symbol": "^3.1.1" } }, - "node_modules/escalade": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", - "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", - "dev": true, - "engines": { - "node": ">=6" - } + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true }, - "node_modules/escape-html": { + "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", "dev": true }, - "node_modules/escape-string-regexp": { + "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true, - "engines": { - "node": ">=0.8.0" - } + "dev": true }, - "node_modules/escodegen": { + "escodegen": { "version": "1.14.3", "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", - "dependencies": { + "requires": { "esprima": "^4.0.1", "estraverse": "^4.2.0", "esutils": "^2.0.2", "optionator": "^0.8.1", "source-map": "~0.6.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/escodegen/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" } }, - "node_modules/eslint": { + "eslint": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", "dev": true, - "dependencies": { + "requires": { "@babel/code-frame": "^7.0.0", "ajv": "^6.10.0", "chalk": "^2.1.0", @@ -4634,465 +4491,363 @@ "text-table": "^0.2.0", "v8-compile-cache": "^2.0.3" }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "dependencies": { + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + } + }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } } }, - "node_modules/eslint-config-airbnb": { + "eslint-config-airbnb": { "version": "17.1.1", "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-17.1.1.tgz", "integrity": "sha512-xCu//8a/aWqagKljt+1/qAM62BYZeNq04HmdevG5yUGWpja0I/xhqd6GdLRch5oetEGFiJAnvtGuTEAese53Qg==", "dev": true, - "dependencies": { + "requires": { "eslint-config-airbnb-base": "^13.2.0", "object.assign": "^4.1.0", "object.entries": "^1.1.0" - }, - "engines": { - "node": ">= 4" } }, - "node_modules/eslint-config-airbnb-base": { + "eslint-config-airbnb-base": { "version": "13.2.0", "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.2.0.tgz", "integrity": "sha512-1mg/7eoB4AUeB0X1c/ho4vb2gYkNH8Trr/EgCT/aGmKhhG+F6vF5s8+iRBlWAzFIAphxIdp3YfEKgEl0f9Xg+w==", "dev": true, - "dependencies": { + "requires": { "confusing-browser-globals": "^1.0.5", "object.assign": "^4.1.0", "object.entries": "^1.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", - "dev": true, - "dependencies": { - "debug": "^2.6.9", - "resolve": "^1.13.1" } }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", "dev": true, + "requires": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + }, "dependencies": { - "ms": "2.0.0" + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } } }, - "node_modules/eslint-import-resolver-node/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/eslint-module-utils": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", - "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", + "eslint-module-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.1.tgz", + "integrity": "sha512-fjoetBXQZq2tSTWZ9yWVl2KuFrTZZH3V+9iD1V1RfpDgxzJR+mPd/KZmMiA8gbPqdBzpNiEHOuT7IYEWxrH0zQ==", "dev": true, - "dependencies": { - "debug": "^2.6.9", + "requires": { + "debug": "^3.2.7", + "find-up": "^2.1.0", "pkg-dir": "^2.0.0" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "dependencies": { - "ms": "2.0.0" + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + } } }, - "node_modules/eslint-module-utils/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/eslint-module-utils/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-module-utils/node_modules/pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-flowtype": { + "eslint-plugin-flowtype": { "version": "3.13.0", "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-3.13.0.tgz", "integrity": "sha512-bhewp36P+t7cEV0b6OdmoRWJCBYRiHFlqPZAG1oS3SF+Y0LQkeDvFSM4oxoxvczD1OdONCXMlJfQFiWLcV9urw==", "dev": true, - "dependencies": { + "requires": { "lodash": "^4.17.15" - }, - "engines": { - "node": ">=4" } }, - "node_modules/eslint-plugin-import": { - "version": "2.22.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz", - "integrity": "sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg==", + "eslint-plugin-import": { + "version": "2.25.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.3.tgz", + "integrity": "sha512-RzAVbby+72IB3iOEL8clzPLzL3wpDrlwjsTBAQXgyp5SeTqqY+0bFubwuo+y/HLhNZcXV4XqTBO4LGsfyHIDXg==", "dev": true, - "dependencies": { - "array-includes": "^3.1.1", - "array.prototype.flat": "^1.2.3", - "contains-path": "^0.1.0", + "requires": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", "debug": "^2.6.9", - "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.3", - "eslint-module-utils": "^2.6.0", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.1", "has": "^1.0.3", + "is-core-module": "^2.8.0", + "is-glob": "^4.0.3", "minimatch": "^3.0.4", - "object.values": "^1.1.1", - "read-pkg-up": "^2.0.0", - "resolve": "^1.17.0", - "tsconfig-paths": "^3.9.0" + "object.values": "^1.1.5", + "resolve": "^1.20.0", + "tsconfig-paths": "^3.11.0" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "dependencies": { - "ms": "2.0.0" + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } } }, - "node_modules/eslint-plugin-import/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/eslint-plugin-mocha": { + "eslint-plugin-mocha": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-6.3.0.tgz", "integrity": "sha512-Cd2roo8caAyG21oKaaNTj7cqeYRWW1I2B5SfpKRp0Ip1gkfwoR1Ow0IGlPWnNjzywdF4n+kHL8/9vM6zCJUxdg==", "dev": true, - "dependencies": { + "requires": { "eslint-utils": "^2.0.0", "ramda": "^0.27.0" - }, - "engines": { - "node": ">=8.0.0" } }, - "node_modules/eslint-scope": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", - "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "dependencies": { - "esrecurse": "^4.1.0", + "requires": { + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" } }, - "node_modules/eslint-utils": { + "eslint-utils": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, - "dependencies": { + "requires": { "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" } }, - "node_modules/eslint-visitor-keys": { + "eslint-visitor-keys": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/eslint/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint/node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/eslint/node_modules/eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/eslint/node_modules/glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "dependencies": { - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/eslint/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } + "dev": true }, - "node_modules/espree": { + "espree": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", "dev": true, - "dependencies": { + "requires": { "acorn": "^7.1.1", "acorn-jsx": "^5.2.0", "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6.0.0" } }, - "node_modules/esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, - "node_modules/esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, - "dependencies": { + "requires": { "estraverse": "^5.1.0" }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", - "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", - "dev": true, - "engines": { - "node": ">=4.0" + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } } }, - "node_modules/esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, - "dependencies": { - "estraverse": "^4.1.0" + "requires": { + "estraverse": "^5.2.0" }, - "engines": { - "node": ">=4.0" + "dependencies": { + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + } } }, - "node_modules/estraverse": { + "estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "engines": { - "node": ">=4.0" - } + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, - "node_modules/esutils": { + "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "engines": { - "node": ">=0.10.0" - } + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, - "node_modules/event-emitter": { + "event-emitter": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", "dev": true, - "dependencies": { + "requires": { "d": "1", "es5-ext": "~0.10.14" } }, - "node_modules/eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "dev": true }, - "node_modules/events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": true, - "engines": { - "node": ">=0.8.x" - } + "events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true }, - "node_modules/evp_bytestokey": { + "evp_bytestokey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, - "dependencies": { + "requires": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" } }, - "node_modules/execa": { + "execa": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/execa/-/execa-2.1.0.tgz", "integrity": "sha512-Y/URAVapfbYy2Xp/gb6A0E7iR8xeqOCXsuuaoMn7A5PzrXUK84E1gyiEfq0wQd/GHA6GsoHWwhNq8anb0mleIw==", "dev": true, - "dependencies": { + "requires": { "cross-spawn": "^7.0.0", "get-stream": "^5.0.0", "is-stream": "^2.0.0", @@ -5103,75 +4858,56 @@ "signal-exit": "^3.0.2", "strip-final-newline": "^2.0.0" }, - "engines": { - "node": "^8.12.0 || >=9.7.0" - } - }, - "node_modules/execa/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/execa/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/execa/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/execa/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/execa/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } } }, - "node_modules/expand-brackets": { + "expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, - "dependencies": { + "requires": { "debug": "^2.3.3", "define-property": "^0.2.5", "extend-shallow": "^2.0.1", @@ -5180,135 +4916,123 @@ "snapdragon": "^0.8.1", "to-regex": "^3.0.1" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } } }, - "node_modules/expand-brackets/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/expand-tilde": { + "expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", "dev": true, - "dependencies": { + "requires": { "homedir-polyfill": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expo-random": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/expo-random/-/expo-random-8.2.1.tgz", - "integrity": "sha512-5qcR00xMONKXy6QyNWOcslD0Ka6FYE+5wDLxeG6sZYakBMZ+7CZqXIHU56z2oY3ZjrA6sqy5mJcj1naNOweHMw==", - "optional": true, - "dependencies": { - "base64-js": "^1.3.0" } }, - "node_modules/ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "ext": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.6.0.tgz", + "integrity": "sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg==", "dev": true, + "requires": { + "type": "^2.5.0" + }, "dependencies": { - "type": "^2.0.0" + "type": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.5.0.tgz", + "integrity": "sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw==", + "dev": true + } } }, - "node_modules/ext/node_modules/type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", - "dev": true - }, - "node_modules/extend": { + "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true }, - "node_modules/extend-shallow": { + "extend-shallow": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, - "dependencies": { + "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extend-shallow/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } } }, - "node_modules/external-editor": { + "external-editor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, - "dependencies": { + "requires": { "chardet": "^0.7.0", "iconv-lite": "^0.4.24", "tmp": "^0.0.33" }, - "engines": { - "node": ">=4" + "dependencies": { + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + } } }, - "node_modules/extglob": { + "extglob": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, - "dependencies": { + "requires": { "array-unique": "^0.3.2", "define-property": "^1.0.0", "expand-brackets": "^2.1.4", @@ -5318,220 +5042,192 @@ "snapdragon": "^0.8.1", "to-regex": "^3.0.1" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } } }, - "node_modules/extract-zip": { + "extract-zip": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", "dev": true, - "dependencies": { + "requires": { "concat-stream": "^1.6.2", "debug": "^2.6.9", "mkdirp": "^0.5.4", "yauzl": "^2.10.0" }, - "bin": { - "extract-zip": "cli.js" - } - }, - "node_modules/extract-zip/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, "dependencies": { - "ms": "2.0.0" + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } } }, - "node_modules/extract-zip/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", "dev": true }, - "node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true, - "engines": [ - "node >=0.6.0" - ] - }, - "node_modules/fancy-log": { + "fancy-log": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", "dev": true, - "dependencies": { + "requires": { "ansi-gray": "^0.1.1", "color-support": "^1.1.3", "parse-node-version": "^1.0.0", "time-stamp": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/fast-deep-equal": { + "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, - "node_modules/fast-json-stable-stringify": { + "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, - "node_modules/fast-levenshtein": { + "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, - "node_modules/fd-slicer": { + "fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "fd-slicer": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", "dev": true, - "dependencies": { + "requires": { "pend": "~1.2.0" } }, - "node_modules/figgy-pudding": { + "figgy-pudding": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", "dev": true }, - "node_modules/figures": { + "figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, - "dependencies": { + "requires": { "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" } }, - "node_modules/file-entry-cache": { + "file-entry-cache": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", "dev": true, - "dependencies": { + "requires": { "flat-cache": "^2.0.1" - }, - "engines": { - "node": ">=4" } }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + "file-uri-to-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz", + "integrity": "sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg==" }, - "node_modules/fill-range": { + "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, - "dependencies": { + "requires": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", "repeat-string": "^1.6.1", "to-regex-range": "^2.1.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, - "node_modules/finalhandler": { + "finalhandler": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "dev": true, - "dependencies": { + "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", @@ -5540,607 +5236,555 @@ "statuses": "~1.5.0", "unpipe": "~1.0.0" }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", "pkg-dir": "^3.0.0" - }, - "engines": { - "node": ">=6" } }, - "node_modules/find-up": { + "find-up": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, - "dependencies": { + "requires": { "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" } }, - "node_modules/findup-sync": { + "findup-sync": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", "dev": true, - "dependencies": { + "requires": { "detect-file": "^1.0.0", "is-glob": "^4.0.0", "micromatch": "^3.0.4", "resolve-dir": "^1.0.1" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/fined": { + "fined": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", "dev": true, - "dependencies": { + "requires": { "expand-tilde": "^2.0.2", "is-plain-object": "^2.0.3", "object.defaults": "^1.1.0", "object.pick": "^1.2.0", "parse-filepath": "^1.0.1" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/flagged-respawn": { + "flagged-respawn": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true, - "engines": { - "node": ">= 0.10" - } + "dev": true }, - "node_modules/flat": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", - "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", + "flat": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz", + "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==", "dev": true, - "dependencies": { + "requires": { "is-buffer": "~2.0.3" }, - "bin": { - "flat": "cli.js" + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true + } } }, - "node_modules/flat-cache": { + "flat-cache": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", "dev": true, - "dependencies": { + "requires": { "flatted": "^2.0.0", "rimraf": "2.6.3", "write": "1.0.3" }, - "engines": { - "node": ">=4" - } - }, - "node_modules/flat-cache/node_modules/rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/flat/node_modules/is-buffer": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", - "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", - "dev": true, - "engines": { - "node": ">=4" + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, - "node_modules/flatted": { + "flatted": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, - "node_modules/flow-bin": { + "flow-bin": { "version": "0.103.0", "resolved": "https://registry.npmjs.org/flow-bin/-/flow-bin-0.103.0.tgz", "integrity": "sha512-Y3yrnE5ICN1Kl/y10BwjA3JSuS+gt4jVPNyUNCZb0RqmkdssMrW8QNNysJYvhgAY/JBJH8Qv7NVUf11MiwfSlA==", - "dev": true, - "bin": { - "flow": "cli.js" - }, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/flush-write-stream": { + "flush-write-stream": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", "dev": true, - "dependencies": { + "requires": { "inherits": "^2.0.3", "readable-stream": "^2.3.6" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "node_modules/follow-redirects": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.12.1.tgz", - "integrity": "sha512-tmRv0AVuR7ZyouUHLeNSiO6pqulF7dYa3s19c6t+wz9LD69/uSzdMxJ2S91nTI9U3rt/IldxpzMOFejp6f0hjg==", - "dev": true, - "engines": { - "node": ">=4.0" - } + "follow-redirects": { + "version": "1.14.7", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz", + "integrity": "sha512-wtphSXy7d4/OR+MvIFbCVBDzZ5520qV8XfPklSN5QtxuMUJZ+b0Wnst1e1lCDocfzuCkHqj8k0FpZqO+UIaKNA==", + "dev": true }, - "node_modules/for-in": { + "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/for-own": { + "for-own": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", "dev": true, - "dependencies": { + "requires": { "for-in": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/foreground-child/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" } }, - "node_modules/foreground-child/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/foreground-child/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/foreground-child/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/foreground-child/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/forever-agent": { + "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true, - "engines": { - "node": "*" - } + "dev": true }, - "node_modules/form-data": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", - "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", - "dependencies": { + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "requires": { "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", + "combined-stream": "^1.0.8", "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" } }, - "node_modules/formidable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", - "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" + "formidable": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.6.tgz", + "integrity": "sha512-KcpbcpuLNOwrEjnbpMC0gS+X8ciDoZE1kkqzat4a8vrprf+s9pKNQ/QIwWfbfs4ltgmFl3MD177SNTkve3BwGQ==" }, - "node_modules/fragment-cache": { + "fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "dev": true, - "dependencies": { + "requires": { "map-cache": "^0.2.2" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/from2": { + "from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "dev": true, - "dependencies": { + "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "node_modules/fromentries": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.1.tgz", - "integrity": "sha512-Xu2Qh8yqYuDhQGOhD5iJGninErSfI9A3FrriD3tjUgV5VbJFeH8vfgZ9HnC6jWN80QDVNQK5vmxRAmEAp7Mevw==", - "dev": true - }, - "node_modules/fs-constants": { + "fs-constants": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", "dev": true }, - "node_modules/fs-extra": { + "fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "dependencies": { + "requires": { "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" } }, - "node_modules/fs-mkdirp-stream": { + "fs-mkdirp-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", "dev": true, - "dependencies": { + "requires": { "graceful-fs": "^4.1.11", "through2": "^2.0.3" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/fs-write-stream-atomic": { + "fs-write-stream-atomic": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", "dev": true, - "dependencies": { + "requires": { "graceful-fs": "^4.1.2", "iferr": "^0.1.5", "imurmurhash": "^0.1.4", "readable-stream": "1 || 2" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "node_modules/fs.realpath": { + "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, - "node_modules/fsevents": { + "fsevents": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", "dev": true, "optional": true, - "os": [ - "darwin" - ], - "dependencies": { + "requires": { "bindings": "^1.5.0", "nan": "^2.12.1" - }, - "engines": { - "node": ">= 4.0" } }, - "node_modules/fstream": { + "fstream": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", "dev": true, - "dependencies": { + "requires": { "graceful-fs": "^4.1.2", "inherits": "~2.0.0", "mkdirp": ">=0.5 0", "rimraf": "2" }, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/fstream/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, - "node_modules/ftp": { + "ftp": { "version": "0.3.10", "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", - "dependencies": { + "requires": { "readable-stream": "1.1.x", "xregexp": "2.0.0" }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/ftp/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "node_modules/ftp/node_modules/readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + } } }, - "node_modules/ftp/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "node_modules/function-bind": { + "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "node_modules/functional-red-black-tree": { + "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, - "node_modules/gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true }, - "node_modules/get-caller-file": { + "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, - "node_modules/get-func-name": { + "get-func-name": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", - "dev": true, - "engines": { - "node": "*" - } + "dev": true }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" } }, - "node_modules/get-stream": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", - "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", "dev": true, - "dependencies": { + "requires": { "pump": "^3.0.0" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/get-stream/node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } } }, - "node_modules/get-uri": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", - "integrity": "sha512-v7LT/s8kVjs+Tx0ykk1I+H/rbpzkHvuIq87LmeXptcf5sNWm9uQiwjNAt94SJPA1zOlCntmnOlJvVWKmzsxG8Q==", - "dependencies": { - "data-uri-to-buffer": "1", - "debug": "2", - "extend": "~3.0.2", - "file-uri-to-path": "1", - "ftp": "~0.3.10", - "readable-stream": "2" + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" } }, - "node_modules/get-uri/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dependencies": { - "ms": "2.0.0" + "get-uri": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-3.0.2.tgz", + "integrity": "sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg==", + "requires": { + "@tootallnate/once": "1", + "data-uri-to-buffer": "3", + "debug": "4", + "file-uri-to-path": "2", + "fs-extra": "^8.1.0", + "ftp": "^0.3.10" } }, - "node_modules/get-uri/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/get-value": { + "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "dev": true }, - "node_modules/getpass": { + "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "dev": true, - "dependencies": { + "requires": { "assert-plus": "^1.0.0" } }, - "node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", "dev": true, - "dependencies": { + "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" } }, - "node_modules/glob-parent": { + "glob-parent": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, - "dependencies": { + "requires": { "is-glob": "^3.1.0", "path-dirname": "^1.0.0" - } - }, - "node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.0" }, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } } }, - "node_modules/glob-stream": { + "glob-stream": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", "dev": true, - "dependencies": { + "requires": { "extend": "^3.0.0", "glob": "^7.1.1", "glob-parent": "^3.1.0", @@ -6152,16 +5796,51 @@ "to-absolute-glob": "^2.0.0", "unique-stream": "^2.0.2" }, - "engines": { - "node": ">= 0.10" + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "node_modules/glob-watcher": { + "glob-watcher": { "version": "5.0.5", "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.5.tgz", "integrity": "sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw==", "dev": true, - "dependencies": { + "requires": { "anymatch": "^2.0.0", "async-done": "^1.2.0", "chokidar": "^2.0.0", @@ -6169,14931 +5848,238 @@ "just-debounce": "^1.0.0", "normalize-path": "^3.0.0", "object.defaults": "^1.1.0" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/global-modules": { + "global-modules": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", "dev": true, - "dependencies": { + "requires": { "global-prefix": "^1.0.1", "is-windows": "^1.0.1", "resolve-dir": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/global-prefix": { + "global-prefix": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", "dev": true, - "dependencies": { + "requires": { "expand-tilde": "^2.0.2", "homedir-polyfill": "^1.0.1", "ini": "^1.3.4", "is-windows": "^1.0.1", "which": "^1.2.14" - }, - "engines": { - "node": ">=0.10.0" } }, - "node_modules/globals": { + "globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } + "dev": true }, - "node_modules/glogg": { + "glogg": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", "dev": true, - "dependencies": { + "requires": { "sparkles": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" } }, - "node_modules/graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", - "dev": true + "graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==" }, - "node_modules/growl": { + "growl": { "version": "1.10.5", "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true, - "engines": { - "node": ">=4.x" - } + "dev": true }, - "node_modules/gulp": { + "gulp": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz", "integrity": "sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==", "dev": true, - "dependencies": { + "requires": { "glob-watcher": "^5.0.3", "gulp-cli": "^2.2.0", "undertaker": "^1.2.1", "vinyl-fs": "^3.0.0" }, - "bin": { - "gulp": "bin/gulp.js" - }, - "engines": { - "node": ">= 0.10" + "dependencies": { + "gulp-cli": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", + "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1", + "archy": "^1.0.0", + "array-sort": "^1.0.0", + "color-support": "^1.1.3", + "concat-stream": "^1.6.0", + "copy-props": "^2.0.1", + "fancy-log": "^1.3.2", + "gulplog": "^1.0.0", + "interpret": "^1.4.0", + "isobject": "^3.0.1", + "liftoff": "^3.1.0", + "matchdep": "^2.0.0", + "mute-stdout": "^1.0.0", + "pretty-hrtime": "^1.0.0", + "replace-homedir": "^1.0.0", + "semver-greatest-satisfied-range": "^1.1.0", + "v8flags": "^3.2.0", + "yargs": "^7.1.0" + } + } } }, - "node_modules/gulp-babel": { + "gulp-babel": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/gulp-babel/-/gulp-babel-8.0.0.tgz", "integrity": "sha512-oomaIqDXxFkg7lbpBou/gnUkX51/Y/M2ZfSjL2hdqXTAlSWZcgZtd2o0cOH0r/eE8LWD0+Q/PsLsr2DKOoqToQ==", "dev": true, - "dependencies": { + "requires": { "plugin-error": "^1.0.1", "replace-ext": "^1.0.0", "through2": "^2.0.0", "vinyl-sourcemaps-apply": "^0.2.0" - }, - "engines": { - "node": ">=6" } }, - "node_modules/gulp-clean": { + "gulp-clean": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/gulp-clean/-/gulp-clean-0.4.0.tgz", "integrity": "sha512-DARK8rNMo4lHOFLGTiHEJdf19GuoBDHqGUaypz+fOhrvOs3iFO7ntdYtdpNxv+AzSJBx/JfypF0yEj9ks1IStQ==", "dev": true, - "dependencies": { + "requires": { "fancy-log": "^1.3.2", "plugin-error": "^0.1.2", "rimraf": "^2.6.2", "through2": "^2.0.3", "vinyl": "^2.1.0" }, - "engines": { - "node": ">=0.9" - } - }, - "node_modules/gulp-clean/node_modules/arr-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", - "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", - "dev": true, "dependencies": { - "arr-flatten": "^1.0.1", - "array-slice": "^0.2.3" - }, - "engines": { - "node": ">=0.10.0" + "arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1", + "array-slice": "^0.2.3" + } + }, + "arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", + "dev": true + }, + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "dev": true + }, + "extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "dev": true, + "requires": { + "kind-of": "^1.1.0" + } + }, + "kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", + "dev": true + }, + "plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "dev": true, + "requires": { + "ansi-cyan": "^0.1.1", + "ansi-red": "^0.1.1", + "arr-diff": "^1.0.1", + "arr-union": "^2.0.1", + "extend-shallow": "^1.1.2" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } } }, - "node_modules/gulp-clean/node_modules/arr-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", - "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-clean/node_modules/array-slice": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-clean/node_modules/extend-shallow": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", - "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", - "dev": true, - "dependencies": { - "kind-of": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-clean/node_modules/kind-of": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", - "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-clean/node_modules/plugin-error": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", - "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", - "dev": true, - "dependencies": { - "ansi-cyan": "^0.1.1", - "ansi-red": "^0.1.1", - "arr-diff": "^1.0.1", - "arr-union": "^2.0.1", - "extend-shallow": "^1.1.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-clean/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/gulp-eslint": { + "gulp-eslint": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/gulp-eslint/-/gulp-eslint-6.0.0.tgz", "integrity": "sha512-dCVPSh1sA+UVhn7JSQt7KEb4An2sQNbOdB3PA8UCfxsoPlAKjJHxYHGXdXC7eb+V1FAnilSFFqslPrq037l1ig==", "dev": true, - "dependencies": { + "requires": { "eslint": "^6.0.0", "fancy-log": "^1.3.2", "plugin-error": "^1.0.1" } }, - "node_modules/gulp-exec": { + "gulp-exec": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/gulp-exec/-/gulp-exec-4.0.0.tgz", "integrity": "sha512-A9JvTyB3P4huusd/43bTr6SDg3MqBxL9AQbLnsKSO6/91wVkHfxgeJZlgDMkqK8sMel4so8wcko4SZOeB1UCgA==", "dev": true, - "dependencies": { + "requires": { "lodash.template": "^4.4.0", "plugin-error": "^1.0.1", "through2": "^3.0.1" - } - }, - "node_modules/gulp-exec/node_modules/through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", - "dev": true, + }, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } } }, - "node_modules/gulp-gzip": { + "gulp-gzip": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/gulp-gzip/-/gulp-gzip-1.4.2.tgz", "integrity": "sha512-ZIxfkUwk2XmZPTT9pPHrHUQlZMyp9nPhg2sfoeN27mBGpi7OaHnOD+WCN41NXjfJQ69lV1nQ9LLm1hYxx4h3UQ==", "dev": true, - "dependencies": { + "requires": { "ansi-colors": "^1.0.1", "bytes": "^3.0.0", "fancy-log": "^1.3.2", "plugin-error": "^1.0.0", "stream-to-array": "^2.3.0", "through2": "^2.0.3" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/gulp-istanbul": { - "resolved": "git+ssh://git@github.com/raipubnub/gulp-istanbul.git#d29ac973735a24c1e6e6983aaab998e2939b2b3a", - "dev": true, - "dependencies": { - "istanbul": "^0.4.0", - "istanbul-threshold-checker": "^0.2.1", - "lodash": "^4.0.0", - "plugin-error": "^1.0.0", - "through2": "^3.0.0", - "vinyl-sourcemaps-apply": "^0.2.1" - } - }, - "node_modules/gulp-istanbul/node_modules/through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" } }, - "node_modules/gulp-mocha": { + "gulp-mocha": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/gulp-mocha/-/gulp-mocha-7.0.2.tgz", "integrity": "sha512-ZXBGN60TXYnFhttr19mfZBOtlHYGx9SvCSc+Kr/m2cMIGloUe176HBPwvPqlakPuQgeTGVRS47NmcdZUereKMQ==", "dev": true, - "dependencies": { - "dargs": "^7.0.0", - "execa": "^2.0.4", - "mocha": "^6.2.0", - "plugin-error": "^1.0.1", - "supports-color": "^7.0.0", - "through2": "^3.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gulp-mocha/node_modules/ansi-colors": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/gulp-mocha/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/gulp-mocha/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/gulp-mocha/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "node_modules/gulp-mocha/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/gulp-mocha/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gulp-mocha/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/gulp-mocha/node_modules/glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/gulp-mocha/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/gulp-mocha/node_modules/js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/gulp-mocha/node_modules/mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/gulp-mocha/node_modules/mocha": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-6.2.3.tgz", - "integrity": "sha512-0R/3FvjIGH3eEuG17ccFPk117XL2rWxatr81a57D+r/x2uTYZRbdZ4oVidEUMh2W2TJDa7MdAb12Lm2/qrKajg==", - "dev": true, - "dependencies": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "2.2.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.4", - "ms": "2.1.1", - "node-environment-flags": "1.0.5", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/gulp-mocha/node_modules/mocha/node_modules/supports-color": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", - "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gulp-mocha/node_modules/ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "node_modules/gulp-mocha/node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "node_modules/gulp-mocha/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gulp-mocha/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gulp-mocha/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gulp-mocha/node_modules/supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gulp-mocha/node_modules/supports-color/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gulp-mocha/node_modules/through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" - } - }, - "node_modules/gulp-mocha/node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "node_modules/gulp-mocha/node_modules/wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gulp-mocha/node_modules/y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "node_modules/gulp-mocha/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "node_modules/gulp-mocha/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "node_modules/gulp-rename": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.4.0.tgz", - "integrity": "sha512-swzbIGb/arEoFK89tPY58vg3Ok1bw+d35PfUNwWqdo7KM4jkmuGA78JiDNqR+JeZFaeeHnRg9N7aihX3YPmsyg==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/gulp-sourcemaps": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-2.6.5.tgz", - "integrity": "sha512-SYLBRzPTew8T5Suh2U8jCSDKY+4NARua4aqjj8HOysBh2tSgT9u4jc1FYirAdPx1akUxxDeK++fqw6Jg0LkQRg==", - "dev": true, - "dependencies": { - "@gulp-sourcemaps/identity-map": "1.X", - "@gulp-sourcemaps/map-sources": "1.X", - "acorn": "5.X", - "convert-source-map": "1.X", - "css": "2.X", - "debug-fabulous": "1.X", - "detect-newline": "2.X", - "graceful-fs": "4.X", - "source-map": "~0.6.0", - "strip-bom-string": "1.X", - "through2": "2.X" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gulp-sourcemaps/node_modules/acorn": { - "version": "5.7.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", - "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/gulp-terser": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/gulp-terser/-/gulp-terser-1.3.0.tgz", - "integrity": "sha512-EvizE1LJLfOh3/EmpJoq9iqYziObOkTzFgN4KvxfB0ICp3+W5H+MOO9B7Xq5Iuu9N+RKByNJLmqR+Ph13U1vtQ==", - "dev": true, - "dependencies": { - "plugin-error": "^1.0.1", - "terser": ">=4", - "through2": "^4.0.2", - "vinyl-sourcemaps-apply": "^0.2.1" - } - }, - "node_modules/gulp-terser/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/gulp-terser/node_modules/through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", - "dev": true, - "dependencies": { - "readable-stream": "3" - } - }, - "node_modules/gulp-uglify": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-3.0.2.tgz", - "integrity": "sha512-gk1dhB74AkV2kzqPMQBLA3jPoIAPd/nlNzP2XMDSG8XZrqnlCiDGAqC+rZOumzFvB5zOphlFh6yr3lgcAb/OOg==", - "dev": true, - "dependencies": { - "array-each": "^1.0.1", - "extend-shallow": "^3.0.2", - "gulplog": "^1.0.0", - "has-gulplog": "^0.1.0", - "isobject": "^3.0.1", - "make-error-cause": "^1.1.1", - "safe-buffer": "^5.1.2", - "through2": "^2.0.0", - "uglify-js": "^3.0.5", - "vinyl-sourcemaps-apply": "^0.2.0" - } - }, - "node_modules/gulp-uglify/node_modules/uglify-js": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.10.1.tgz", - "integrity": "sha512-RjxApKkrPJB6kjJxQS3iZlf///REXWYxYJxO/MpmlQzVkDWVI3PSnCBWezMecmTU/TRkNxrl8bmsfFQCp+LO+Q==", - "dev": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/gulp-unzip": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/gulp-unzip/-/gulp-unzip-1.1.0.tgz", - "integrity": "sha512-qGISRgwo0yUZuUz4wOOuyOmo83a53nVc3s/5uEGdmRFbhYv+koMmVqX1+sPuBTLSFEGbOiGED1V5h6k4RczsAA==", - "dev": true, - "dependencies": { - "unzipper": "0.9.15", - "vinyl": "2.2.0", - "vinyl-buffer": "1.0.1" - } - }, - "node_modules/gulp/node_modules/gulp-cli": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", - "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==", - "dev": true, - "dependencies": { - "ansi-colors": "^1.0.1", - "archy": "^1.0.0", - "array-sort": "^1.0.0", - "color-support": "^1.1.3", - "concat-stream": "^1.6.0", - "copy-props": "^2.0.1", - "fancy-log": "^1.3.2", - "gulplog": "^1.0.0", - "interpret": "^1.4.0", - "isobject": "^3.0.1", - "liftoff": "^3.1.0", - "matchdep": "^2.0.0", - "mute-stdout": "^1.0.0", - "pretty-hrtime": "^1.0.0", - "replace-homedir": "^1.0.0", - "semver-greatest-satisfied-range": "^1.1.0", - "v8flags": "^3.2.0", - "yargs": "^7.1.0" - }, - "bin": { - "gulp": "bin/gulp.js" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/gulp4-run-sequence": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/gulp4-run-sequence/-/gulp4-run-sequence-0.4.0.tgz", - "integrity": "sha512-JRKO0kWSmEHNYrSynnlDSwnYdtA7detMrgMjAeGclytjlRV85buBLxdPtm+fNNOWkO2hHW6Af/ZyD17EK96Fmw==", - "dev": true - }, - "node_modules/gulplog": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", - "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", - "dev": true, - "dependencies": { - "glogg": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/handlebars": { - "version": "4.7.6", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", - "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, - "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" - } - }, - "node_modules/handlebars/node_modules/uglify-js": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.10.1.tgz", - "integrity": "sha512-RjxApKkrPJB6kjJxQS3iZlf///REXWYxYJxO/MpmlQzVkDWVI3PSnCBWezMecmTU/TRkNxrl8bmsfFQCp+LO+Q==", - "dev": true, - "optional": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-binary2": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", - "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", - "dev": true, - "dependencies": { - "isarray": "2.0.1" - } - }, - "node_modules/has-binary2/node_modules/isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - }, - "node_modules/has-cors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", - "dev": true - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-gulplog": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", - "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", - "dev": true, - "dependencies": { - "sparkles": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/hash-base/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/hash-base/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/hasha": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-2.2.0.tgz", - "integrity": "sha1-eNfL/B5tZjA/55g3NlmEUXsvbuE=", - "dev": true, - "dependencies": { - "is-stream": "^1.0.1", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hasha/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "bin": { - "he": "bin/he" - } - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "dependencies": { - "parse-passwd": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", - "dependencies": { - "agent-base": "4", - "debug": "3.1.0" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/http-proxy-agent/node_modules/debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/http-proxy-agent/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, - "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" - } - }, - "node_modules/https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, - "node_modules/https-proxy-agent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-3.0.1.tgz", - "integrity": "sha512-+ML2Rbh6DAuee7d07tYGEKOEi2voWPUGan+ExdPbPW6Z3svq+JCqr0v8WmKPOkz1vOVykPCBSuobe7G8GJUtVg==", - "dependencies": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", - "dependencies": { - "ms": "^2.0.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true - }, - "node_modules/iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true - }, - "node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/imports-loader": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/imports-loader/-/imports-loader-0.7.1.tgz", - "integrity": "sha1-8gS180cCoywdt9SNidXoZ6BEElM=", - "dev": true, - "dependencies": { - "loader-utils": "^1.0.2", - "source-map": "^0.5.6" - } - }, - "node_modules/imports-loader/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/inquirer/node_modules/ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "dependencies": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "devOptional": true, - "dependencies": { - "loose-envify": "^1.0.0" - } - }, - "node_modules/invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" - }, - "node_modules/is-absolute": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", - "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", - "dev": true, - "dependencies": { - "is-relative": "^1.0.0", - "is-windows": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "node_modules/is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "dependencies": { - "binary-extensions": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "node_modules/is-callable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-descriptor/node_modules/kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-negated-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", - "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", - "dev": true - }, - "node_modules/is-regex": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", - "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-relative": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", - "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", - "dev": true, - "dependencies": { - "is-unc-path": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "node_modules/is-unc-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", - "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", - "dev": true, - "dependencies": { - "unc-path-regex": "^0.1.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "node_modules/is-valid-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", - "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "node_modules/isbinaryfile": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.6.tgz", - "integrity": "sha512-ORrEy+SNVqUhrCaal4hA4fBzhggQQ+BaLntyPOdoEiwlKZW9BZiJXjg3RMiruE4tPEI3pyVPpySHQF/dKWperg==", - "dev": true, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/isomorphic-webcrypto": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/isomorphic-webcrypto/-/isomorphic-webcrypto-2.3.6.tgz", - "integrity": "sha512-d1prB3b0UMWOao5DK3+O2Dr5ZJCakzB5Q+2kCWNkNuM9ln7VB8TSw2SwUjbnErzg7cgsYja+VPQaeBtXEojpew==", - "dependencies": { - "@peculiar/webcrypto": "^1.0.22", - "asmcrypto.js": "^0.22.0", - "b64-lite": "^1.3.1", - "b64u-lite": "^1.0.1", - "msrcrypto": "^1.5.6", - "str2buf": "^1.3.0", - "webcrypto-shim": "^0.1.4" - }, - "optionalDependencies": { - "@unimodules/core": "*", - "@unimodules/react-native-adapter": "*", - "expo-random": "*", - "react-native-securerandom": "^0.1.1" - } - }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "node_modules/istanbul": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", - "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", - "dev": true, - "dependencies": { - "abbrev": "1.0.x", - "async": "1.x", - "escodegen": "1.8.x", - "esprima": "2.7.x", - "glob": "^5.0.15", - "handlebars": "^4.0.1", - "js-yaml": "3.x", - "mkdirp": "0.5.x", - "nopt": "3.x", - "once": "1.x", - "resolve": "1.1.x", - "supports-color": "^3.1.0", - "which": "^1.1.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "istanbul": "lib/cli.js" - } - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-hook": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", - "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", - "dev": true, - "dependencies": { - "append-transform": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-processinfo": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz", - "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==", - "dev": true, - "dependencies": { - "archy": "^1.0.0", - "cross-spawn": "^7.0.0", - "istanbul-lib-coverage": "^3.0.0-alpha.1", - "make-dir": "^3.0.0", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "uuid": "^3.3.3" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-processinfo/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/istanbul-lib-processinfo/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-processinfo/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-processinfo/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-processinfo/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-processinfo/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-processinfo/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", - "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-threshold-checker": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/istanbul-threshold-checker/-/istanbul-threshold-checker-0.2.1.tgz", - "integrity": "sha1-xdyU6PLMXNP/0zVFL4S1U8QkgzE=", - "dev": true, - "dependencies": { - "istanbul": "~0.4.5", - "lodash": "~4.17.2" - } - }, - "node_modules/istanbul/node_modules/escodegen": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", - "dev": true, - "dependencies": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=0.12.0" - }, - "optionalDependencies": { - "source-map": "~0.2.0" - } - }, - "node_modules/istanbul/node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul/node_modules/estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul/node_modules/glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "dev": true, - "dependencies": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/istanbul/node_modules/has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul/node_modules/resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true - }, - "node_modules/istanbul/node_modules/source-map": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", - "dev": true, - "optional": true, - "dependencies": { - "amdefine": ">=0.0.4" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/istanbul/node_modules/supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "dependencies": { - "has-flag": "^1.0.0" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "devOptional": true - }, - "node_modules/js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/js-yaml/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-loader": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz", - "integrity": "sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w==", - "dev": true - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "node_modules/json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "node_modules/json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "node_modules/just-debounce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", - "integrity": "sha1-h/zPrv/AtozRnVX2cilD+SnqNeo=", - "dev": true - }, - "node_modules/just-extend": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", - "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", - "dev": true - }, - "node_modules/karma": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/karma/-/karma-5.1.1.tgz", - "integrity": "sha512-xAlOr5PMqUbiKXSv5PCniHWV3aiwj6wIZ0gUVcwpTCPVQm/qH2WAMFWxtnpM6KJqhkRWrIpovR4Rb0rn8GtJzQ==", - "dev": true, - "dependencies": { - "body-parser": "^1.19.0", - "braces": "^3.0.2", - "chokidar": "^3.0.0", - "colors": "^1.4.0", - "connect": "^3.7.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.1", - "flatted": "^2.0.2", - "glob": "^7.1.6", - "graceful-fs": "^4.2.4", - "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.6", - "lodash": "^4.17.15", - "log4js": "^6.2.1", - "mime": "^2.4.5", - "minimatch": "^3.0.4", - "qjobs": "^1.2.0", - "range-parser": "^1.2.1", - "rimraf": "^3.0.2", - "socket.io": "^2.3.0", - "source-map": "^0.6.1", - "tmp": "0.2.1", - "ua-parser-js": "0.7.21", - "yargs": "^15.3.1" - }, - "bin": { - "karma": "bin/karma" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/karma-babel-preprocessor": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/karma-babel-preprocessor/-/karma-babel-preprocessor-8.0.1.tgz", - "integrity": "sha512-5upyawNi3c7Gg6tPH1FWRVTmUijGf3v1GV4ScLM/2jKdDP18SlaKlUpu8eJrRI3STO8qK1bkqFcdgAA364nLYQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/karma-chai": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/karma-chai/-/karma-chai-0.1.0.tgz", - "integrity": "sha1-vuWtQEAFF4Ea40u5RfdikJEIt5o=", - "dev": true - }, - "node_modules/karma-chrome-launcher": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.0.tgz", - "integrity": "sha512-3dPs/n7vgz1rxxtynpzZTvb9y/GIaW8xjAwcIGttLbycqoFtI7yo1NGnQi6oFTherRE+GIhCAHZC4vEqWGhNvg==", - "dev": true, - "dependencies": { - "which": "^1.2.1" - } - }, - "node_modules/karma-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.0.3.tgz", - "integrity": "sha512-atDvLQqvPcLxhED0cmXYdsPMCQuh6Asa9FMZW1bhNqlVEhJoB9qyZ2BY1gu7D/rr5GLGb5QzYO4siQskxaWP/g==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.1", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.0", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/karma-mocha": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/karma-mocha/-/karma-mocha-2.0.1.tgz", - "integrity": "sha512-Tzd5HBjm8his2OA4bouAsATYEpZrp9vC7z5E5j4C5Of5Rrs1jY67RAwXNcVmd/Bnk1wgvQRou0zGVLey44G4tQ==", - "dev": true, - "dependencies": { - "minimist": "^1.2.3" - } - }, - "node_modules/karma-phantomjs-launcher": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/karma-phantomjs-launcher/-/karma-phantomjs-launcher-1.0.4.tgz", - "integrity": "sha1-0jyjSAG9qYY60xjju0vUBisTrNI=", - "dev": true, - "dependencies": { - "lodash": "^4.0.1", - "phantomjs-prebuilt": "^2.1.7" - } - }, - "node_modules/karma-sinon-chai": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/karma-sinon-chai/-/karma-sinon-chai-2.0.2.tgz", - "integrity": "sha512-SDgh6V0CUd+7ruL1d3yG6lFzmJNGRNQuEuCYXLaorruNP9nwQfA7hpsp4clx4CbOo5Gsajh3qUOT7CrVStUKMw==", - "dev": true - }, - "node_modules/karma-sourcemap-loader": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz", - "integrity": "sha1-kTIsd/jxPUb+0GKwQuEAnUxFBdg=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2" - } - }, - "node_modules/karma-spec-reporter": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/karma-spec-reporter/-/karma-spec-reporter-0.0.32.tgz", - "integrity": "sha1-LpxyB+pyZ3EmAln4K+y1QyCeRAo=", - "dev": true, - "dependencies": { - "colors": "^1.1.2" - } - }, - "node_modules/karma-webpack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/karma-webpack/-/karma-webpack-4.0.2.tgz", - "integrity": "sha512-970/okAsdUOmiMOCY8sb17A2I8neS25Ad9uhyK3GHgmRSIFJbDcNEFE8dqqUhNe9OHiCC9k3DMrSmtd/0ymP1A==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "loader-utils": "^1.1.0", - "neo-async": "^2.6.1", - "schema-utils": "^1.0.0", - "source-map": "^0.7.3", - "webpack-dev-middleware": "^3.7.0" - }, - "engines": { - "node": ">= 8.9.0" - } - }, - "node_modules/karma-webpack/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/karma-webpack/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/karma/node_modules/ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "dependencies": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/karma/node_modules/binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/karma/node_modules/chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.1.2" - } - }, - "node_modules/karma/node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/karma/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/karma/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/karma/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/karma/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/karma/node_modules/glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/karma/node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/karma/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/karma/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/karma/node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "node_modules/karma/node_modules/string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/karma/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/karma/node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "node_modules/karma/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "node_modules/karma/node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/karma/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/kew": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/kew/-/kew-0.7.0.tgz", - "integrity": "sha1-edk9LTM2PW/dKXCzNdkUGtWR15s=", - "dev": true - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", - "integrity": "sha1-QIhDO0azsbolnXh4XY6W9zugJDk=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.9" - } - }, - "node_modules/last-run": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz", - "integrity": "sha1-RblpQsF7HHnHchmCWbqUO+v4yls=", - "dev": true, - "dependencies": { - "default-resolution": "^2.0.0", - "es6-weak-map": "^2.0.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", - "dev": true, - "dependencies": { - "readable-stream": "^2.0.5" - }, - "engines": { - "node": ">= 0.6.3" - } - }, - "node_modules/lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, - "dependencies": { - "invert-kv": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lead": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz", - "integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=", - "dev": true, - "dependencies": { - "flush-write-stream": "^1.0.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", - "dev": true, - "dependencies": { - "leven": "^3.1.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/liftoff": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz", - "integrity": "sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog==", - "dev": true, - "dependencies": { - "extend": "^3.0.0", - "findup-sync": "^3.0.0", - "fined": "^1.0.1", - "flagged-respawn": "^1.0.0", - "is-plain-object": "^2.0.4", - "object.map": "^1.0.0", - "rechoir": "^0.6.2", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/lil-uuid": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/lil-uuid/-/lil-uuid-0.1.1.tgz", - "integrity": "sha1-+e3PI/AOQr9D8PhD2Y2LU/M0HxY=" - }, - "node_modules/listenercount": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", - "integrity": "sha1-hMinKrWcRyUyFIDJdeZQg0LnCTc=", - "dev": true - }, - "node_modules/load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true, - "engines": { - "node": ">=4.3.0 <5.0.0 || >=5.10" - } - }, - "node_modules/loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/loader-utils/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", - "devOptional": true - }, - "node_modules/lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", - "dev": true - }, - "node_modules/lodash.clone": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", - "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", - "dev": true - }, - "node_modules/lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", - "dev": true - }, - "node_modules/lodash.some": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", - "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=", - "dev": true - }, - "node_modules/lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", - "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", - "dev": true, - "dependencies": { - "lodash._reinterpolate": "^3.0.0", - "lodash.templatesettings": "^4.0.0" - } - }, - "node_modules/lodash.templatesettings": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", - "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", - "dev": true, - "dependencies": { - "lodash._reinterpolate": "^3.0.0" - } - }, - "node_modules/log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", - "dev": true, - "dependencies": { - "chalk": "^2.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/log4js": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.3.0.tgz", - "integrity": "sha512-Mc8jNuSFImQUIateBFwdOQcmC6Q5maU0VVvdC2R6XMb66/VnT+7WS4D/0EeNMZu1YODmJe5NIn2XftCzEocUgw==", - "dev": true, - "dependencies": { - "date-format": "^3.0.0", - "debug": "^4.1.1", - "flatted": "^2.0.1", - "rfdc": "^1.1.4", - "streamroller": "^2.2.4" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/log4js/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/lolex": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", - "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", - "dev": true - }, - "node_modules/longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "devOptional": true, - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/lru-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", - "integrity": "sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM=", - "dev": true, - "dependencies": { - "es5-ext": "~0.10.2" - } - }, - "node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/make-error-cause": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/make-error-cause/-/make-error-cause-1.2.2.tgz", - "integrity": "sha1-3wOI/NCzeBbf8KX7gQiTl3fcvJ0=", - "dev": true, - "dependencies": { - "make-error": "^1.2.0" - } - }, - "node_modules/make-iterator": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", - "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "dependencies": { - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/matchdep": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", - "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=", - "dev": true, - "dependencies": { - "findup-sync": "^2.0.0", - "micromatch": "^3.0.4", - "resolve": "^1.4.0", - "stack-trace": "0.0.10" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/matchdep/node_modules/findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", - "dev": true, - "dependencies": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/matchdep/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memoizee": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.14.tgz", - "integrity": "sha512-/SWFvWegAIYAO4NQMpcX+gcra0yEZu4OntmUdrBaWrJncxOqAziGFlHxc7yjKVK2uu3lpPW27P27wkR82wA8mg==", - "dev": true, - "dependencies": { - "d": "1", - "es5-ext": "^0.10.45", - "es6-weak-map": "^2.0.2", - "event-emitter": "^0.3.5", - "is-promise": "^2.1", - "lru-queue": "0.1", - "next-tick": "1", - "timers-ext": "^0.1.5" - } - }, - "node_modules/memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "dependencies": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "bin": { - "miller-rabin": "bin/miller-rabin" - } - }, - "node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", - "dependencies": { - "mime-db": "1.44.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, - "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "node_modules/mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, - "dependencies": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/mississippi/node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mixin-deep/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true - }, - "node_modules/mocha": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz", - "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==", - "dev": true, - "dependencies": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "chokidar": "3.3.0", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "3.0.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.5", - "ms": "2.1.1", - "node-environment-flags": "1.0.6", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" - }, - "engines": { - "node": ">= 8.10.0" - } - }, - "node_modules/mocha/node_modules/ansi-colors": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mocha/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mocha/node_modules/anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mocha/node_modules/binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mocha/node_modules/chokidar": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", - "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.1.1" - } - }, - "node_modules/mocha/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "node_modules/mocha/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/mocha/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mocha/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/mocha/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/mocha/node_modules/glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/mocha/node_modules/glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/mocha/node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/mocha/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/mocha/node_modules/js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/mocha/node_modules/log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", - "dev": true, - "dependencies": { - "chalk": "^2.4.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "node_modules/mocha/node_modules/node-environment-flags": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", - "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==", - "dev": true, - "dependencies": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" - } - }, - "node_modules/mocha/node_modules/readdirp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", - "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", - "dev": true, - "dependencies": { - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mocha/node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "node_modules/mocha/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/mocha/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/mocha/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mocha/node_modules/supports-color": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", - "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/mocha/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/mocha/node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "node_modules/mocha/node_modules/wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/mocha/node_modules/y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "node_modules/mocha/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "node_modules/mocha/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "node_modules/move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, - "dependencies": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - } - }, - "node_modules/move-concurrently/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/msrcrypto": { - "version": "1.5.8", - "resolved": "https://registry.npmjs.org/msrcrypto/-/msrcrypto-1.5.8.tgz", - "integrity": "sha512-ujZ0TRuozHKKm6eGbKHfXef7f+esIhEckmThVnz7RNyiOJd7a6MXj2JGBoL9cnPDW+JMG16MoTUh5X+XXjI66Q==" - }, - "node_modules/mute-stdout": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz", - "integrity": "sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nan": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", - "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", - "dev": true, - "optional": true - }, - "node_modules/nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "node_modules/negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true - }, - "node_modules/netmask": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", - "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", - "dev": true - }, - "node_modules/nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "node_modules/nise": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", - "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", - "dev": true, - "dependencies": { - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^5.0.1", - "path-to-regexp": "^1.7.0" - } - }, - "node_modules/nise/node_modules/lolex": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", - "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "node_modules/nock": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/nock/-/nock-9.6.1.tgz", - "integrity": "sha512-EDgl/WgNQ0C1BZZlASOQkQdE6tAWXJi8QQlugqzN64JJkvZ7ILijZuG24r4vCC7yOfnm6HKpne5AGExLGCeBWg==", - "dev": true, - "engines": [ - "node >= 4.0" - ], - "dependencies": { - "chai": "^4.1.2", - "debug": "^3.1.0", - "deep-equal": "^1.0.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.5", - "mkdirp": "^0.5.0", - "propagate": "^1.0.0", - "qs": "^6.5.1", - "semver": "^5.5.0" - } - }, - "node_modules/node-environment-flags": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.5.tgz", - "integrity": "sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==", - "dev": true, - "dependencies": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" - } - }, - "node_modules/node-fetch": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", - "dev": true, - "dependencies": { - "encoding": "^0.1.11", - "is-stream": "^1.0.1" - } - }, - "node_modules/node-fetch/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, - "dependencies": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - } - }, - "node_modules/node-libs-browser/node_modules/buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "node_modules/node-libs-browser/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - }, - "node_modules/node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/node-preload": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", - "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", - "dev": true, - "dependencies": { - "process-on-spawn": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/node-releases": { - "version": "1.1.60", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", - "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", - "dev": true - }, - "node_modules/nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - } - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/now-and-later": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz", - "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==", - "dev": true, - "dependencies": { - "once": "^1.3.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/npm-run-path": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz", - "integrity": "sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/nyc": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", - "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", - "dev": true, - "dependencies": { - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "caching-transform": "^4.0.0", - "convert-source-map": "^1.7.0", - "decamelize": "^1.2.0", - "find-cache-dir": "^3.2.0", - "find-up": "^4.1.0", - "foreground-child": "^2.0.0", - "get-package-type": "^0.1.0", - "glob": "^7.1.6", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-processinfo": "^2.0.2", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "make-dir": "^3.0.0", - "node-preload": "^0.2.1", - "p-map": "^3.0.0", - "process-on-spawn": "^1.0.0", - "resolve-from": "^5.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "spawn-wrap": "^2.0.0", - "test-exclude": "^6.0.0", - "yargs": "^15.0.2" - }, - "bin": { - "nyc": "bin/nyc.js" - }, - "engines": { - "node": ">=8.9" - } - }, - "node_modules/nyc/node_modules/ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "dependencies": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/nyc/node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/nyc/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/nyc/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/nyc/node_modules/find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/nyc/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "node_modules/nyc/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/nyc/node_modules/string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "node_modules/nyc/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "node_modules/nyc/node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nyc/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "devOptional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", - "dev": true - }, - "node_modules/object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", - "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", - "dev": true - }, - "node_modules/object-is": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", - "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "dependencies": { - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.defaults": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", - "dev": true, - "dependencies": { - "array-each": "^1.0.1", - "array-slice": "^1.0.0", - "for-own": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.entries": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.2.tgz", - "integrity": "sha512-BQdB9qKmb/HyNdMNWVr7O3+z5MUIx3aiegEIJqjMBbBf0YT9RRxTJSim4mzFqtyr7PDAHigq0N9dO0m0tRakQA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5", - "has": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", - "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/object.map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", - "dev": true, - "dependencies": { - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.reduce": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz", - "integrity": "sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60=", - "dev": true, - "dependencies": { - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.values": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", - "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1", - "function-bind": "^1.1.1", - "has": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.1.tgz", - "integrity": "sha512-ZpZpjcJeugQfWsfyQlshVoowIIQ1qBGSVll4rfDq6JJVO//fesjoX808hXWfBjY+ROZgpKDI5TRSRBSoJiZ8eg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/ordered-read-streams": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", - "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", - "dev": true, - "dependencies": { - "readable-stream": "^2.0.1" - } - }, - "node_modules/os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "node_modules/os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, - "dependencies": { - "lcid": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-finally": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", - "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pac-proxy-agent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-3.0.1.tgz", - "integrity": "sha512-44DUg21G/liUZ48dJpUSjZnFfZro/0K5JTyFYLBcmh9+T6Ooi4/i4efwUiEy0+4oQusCBqWdhv16XohIj1GqnQ==", - "dependencies": { - "agent-base": "^4.2.0", - "debug": "^4.1.1", - "get-uri": "^2.0.0", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^3.0.0", - "pac-resolver": "^3.0.0", - "raw-body": "^2.2.0", - "socks-proxy-agent": "^4.0.1" - } - }, - "node_modules/pac-proxy-agent/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/pac-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", - "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", - "dependencies": { - "co": "^4.6.0", - "degenerator": "^1.0.4", - "ip": "^1.1.5", - "netmask": "^1.0.6", - "thunkify": "^2.1.2" - } - }, - "node_modules/package-hash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", - "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.15", - "hasha": "^5.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/package-hash/node_modules/hasha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz", - "integrity": "sha512-2W+jKdQbAdSIrggA8Q35Br8qKadTrqCTC8+XZvBWepKDK6m9XkX6Iz1a2yh2KP01kzAR/dpuMeUnocoLYDcskw==", - "dev": true, - "dependencies": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "node_modules/parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, - "dependencies": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", - "dev": true, - "dependencies": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/parse-filepath": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", - "dev": true, - "dependencies": { - "is-absolute": "^1.0.0", - "map-cache": "^0.2.0", - "path-root": "^0.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "dependencies": { - "error-ex": "^1.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/parseqs": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", - "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", - "dev": true, - "dependencies": { - "better-assert": "~1.0.0" - } - }, - "node_modules/parseuri": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", - "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", - "dev": true, - "dependencies": { - "better-assert": "~1.0.0" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true - }, - "node_modules/path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "node_modules/path-root": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", - "dev": true, - "dependencies": { - "path-root-regex": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-root-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "dependencies": { - "isarray": "0.0.1" - } - }, - "node_modules/path-to-regexp/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "node_modules/path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "dependencies": { - "pify": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-type/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pathval": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", - "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/pbkdf2": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", - "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", - "dev": true, - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", - "dev": true - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "node_modules/phantomjs-prebuilt": { - "version": "2.1.16", - "resolved": "https://registry.npmjs.org/phantomjs-prebuilt/-/phantomjs-prebuilt-2.1.16.tgz", - "integrity": "sha1-79ISpKOWbTZHaE6ouniFSb4q7+8=", - "dev": true, - "dependencies": { - "es6-promise": "^4.0.3", - "extract-zip": "^1.6.5", - "fs-extra": "^1.0.0", - "hasha": "^2.2.0", - "kew": "^0.7.0", - "progress": "^1.1.8", - "request": "^2.81.0", - "request-progress": "^2.0.1", - "which": "^1.2.10" - }, - "bin": { - "phantomjs": "bin/phantomjs" - } - }, - "node_modules/phantomjs-prebuilt/node_modules/fs-extra": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-1.0.0.tgz", - "integrity": "sha1-zTzl9+fLYUWIP8rjGR6Yd/hYeVA=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0" - } - }, - "node_modules/phantomjs-prebuilt/node_modules/jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/phantomjs-prebuilt/node_modules/progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "dependencies": { - "pinkie": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, - "dependencies": { - "node-modules-regexp": "^1.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/plugin-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", - "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", - "dev": true, - "dependencies": { - "ansi-colors": "^1.0.1", - "arr-diff": "^4.0.0", - "arr-union": "^3.1.0", - "extend-shallow": "^3.0.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "node_modules/process-on-spawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", - "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", - "dev": true, - "dependencies": { - "fromentries": "^1.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true - }, - "node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "optional": true, - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "node_modules/propagate": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/propagate/-/propagate-1.0.0.tgz", - "integrity": "sha1-AMLa7t2iDofjeCs0Stuhzd1q1wk=", - "dev": true, - "engines": [ - "node >= 0.8.1" - ] - }, - "node_modules/proxy-agent": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.1.1.tgz", - "integrity": "sha512-WudaR0eTsDx33O3EJE16PjBRZWcX8GqCEeERw1W3hZJgH/F2a46g7jty6UGty6NeJ4CKQy8ds2CJPMiyeqaTvw==", - "dependencies": { - "agent-base": "^4.2.0", - "debug": "4", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^3.0.0", - "lru-cache": "^5.1.1", - "pac-proxy-agent": "^3.0.1", - "proxy-from-env": "^1.0.0", - "socks-proxy-agent": "^4.0.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/proxy-agent/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" - }, - "node_modules/prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true - }, - "node_modules/psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "node_modules/public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "dependencies": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/public-encrypt/node_modules/bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - }, - "node_modules/pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "dependencies": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - } - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/puppeteer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-5.2.1.tgz", - "integrity": "sha512-PZoZG7u+T6N1GFWBQmGVG162Ak5MAy8nYSVpeeQrwJK2oYUlDWpHEJPcd/zopyuEMTv7DiztS1blgny1txR2qw==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "debug": "^4.1.0", - "devtools-protocol": "0.0.781568", - "extract-zip": "^2.0.0", - "https-proxy-agent": "^4.0.0", - "mime": "^2.0.3", - "pkg-dir": "^4.2.0", - "progress": "^2.0.1", - "proxy-from-env": "^1.0.0", - "rimraf": "^3.0.2", - "tar-fs": "^2.0.0", - "unbzip2-stream": "^1.3.3", - "ws": "^7.2.3" - }, - "engines": { - "node": ">=10.18.1" - } - }, - "node_modules/puppeteer/node_modules/agent-base": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-5.1.1.tgz", - "integrity": "sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==", - "dev": true, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/puppeteer/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/puppeteer/node_modules/extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - }, - "bin": { - "extract-zip": "cli.js" - }, - "engines": { - "node": ">= 10.17.0" - }, - "optionalDependencies": { - "@types/yauzl": "^2.9.1" - } - }, - "node_modules/puppeteer/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/puppeteer/node_modules/https-proxy-agent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz", - "integrity": "sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg==", - "dev": true, - "dependencies": { - "agent-base": "5", - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/puppeteer/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/puppeteer/node_modules/mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/puppeteer/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/puppeteer/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/puppeteer/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pvtsutils": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.0.11.tgz", - "integrity": "sha512-k040UEiUms7Ey8fwRvCBvlqcuOxK9IMBnnmIijk0jkAs+gdZQkayenRQ1a2Z574i2HyFVyJ+zwomZc5QEjzewg==" - }, - "node_modules/pvutils": { - "version": "1.0.17", - "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.0.17.tgz", - "integrity": "sha512-wLHYUQxWaXVQvKnwIDWFVKDJku9XDCvyhhxoq8dc5MFdIlRenyPI9eSfEtcvgHgD7FlvCyGAlWgOzRnZD99GZQ==", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/qjobs": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true, - "engines": { - "node": ">=0.9" - } - }, - "node_modules/qs": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.4.tgz", - "integrity": "sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/ramda": { - "version": "0.27.1", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.1.tgz", - "integrity": "sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==", - "dev": true - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "dependencies": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", - "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.3", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "optional": true - }, - "node_modules/react-native-securerandom": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/react-native-securerandom/-/react-native-securerandom-0.1.1.tgz", - "integrity": "sha1-8TBiOkEsM4sK+t7bwgTFy7i/IHA=", - "optional": true, - "dependencies": { - "base64-js": "*" - } - }, - "node_modules/read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, - "dependencies": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "dependencies": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up/node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", - "dev": true, - "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/regenerate": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", - "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.7", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", - "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" - }, - "node_modules/regenerator-transform": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", - "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, - "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "dev": true, - "engines": { - "node": ">=6.5.0" - } - }, - "node_modules/regexpu-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", - "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsgen": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", - "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", - "dev": true - }, - "node_modules/regjsparser": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", - "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", - "dev": true, - "dependencies": { - "es6-error": "^4.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/remove-bom-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", - "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5", - "is-utf8": "^0.2.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/remove-bom-stream": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz", - "integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=", - "dev": true, - "dependencies": { - "remove-bom-buffer": "^3.0.0", - "safe-buffer": "^5.1.0", - "through2": "^2.0.3" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "node_modules/repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/replace-ext": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", - "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/replace-homedir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz", - "integrity": "sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw=", - "dev": true, - "dependencies": { - "homedir-polyfill": "^1.0.1", - "is-absolute": "^1.0.0", - "remove-trailing-separator": "^1.1.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "dependencies": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/request-progress": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-2.0.1.tgz", - "integrity": "sha1-XTa7V5YcZzqlt4jbyBQf3yO0Tgg=", - "dev": true, - "dependencies": { - "throttleit": "^1.0.0" - } - }, - "node_modules/request/node_modules/form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/request/node_modules/qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true - }, - "node_modules/resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dev": true, - "dependencies": { - "path-parse": "^1.0.6" - } - }, - "node_modules/resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", - "dev": true, - "dependencies": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/resolve-options": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz", - "integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=", - "dev": true, - "dependencies": { - "value-or-function": "^3.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/rfdc": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.4.tgz", - "integrity": "sha512-5C9HXdzK8EAqN7JDif30jqsBzavB7wLpaubisuQIGHWf2gUXSpzy6ArX/+Da8RjFpagWsCn+pIgxTMAmKw9Zug==", - "dev": true - }, - "node_modules/right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, - "dependencies": { - "align-text": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, - "dependencies": { - "aproba": "^1.1.1" - } - }, - "node_modules/rxjs": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.2.tgz", - "integrity": "sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg==", - "dev": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/rxjs/node_modules/tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", - "dev": true - }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "dependencies": { - "ret": "~0.1.10" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" - }, - "engines": { - "node": ">= 8.9.0" - } - }, - "node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/semver-greatest-satisfied-range": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz", - "integrity": "sha1-E+jCZYq5aRywzXEJMkAoDTb3els=", - "dev": true, - "dependencies": { - "sver-compat": "^1.5.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/serialize-javascript": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", - "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "node_modules/set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true - }, - "node_modules/setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" - }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true - }, - "node_modules/sinon": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", - "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^1.4.0", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.3", - "diff": "^3.5.0", - "lolex": "^4.2.0", - "nise": "^1.5.2", - "supports-color": "^5.5.0" - } - }, - "node_modules/sinon-chai": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.5.0.tgz", - "integrity": "sha512-IifbusYiQBpUxxFJkR3wTU68xzBN0+bxCScEaKMjBvAQERg6FnTTc1F17rseLb1tjmkJ23730AXpFI0c47FgAg==", - "dev": true - }, - "node_modules/slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/smart-buffer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", - "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==", - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, - "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "dependencies": { - "kind-of": "^3.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/snapdragon/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/socket.io": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.3.0.tgz", - "integrity": "sha512-2A892lrj0GcgR/9Qk81EaY2gYhCBxurV0PfmmESO6p27QPrUK1J3zdns+5QPqvUYK2q657nSj0guoIil9+7eFg==", - "dev": true, - "dependencies": { - "debug": "~4.1.0", - "engine.io": "~3.4.0", - "has-binary2": "~1.0.2", - "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.3.0", - "socket.io-parser": "~3.4.0" - } - }, - "node_modules/socket.io-adapter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", - "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", - "dev": true - }, - "node_modules/socket.io-client": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.3.0.tgz", - "integrity": "sha512-cEQQf24gET3rfhxZ2jJ5xzAOo/xhZwK+mOqtGRg5IowZsMgwvHwnf/mCRapAAkadhM26y+iydgwsXGObBB5ZdA==", - "dev": true, - "dependencies": { - "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", - "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~4.1.0", - "engine.io-client": "~3.4.0", - "has-binary2": "~1.0.2", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "socket.io-parser": "~3.3.0", - "to-array": "0.1.4" - } - }, - "node_modules/socket.io-client/node_modules/component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "node_modules/socket.io-client/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/socket.io-client/node_modules/isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - }, - "node_modules/socket.io-client/node_modules/socket.io-parser": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.0.tgz", - "integrity": "sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng==", - "dev": true, - "dependencies": { - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "isarray": "2.0.1" - } - }, - "node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/socket.io-parser": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.1.tgz", - "integrity": "sha512-11hMgzL+WCLWf1uFtHSNvliI++tcRUWdoeYuwIl+Axvwy9z2gQM+7nJyN3STj1tLj5JyIUH8/gpDGxzAlDdi0A==", - "dev": true, - "dependencies": { - "component-emitter": "1.2.1", - "debug": "~4.1.0", - "isarray": "2.0.1" - } - }, - "node_modules/socket.io-parser/node_modules/component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "node_modules/socket.io-parser/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/socket.io-parser/node_modules/isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - }, - "node_modules/socket.io/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/socks": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", - "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", - "dependencies": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" - }, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", - "dependencies": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/socks-proxy-agent/node_modules/agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", - "dependencies": { - "es6-promisify": "^5.0.0" - }, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true - }, - "node_modules/sparkles": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", - "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/spawn-wrap": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", - "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", - "dev": true, - "dependencies": { - "foreground-child": "^2.0.0", - "is-windows": "^1.0.2", - "make-dir": "^3.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "which": "^2.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/spawn-wrap/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/spawn-wrap/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/spawn-wrap/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", - "dev": true - }, - "node_modules/split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, - "dependencies": { - "extend-shallow": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "node_modules/sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "dependencies": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, - "dependencies": { - "figgy-pudding": "^3.5.1" - } - }, - "node_modules/stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stats-webpack-plugin": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/stats-webpack-plugin/-/stats-webpack-plugin-0.7.0.tgz", - "integrity": "sha512-NT0YGhwuQ0EOX+uPhhUcI6/+1Sq/pMzNuSCBVT4GbFl/ac6I/JZefBcjlECNfAb1t3GOx5dEj1Z7x0cAxeeVLQ==", - "dev": true, - "dependencies": { - "lodash": "^4.17.4" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/str2buf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/str2buf/-/str2buf-1.3.0.tgz", - "integrity": "sha512-xIBmHIUHYZDP4HyoXGHYNVmxlXLXDrtFHYT0eV6IOdEj3VO9ccaF1Ejl9Oq8iFjITllpT8FhaXb4KsNmw+3EuA==" - }, - "node_modules/stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, - "dependencies": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "node_modules/stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "node_modules/stream-exhaust": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", - "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", - "dev": true - }, - "node_modules/stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "dependencies": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "node_modules/stream-to-array": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", - "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", - "dev": true, - "dependencies": { - "any-promise": "^1.1.0" - } - }, - "node_modules/streamroller": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-2.2.4.tgz", - "integrity": "sha512-OG79qm3AujAM9ImoqgWEY1xG4HX+Lw+yY6qZj9R1K2mhF5bEmQ849wvrb+4vt4jLMLzwXttJlQbOdPOQVRv7DQ==", - "dev": true, - "dependencies": { - "date-format": "^2.1.0", - "debug": "^4.1.1", - "fs-extra": "^8.1.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/streamroller/node_modules/date-format": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz", - "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/streamroller/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", - "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", - "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/strip-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/superagent": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz", - "integrity": "sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA==", - "dependencies": { - "component-emitter": "^1.2.0", - "cookiejar": "^2.1.0", - "debug": "^3.1.0", - "extend": "^3.0.0", - "form-data": "^2.3.1", - "formidable": "^1.2.0", - "methods": "^1.1.1", - "mime": "^1.4.1", - "qs": "^6.5.1", - "readable-stream": "^2.3.5" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/superagent-proxy": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/superagent-proxy/-/superagent-proxy-2.0.0.tgz", - "integrity": "sha512-TktJma5jPdiH1BNN+reF/RMW3b8aBTCV7KlLFV0uYcREgNf3pvo7Rdt564OcFHwkGb3mYEhHuWPBhSbOwiNaYw==", - "dependencies": { - "debug": "^3.1.0", - "proxy-agent": "3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/sver-compat": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz", - "integrity": "sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg=", - "dev": true, - "dependencies": { - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" - } - }, - "node_modules/table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "dev": true, - "dependencies": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/table/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/table/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/table/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/table/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/table/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-fs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.0.tgz", - "integrity": "sha512-9uW5iDvrIMCVpvasdFHW0wJPez0K4JnMZtsuIeDI7HyMGJNxmDZDOCQROr7lXyS+iL/QMpj07qcjGYTSdRFXUg==", - "dev": true, - "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.0.0" - } - }, - "node_modules/tar-fs/node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/tar-stream": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.3.tgz", - "integrity": "sha512-Z9yri56Dih8IaK8gncVPx4Wqt86NDmQTSh49XLZgjWpGZL9GK9HKParS2scqHCC4w6X9Gh2jwaU45V47XTKwVA==", - "dev": true, - "dependencies": { - "bl": "^4.0.1", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-stream/node_modules/bl": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.2.tgz", - "integrity": "sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ==", - "dev": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/tar-stream/node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", - "dev": true, - "dependencies": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", - "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", - "dev": true, - "dependencies": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^3.1.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - }, - "engines": { - "node": ">= 6.9.0" - } - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "node_modules/throttleit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", - "integrity": "sha1-nnhYNtr0Z0MUWlmEtiaNgoUorGw=", - "dev": true - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "node_modules/through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "dependencies": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "node_modules/through2-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", - "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", - "dev": true, - "dependencies": { - "through2": "~2.0.0", - "xtend": "~4.0.0" - } - }, - "node_modules/thunkify": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", - "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=" - }, - "node_modules/time-stamp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", - "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", - "dev": true, - "dependencies": { - "setimmediate": "^1.0.4" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/timers-ext": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz", - "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==", - "dev": true, - "dependencies": { - "es5-ext": "~0.10.46", - "next-tick": "1" - } - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-absolute-glob": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", - "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", - "dev": true, - "dependencies": { - "is-absolute": "^1.0.0", - "is-negated-glob": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-array": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", - "dev": true - }, - "node_modules/to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-through": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz", - "integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=", - "dev": true, - "dependencies": { - "through2": "^2.0.3" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/traverse": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", - "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", - "dev": true - }, - "node_modules/tsconfig-paths": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", - "dev": true, - "dependencies": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.0", - "strip-bom": "^3.0.0" - } - }, - "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/tslib": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.0.tgz", - "integrity": "sha512-lTqkx847PI7xEDYJntxZH89L2/aXInsyF2luSafe/+0fHOMjlBNXdH6th7f70qxLDhul7KZK0zC8V5ZIyHl0/g==" - }, - "node_modules/tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "node_modules/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", - "dev": true - }, - "node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/ua-parser-js": { - "version": "0.7.21", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.21.tgz", - "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "dependencies": { - "source-map": "~0.5.1", - "yargs": "~3.10.0" - }, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - }, - "optionalDependencies": { - "uglify-to-browserify": "~1.0.0" - } - }, - "node_modules/uglify-js/node_modules/camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/uglify-js/node_modules/cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "dependencies": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - } - }, - "node_modules/uglify-js/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/uglify-js/node_modules/wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/uglify-js/node_modules/yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "dependencies": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - }, - "node_modules/uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, - "optional": true - }, - "node_modules/unbzip2-stream": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", - "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", - "dev": true, - "dependencies": { - "buffer": "^5.2.1", - "through": "^2.3.8" - } - }, - "node_modules/unc-path-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/underscore": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", - "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==", - "dev": true - }, - "node_modules/undertaker": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.1.tgz", - "integrity": "sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA==", - "dev": true, - "dependencies": { - "arr-flatten": "^1.0.1", - "arr-map": "^2.0.0", - "bach": "^1.0.0", - "collection-map": "^1.0.0", - "es6-weak-map": "^2.0.1", - "last-run": "^1.1.0", - "object.defaults": "^1.0.0", - "object.reduce": "^1.0.0", - "undertaker-registry": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/undertaker-registry": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz", - "integrity": "sha1-XkvaMI5KiirlhPm5pDWaSZglzFA=", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } - }, - "node_modules/unique-stream": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", - "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", - "dev": true, - "dependencies": { - "json-stable-stringify-without-jsonify": "^1.0.1", - "through2-filter": "^3.0.0" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "dependencies": { - "isarray": "1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unzipper": { - "version": "0.9.15", - "resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.9.15.tgz", - "integrity": "sha512-2aaUvO4RAeHDvOCuEtth7jrHFaCKTSXPqUkXwADaLBzGbgZGzUDccoEdJ5lW+3RmfpOZYNx0Rw6F6PUzM6caIA==", - "dev": true, - "dependencies": { - "big-integer": "^1.6.17", - "binary": "~0.3.0", - "bluebird": "~3.4.1", - "buffer-indexof-polyfill": "~1.0.0", - "duplexer2": "~0.1.4", - "fstream": "^1.0.12", - "listenercount": "~1.0.1", - "readable-stream": "~2.3.6", - "setimmediate": "~1.0.4" - } - }, - "node_modules/upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true, - "engines": { - "node": ">=4", - "yarn": "*" - } - }, - "node_modules/uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "node_modules/url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, - "node_modules/url/node_modules/punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - }, - "node_modules/use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, - "dependencies": { - "inherits": "2.0.3" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "node_modules/util/node_modules/inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/v8-compile-cache": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", - "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", - "dev": true - }, - "node_modules/v8flags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", - "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", - "dev": true, - "dependencies": { - "homedir-polyfill": "^1.0.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/value-or-function": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz", - "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/vinyl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", - "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", - "dev": true, - "dependencies": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/vinyl-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/vinyl-buffer/-/vinyl-buffer-1.0.1.tgz", - "integrity": "sha1-lsGjR5uMU5JULGEgKQE7Wyf4i78=", - "dev": true, - "dependencies": { - "bl": "^1.2.1", - "through2": "^2.0.3" - } - }, - "node_modules/vinyl-fs": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz", - "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==", - "dev": true, - "dependencies": { - "fs-mkdirp-stream": "^1.0.0", - "glob-stream": "^6.1.0", - "graceful-fs": "^4.0.0", - "is-valid-glob": "^1.0.0", - "lazystream": "^1.0.0", - "lead": "^1.0.0", - "object.assign": "^4.0.4", - "pumpify": "^1.3.5", - "readable-stream": "^2.3.3", - "remove-bom-buffer": "^3.0.0", - "remove-bom-stream": "^1.2.0", - "resolve-options": "^1.1.0", - "through2": "^2.0.0", - "to-through": "^2.0.0", - "value-or-function": "^3.0.0", - "vinyl": "^2.0.0", - "vinyl-sourcemap": "^1.1.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/vinyl-sourcemap": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz", - "integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=", - "dev": true, - "dependencies": { - "append-buffer": "^1.0.2", - "convert-source-map": "^1.5.0", - "graceful-fs": "^4.1.6", - "normalize-path": "^2.1.1", - "now-and-later": "^2.0.0", - "remove-bom-buffer": "^3.0.0", - "vinyl": "^2.0.0" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/vinyl-sourcemap/node_modules/normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/vinyl-sourcemaps-apply": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", - "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", - "dev": true, - "dependencies": { - "source-map": "^0.5.1" - } - }, - "node_modules/vinyl-sourcemaps-apply/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true - }, - "node_modules/void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/watchpack": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", - "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" - }, - "optionalDependencies": { - "chokidar": "^3.4.1", - "watchpack-chokidar2": "^2.0.0" - } - }, - "node_modules/watchpack-chokidar2": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", - "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", - "dev": true, - "optional": true, - "dependencies": { - "chokidar": "^2.1.8" - }, - "engines": { - "node": "<8.10.0" - } - }, - "node_modules/watchpack/node_modules/anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "optional": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/watchpack/node_modules/binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/watchpack/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "optional": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/watchpack/node_modules/chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", - "dev": true, - "optional": true, - "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" - }, - "engines": { - "node": ">= 8.10.0" - } - }, - "node_modules/watchpack/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "optional": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/watchpack/node_modules/fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/watchpack/node_modules/glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "optional": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/watchpack/node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "optional": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/watchpack/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/watchpack/node_modules/readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", - "dev": true, - "optional": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/watchpack/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "optional": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/webcrypto-core": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.1.2.tgz", - "integrity": "sha512-LxM/dTcXr/ZnwwKLox0tGEOIqvP7KIJ4Hk/fFPX20tr1EgqTmpEFZinmu4FzoGVbs6e4jI1priQKCDrOBD3L6w==", - "dependencies": { - "@peculiar/asn1-schema": "^2.0.1", - "@peculiar/json-schema": "^1.1.10", - "asn1js": "^2.0.26", - "pvtsutils": "^1.0.10", - "tslib": "^1.11.2" - } - }, - "node_modules/webcrypto-core/node_modules/tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" - }, - "node_modules/webcrypto-shim": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/webcrypto-shim/-/webcrypto-shim-0.1.6.tgz", - "integrity": "sha512-0o612s3S5z3IkDSRghIwd3Ul4X8NRmmZDpt6PWGI9gSM+nygVvrfzGjhIh4vwzlOJxYxS0fcFD1wh3yznuVzFg==" - }, - "node_modules/webpack": { - "version": "4.44.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", - "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/wasm-edit": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "acorn": "^6.4.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.3.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.3", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.7.4", - "webpack-sources": "^1.4.1" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/webpack-dev-middleware": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz", - "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==", - "dev": true, - "dependencies": { - "memory-fs": "^0.4.1", - "mime": "^2.4.4", - "mkdirp": "^0.5.1", - "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/webpack-dev-middleware/node_modules/mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/webpack-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", - "dev": true, - "dependencies": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/webpack-log/node_modules/ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "dependencies": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - } - }, - "node_modules/webpack-stream": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/webpack-stream/-/webpack-stream-5.2.1.tgz", - "integrity": "sha512-WvyVU0K1/VB1NZ7JfsaemVdG0PXAQUqbjUNW4A58th4pULvKMQxG+y33HXTL02JvD56ko2Cub+E2NyPwrLBT/A==", - "dev": true, - "dependencies": { - "fancy-log": "^1.3.3", - "lodash.clone": "^4.3.2", - "lodash.some": "^4.2.2", - "memory-fs": "^0.4.1", - "plugin-error": "^1.0.1", - "supports-color": "^5.5.0", - "through": "^2.3.8", - "vinyl": "^2.1.0", - "webpack": "^4.26.1" - }, - "engines": { - "node": ">= 6.11.5" - } - }, - "node_modules/webpack/node_modules/acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/webpack/node_modules/eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "dependencies": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true - }, - "node_modules/wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2" - } - }, - "node_modules/window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true - }, - "node_modules/worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, - "dependencies": { - "errno": "~0.1.7" - } - }, - "node_modules/wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "dependencies": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrapper-webpack-plugin": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrapper-webpack-plugin/-/wrapper-webpack-plugin-2.1.0.tgz", - "integrity": "sha512-e+2FhSYGCxhDq3PcUw5mRhH+8vcYa+9d9AuLChJUZ9ZbUPhQOHZ/O2dnN98iTqeUuvrzSSOv13+x/NhrAm5JEg==", - "dev": true, - "dependencies": { - "webpack-sources": "^1.1.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "node_modules/write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", - "dev": true, - "dependencies": { - "mkdirp": "^0.5.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/ws": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz", - "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==", - "dev": true, - "engines": { - "node": ">=8.3.0" - } - }, - "node_modules/xmlhttprequest-ssl": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", - "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/xregexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", - "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=" - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true, - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - }, - "node_modules/yargs": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz", - "integrity": "sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==", - "dev": true, - "dependencies": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "5.0.0-security.0" - } - }, - "node_modules/yargs-parser": { - "version": "5.0.0-security.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz", - "integrity": "sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==", - "dev": true, - "dependencies": { - "camelcase": "^3.0.0", - "object.assign": "^4.1.0" - } - }, - "node_modules/yargs-unparser": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", - "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", - "dev": true, - "dependencies": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "node_modules/yargs-unparser/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/yargs-unparser/node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/yargs-unparser/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/yargs-unparser/node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "node_modules/yargs-unparser/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "node_modules/yargs-unparser/node_modules/wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "node_modules/yargs-unparser/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "node_modules/yargs-unparser/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "node_modules/yargs/node_modules/find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "dependencies": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yargs/node_modules/load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yargs/node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yargs/node_modules/path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yargs/node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yargs/node_modules/read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "dependencies": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yargs/node_modules/read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "dependencies": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yargs/node_modules/strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "dependencies": { - "is-utf8": "^0.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/yeast": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", - "dev": true - } - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "@babel/compat-data": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.11.0.tgz", - "integrity": "sha512-TPSvJfv73ng0pfnEOh17bYMPQbI95+nGWc71Ss4vZdRBHTDqmM9Z8ZV4rYz8Ks7sfzc95n30k6ODIq5UGnXcYQ==", - "dev": true, - "requires": { - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "semver": "^5.5.0" - } - }, - "@babel/core": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", - "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-module-transforms": "^7.11.0", - "@babel/helpers": "^7.10.4", - "@babel/parser": "^7.11.1", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.11.0", - "@babel/types": "^7.11.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.0.tgz", - "integrity": "sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz", - "integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.4.tgz", - "integrity": "sha512-L0zGlFrGWZK4PbT8AszSfLTM5sDU1+Az/En9VrdT8/LmEiJt4zXt+Jve9DCAnQcbqDhCI+29y/L93mrDzddCcg==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.4.tgz", - "integrity": "sha512-a3rYhlsGV0UHNDvrtOXBg8/OpfV0OKTkxKPzIplS1zpx7CygDcWWxckxZeDd3gzPzC4kUT0A4nVFDK0wGMh4MQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.10.4", - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "levenary": "^1.1.1", - "semver": "^5.5.0" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.5.tgz", - "integrity": "sha512-0nkdeijB7VlZoLT3r/mY3bUkw3T8WG/hNw+FATs/6+pG2039IJWjTYL0VTISqsNHMUTEnwbVnc89WIJX9Qed0A==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-member-expression-to-functions": "^7.10.5", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.4.tgz", - "integrity": "sha512-2/hu58IEPKeoLF45DBwx3XFqsbCXmkdAay4spVr2x0jYgRxrSNp+ePwvSsy9g6YSaNDcKIQVPXk1Ov8S2edk2g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-regex": "^7.10.4", - "regexpu-core": "^4.7.0" - } - }, - "@babel/helper-define-map": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.10.5.tgz", - "integrity": "sha512-fMw4kgFB720aQFXSVaXr79pjjcW5puTCM16+rECJ/plGS+zByelE8l9nCpV1GibxTnFVmUuYG9U8wYfQHdzOEQ==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/types": "^7.10.5", - "lodash": "^4.17.19" - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.4.tgz", - "integrity": "sha512-4K71RyRQNPRrR85sr5QY4X3VwG4wtVoXZB9+L3r1Gp38DhELyHCtovqydRi7c1Ovb17eRGiQ/FD5s8JdU0Uy5A==", - "dev": true, - "requires": { - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", - "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", - "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.4.tgz", - "integrity": "sha512-wljroF5PgCk2juF69kanHVs6vrLwIPNp6DLD+Lrl3hoQ3PpPPikaDRNFA+0t81NOoMt2DL6WW/mdU8k4k6ZzuA==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.11.0.tgz", - "integrity": "sha512-JbFlKHFntRV5qKw3YC0CvQnDZ4XMwgzzBbld7Ly4Mj4cbFy3KywcR8NtNctRToMWJOVvLINJv525Gd6wwVEx/Q==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0" - } - }, - "@babel/helper-module-imports": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.10.4.tgz", - "integrity": "sha512-nEQJHqYavI217oD9+s5MUBzk6x1IlvoS9WTPfgG43CbMEeStE0v+r+TucWdx8KFGowPGvyOkDT9+7DHedIDnVw==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-module-transforms": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.11.0.tgz", - "integrity": "sha512-02EVu8COMuTRO1TAzdMtpBPbe6aQ1w/8fePD2YgQmxZU4gpNWaL9gK3Jp7dxlkUlUCJOTaSeA+Hrm1BRQwqIhg==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/template": "^7.10.4", - "@babel/types": "^7.11.0", - "lodash": "^4.17.19" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", - "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", - "dev": true, - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==", - "dev": true - }, - "@babel/helper-regex": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz", - "integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==", - "dev": true, - "requires": { - "lodash": "^4.17.19" - } - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.4.tgz", - "integrity": "sha512-86Lsr6NNw3qTNl+TBcF1oRZMaVzJtbWTyTko+CQL/tvNvcGYEFKbLXDPxtW0HKk3McNOk4KzY55itGWCAGK5tg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-wrap-function": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-replace-supers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.10.4.tgz", - "integrity": "sha512-sPxZfFXocEymYTdVK1UNmFPBN+Hv5mJkLPsYWwGBxZAxaWfFu+xqp7b6qWD0yjNuNL2VKc6L5M18tOXUP7NU0A==", - "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-simple-access": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.10.4.tgz", - "integrity": "sha512-0fMy72ej/VEvF8ULmX6yb5MtHG4uH4Dbd6I/aHDb/JVg0bbivwt9Wg+h3uMvX+QSFtwr5MeItvazbrc4jtRAXw==", - "dev": true, - "requires": { - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.11.0.tgz", - "integrity": "sha512-0XIdiQln4Elglgjbwo9wuJpL/K7AGCY26kmEt0+pRP0TAj4jjyNq1MjoRvikrTVqKcx4Gysxt4cXvVFXP/JO2Q==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", - "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", - "dev": true, - "requires": { - "@babel/types": "^7.11.0" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", - "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.10.4.tgz", - "integrity": "sha512-6py45WvEF0MhiLrdxtRjKjufwLL1/ob2qDJgg5JgNdojBAZSAKnAjkyOCNug6n+OBl4VW76XjvgSFTdaMcW0Ug==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helpers": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.10.4.tgz", - "integrity": "sha512-L2gX/XeUONeEbI78dXSrJzGdz4GQ+ZTA/aazfUsFaWjSe95kiCuOZ5HsXvkiw3iwF+mFHSRUfJU8t6YavocdXA==", - "dev": true, - "requires": { - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/highlight": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", - "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.1.tgz", - "integrity": "sha512-u9QMIRdKVF7hfEkb3nu2LgZDIzCQPv+yHD9Eg6ruoJLjkrQ9fFz4IBSlF/9XwoNri9+2F1IY+dYuOfZrXq8t3w==", - "dev": true - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.5.tgz", - "integrity": "sha512-cNMCVezQbrRGvXJwm9fu/1sJj9bHdGAgKodZdLqOQIpfoH3raqmRPBM17+lh7CzhiKRRBrGtZL9WcjxSoGYUSg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.4.tgz", - "integrity": "sha512-vhwkEROxzcHGNu2mzUC0OFFNXdZ4M23ib8aRRcJSsW8BZK9pQMD7QB7csl97NBbgGZO7ZyHUyKDnxzOaP4IrCg==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.4.tgz", - "integrity": "sha512-up6oID1LeidOOASNXgv/CFbgBqTuKJ0cJjz6An5tWD+NVBNlp3VNSBxv2ZdU7SYl3NxJC7agAQDApZusV6uFwQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.10.4.tgz", - "integrity": "sha512-aNdf0LY6/3WXkhh0Fdb6Zk9j1NMD8ovj3F6r0+3j837Pn1S1PdNtcwJ5EG9WkVPNHPxyJDaxMaAOVq4eki0qbg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.4.tgz", - "integrity": "sha512-fCL7QF0Jo83uy1K0P2YXrfX11tj3lkpN7l4dMv9Y9VkowkhkQDwFHFd8IiwyK5MZjE8UpbgokkgtcReH88Abaw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.0" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.11.0.tgz", - "integrity": "sha512-/f8p4z+Auz0Uaf+i8Ekf1iM7wUNLcViFUGiPxKeXvxTSl63B875YPiVdUDdem7hREcI0E0kSpEhS8tF5RphK7Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.4.tgz", - "integrity": "sha512-wq5n1M3ZUlHl9sqT2ok1T2/MTt6AXE0e1Lz4WzWBr95LsAZ5qDXe4KnFuauYyEyLiohvXFMdbsOTMyLZs91Zlw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.4.tgz", - "integrity": "sha512-73/G7QoRoeNkLZFxsoCCvlg4ezE4eM+57PnOqgaPOozd5myfj7p0muD1mRVJvbUWbOzD+q3No2bWbaKy+DJ8DA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.11.0.tgz", - "integrity": "sha512-wzch41N4yztwoRw0ak+37wxwJM2oiIiy6huGCoqkvSTA9acYWcPfn9Y4aJqmFFJ70KTJUu29f3DQ43uJ9HXzEA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.10.4" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.4.tgz", - "integrity": "sha512-LflT6nPh+GK2MnFiKDyLiqSqVHkQnVf7hdoAvyTnnKj9xB3docGRsdPuxp6qqqW19ifK3xgc9U5/FwrSaCNX5g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.11.0.tgz", - "integrity": "sha512-v9fZIu3Y8562RRwhm1BbMRxtqZNFmFA2EG+pT2diuU8PT3H6T/KXoZ54KgYisfOFZHV6PfvAiBIZ9Rcz+/JCxA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.4.tgz", - "integrity": "sha512-wh5GJleuI8k3emgTg5KkJK6kHNsGEr0uBTDBuQUBJwckk9xs1ez79ioheEVVxMLyPscB0LfkbVHslQqIzWV6Bw==", - "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.4.tgz", - "integrity": "sha512-H+3fOgPnEXFL9zGYtKQe4IDOPKYlZdF1kqFDQRRb8PK4B8af1vAGK04tF5iQAAsui+mHNBQSAtd2/ndEDe9wuA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", - "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-flow": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.10.4.tgz", - "integrity": "sha512-yxQsX1dJixF4qEEdzVbst3SZQ58Nrooz8NV9Z9GL4byTE25BvJgl5lf0RECUf0fh28rZBb/RYTWn/eeKwCMrZQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", - "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.4.tgz", - "integrity": "sha512-9J/oD1jV0ZCBcgnoFWFq1vJd4msoKb/TCpGNFyyLt0zABdcvgK3aYikZ8HjzB14c26bc7E3Q1yugpwGy2aTPNA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.4.tgz", - "integrity": "sha512-F6nREOan7J5UXTLsDsZG3DXmZSVofr2tGNwfdrVwkDWHfQckbQXnXSPfD7iO+c/2HGqycwyLST3DnZ16n+cBJQ==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-remap-async-to-generator": "^7.10.4" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.4.tgz", - "integrity": "sha512-WzXDarQXYYfjaV1szJvN3AD7rZgZzC1JtjJZ8dMHUyiK8mxPRahynp14zzNjU3VkPqPsO38CzxiWO1c9ARZ8JA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz", - "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.4.tgz", - "integrity": "sha512-2oZ9qLjt161dn1ZE0Ms66xBncQH4In8Sqw1YWgBUZuGVJJS5c0OFZXL6dP2MRHrkU/eKhWg8CzFJhRQl50rQxA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-define-map": "^7.10.4", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.10.4", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.4.tgz", - "integrity": "sha512-JFwVDXcP/hM/TbyzGq3l/XWGut7p46Z3QvqFMXTfk6/09m7xZHJUN9xHfsv7vqqD4YnfI5ueYdSJtXqqBLyjBw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.4.tgz", - "integrity": "sha512-+WmfvyfsyF603iPa6825mq6Qrb7uLjTOsa3XOFzlYcYDHSS4QmpOWOL0NNBY5qMbvrcf3tq0Cw+v4lxswOBpgA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.4.tgz", - "integrity": "sha512-ZEAVvUTCMlMFAbASYSVQoxIbHm2OkG2MseW6bV2JjIygOjdVv8tuxrCTzj1+Rynh7ODb8GivUy7dzEXzEhuPaA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.4.tgz", - "integrity": "sha512-GL0/fJnmgMclHiBTTWXNlYjYsA7rDrtsazHG6mglaGSTh0KsrW04qml+Bbz9FL0LcJIRwBWL5ZqlNHKTkU3xAA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.4.tgz", - "integrity": "sha512-S5HgLVgkBcRdyQAHbKj+7KyuWx8C6t5oETmUuwz1pt3WTWJhsUV0WIIXuVvfXMxl/QQyHKlSCNNtaIamG8fysw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-flow-strip-types": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.10.4.tgz", - "integrity": "sha512-XTadyuqNst88UWBTdLjM+wEY7BFnY2sYtPyAidfC7M/QaZnSuIZpMvLxqGT7phAcnGyWh/XQFLKcGf04CnvxSQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-flow": "^7.10.4" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.4.tgz", - "integrity": "sha512-ItdQfAzu9AlEqmusA/65TqJ79eRcgGmpPPFvBnGILXZH975G0LNjP1yjHvGgfuCxqrPPueXOPe+FsvxmxKiHHQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.4.tgz", - "integrity": "sha512-OcDCq2y5+E0dVD5MagT5X+yTRbcvFjDI2ZVAottGH6tzqjx/LKpgkUepu3hp/u4tZBzxxpNGwLsAvGBvQ2mJzg==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.4.tgz", - "integrity": "sha512-Xd/dFSTEVuUWnyZiMu76/InZxLTYilOSr1UlHV+p115Z/Le2Fi1KXkJUYz0b42DfndostYlPub3m8ZTQlMaiqQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.4.tgz", - "integrity": "sha512-0bFOvPyAoTBhtcJLr9VcwZqKmSjFml1iVxvPL0ReomGU53CX53HsM4h2SzckNdkQcHox1bpAqzxBI1Y09LlBSw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.5.tgz", - "integrity": "sha512-elm5uruNio7CTLFItVC/rIzKLfQ17+fX7EVz5W0TMgIHFo1zY0Ozzx+lgwhL4plzl8OzVn6Qasx5DeEFyoNiRw==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.4.tgz", - "integrity": "sha512-Xj7Uq5o80HDLlW64rVfDBhao6OX89HKUmb+9vWYaLXBZOma4gA6tw4Ni1O5qVDoZWUV0fxMYA0aYzOawz0l+1w==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-simple-access": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.5.tgz", - "integrity": "sha512-f4RLO/OL14/FP1AEbcsWMzpbUz6tssRaeQg11RH1BP/XnPpRoVwgeYViMFacnkaw4k4wjRSjn3ip1Uw9TaXuMw==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.10.4", - "@babel/helper-module-transforms": "^7.10.5", - "@babel/helper-plugin-utils": "^7.10.4", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.4.tgz", - "integrity": "sha512-mohW5q3uAEt8T45YT7Qc5ws6mWgJAaL/8BfWD9Dodo1A3RKWli8wTS+WiQ/knF+tXlPirW/1/MqzzGfCExKECA==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.4.tgz", - "integrity": "sha512-V6LuOnD31kTkxQPhKiVYzYC/Jgdq53irJC/xBSmqcNcqFGV+PER4l6rU5SH2Vl7bH9mLDHcc0+l9HUOe4RNGKA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.4.tgz", - "integrity": "sha512-YXwWUDAH/J6dlfwqlWsztI2Puz1NtUAubXhOPLQ5gjR/qmQ5U96DY4FQO8At33JN4XPBhrjB8I4eMmLROjjLjw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.4.tgz", - "integrity": "sha512-5iTw0JkdRdJvr7sY0vHqTpnruUpTea32JHmq/atIWqsnNussbRzjEDyWep8UNztt1B5IusBYg8Irb0bLbiEBCQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-replace-supers": "^7.10.4" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.5.tgz", - "integrity": "sha512-xPHwUj5RdFV8l1wuYiu5S9fqWGM2DrYc24TMvUiRrPVm+SM3XeqU9BcokQX/kEUe+p2RBwy+yoiR1w/Blq6ubw==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.4.tgz", - "integrity": "sha512-ofsAcKiUxQ8TY4sScgsGeR2vJIsfrzqvFb9GvJ5UdXDzl+MyYCaBj/FGzXuv7qE0aJcjWMILny1epqelnFlz8g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.4.tgz", - "integrity": "sha512-3thAHwtor39A7C04XucbMg17RcZ3Qppfxr22wYzZNcVIkPHfpM9J0SO8zuCV6SZa265kxBJSrfKTvDCYqBFXGw==", - "dev": true, - "requires": { - "regenerator-transform": "^0.14.2" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.4.tgz", - "integrity": "sha512-hGsw1O6Rew1fkFbDImZIEqA8GoidwTAilwCyWqLBM9f+e/u/sQMQu7uX6dyokfOayRuuVfKOW4O7HvaBWM+JlQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-runtime": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.11.0.tgz", - "integrity": "sha512-LFEsP+t3wkYBlis8w6/kmnd6Kb1dxTd+wGJ8MlxTGzQo//ehtqlVL4S9DNUa53+dtPSQobN2CXx4d81FqC58cw==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "resolve": "^1.8.1", - "semver": "^5.5.1" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.4.tgz", - "integrity": "sha512-AC2K/t7o07KeTIxMoHneyX90v3zkm5cjHJEokrPEAGEy3UCp8sLKfnfOIGdZ194fyN4wfX/zZUWT9trJZ0qc+Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.11.0.tgz", - "integrity": "sha512-UwQYGOqIdQJe4aWNyS7noqAnN2VbaczPLiEtln+zPowRNlD+79w3oi2TWfYe0eZgd+gjZCbsydN7lzWysDt+gw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-skip-transparent-expression-wrappers": "^7.11.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.4.tgz", - "integrity": "sha512-Ddy3QZfIbEV0VYcVtFDCjeE4xwVTJWTmUtorAJkn6u/92Z/nWJNV+mILyqHKrUxXYKA2EoCilgoPePymKL4DvQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-regex": "^7.10.4" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.5.tgz", - "integrity": "sha512-V/lnPGIb+KT12OQikDvgSuesRX14ck5FfJXt6+tXhdkJ+Vsd0lDCVtF6jcB4rNClYFzaB2jusZ+lNISDk2mMMw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.4.tgz", - "integrity": "sha512-QqNgYwuuW0y0H+kUE/GWSR45t/ccRhe14Fs/4ZRouNNQsyd4o3PG4OtHiIrepbM2WKUBDAXKCAK/Lk4VhzTaGA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.4.tgz", - "integrity": "sha512-y5XJ9waMti2J+e7ij20e+aH+fho7Wb7W8rNuu72aKRwCHFqQdhkdU2lo3uZ9tQuboEJcUFayXdARhcxLQ3+6Fg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.4.tgz", - "integrity": "sha512-wNfsc4s8N2qnIwpO/WP2ZiSyjfpTamT2C9V9FDH/Ljub9zw6P3SjkXcFmc0RQUt96k2fmIvtla2MMjgTwIAC+A==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/polyfill": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.10.4.tgz", - "integrity": "sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg==", - "dev": true, - "requires": { - "core-js": "^2.6.5", - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/preset-env": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.11.0.tgz", - "integrity": "sha512-2u1/k7rG/gTh02dylX2kL3S0IJNF+J6bfDSp4DI2Ma8QN6Y9x9pmAax59fsCk6QUQG0yqH47yJWA+u1I1LccAg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.11.0", - "@babel/helper-compilation-targets": "^7.10.4", - "@babel/helper-module-imports": "^7.10.4", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-proposal-async-generator-functions": "^7.10.4", - "@babel/plugin-proposal-class-properties": "^7.10.4", - "@babel/plugin-proposal-dynamic-import": "^7.10.4", - "@babel/plugin-proposal-export-namespace-from": "^7.10.4", - "@babel/plugin-proposal-json-strings": "^7.10.4", - "@babel/plugin-proposal-logical-assignment-operators": "^7.11.0", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.10.4", - "@babel/plugin-proposal-numeric-separator": "^7.10.4", - "@babel/plugin-proposal-object-rest-spread": "^7.11.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.10.4", - "@babel/plugin-proposal-optional-chaining": "^7.11.0", - "@babel/plugin-proposal-private-methods": "^7.10.4", - "@babel/plugin-proposal-unicode-property-regex": "^7.10.4", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-class-properties": "^7.10.4", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.10.4", - "@babel/plugin-transform-arrow-functions": "^7.10.4", - "@babel/plugin-transform-async-to-generator": "^7.10.4", - "@babel/plugin-transform-block-scoped-functions": "^7.10.4", - "@babel/plugin-transform-block-scoping": "^7.10.4", - "@babel/plugin-transform-classes": "^7.10.4", - "@babel/plugin-transform-computed-properties": "^7.10.4", - "@babel/plugin-transform-destructuring": "^7.10.4", - "@babel/plugin-transform-dotall-regex": "^7.10.4", - "@babel/plugin-transform-duplicate-keys": "^7.10.4", - "@babel/plugin-transform-exponentiation-operator": "^7.10.4", - "@babel/plugin-transform-for-of": "^7.10.4", - "@babel/plugin-transform-function-name": "^7.10.4", - "@babel/plugin-transform-literals": "^7.10.4", - "@babel/plugin-transform-member-expression-literals": "^7.10.4", - "@babel/plugin-transform-modules-amd": "^7.10.4", - "@babel/plugin-transform-modules-commonjs": "^7.10.4", - "@babel/plugin-transform-modules-systemjs": "^7.10.4", - "@babel/plugin-transform-modules-umd": "^7.10.4", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.10.4", - "@babel/plugin-transform-new-target": "^7.10.4", - "@babel/plugin-transform-object-super": "^7.10.4", - "@babel/plugin-transform-parameters": "^7.10.4", - "@babel/plugin-transform-property-literals": "^7.10.4", - "@babel/plugin-transform-regenerator": "^7.10.4", - "@babel/plugin-transform-reserved-words": "^7.10.4", - "@babel/plugin-transform-shorthand-properties": "^7.10.4", - "@babel/plugin-transform-spread": "^7.11.0", - "@babel/plugin-transform-sticky-regex": "^7.10.4", - "@babel/plugin-transform-template-literals": "^7.10.4", - "@babel/plugin-transform-typeof-symbol": "^7.10.4", - "@babel/plugin-transform-unicode-escapes": "^7.10.4", - "@babel/plugin-transform-unicode-regex": "^7.10.4", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.11.0", - "browserslist": "^4.12.0", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.1", - "semver": "^5.5.0" - } - }, - "@babel/preset-modules": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", - "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/register": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.10.5.tgz", - "integrity": "sha512-eYHdLv43nyvmPn9bfNfrcC4+iYNwdQ8Pxk1MFJuU/U5LpSYl/PH4dFMazCYZDFVi8ueG3shvO+AQfLrxpYulQw==", - "dev": true, - "requires": { - "find-cache-dir": "^2.0.0", - "lodash": "^4.17.19", - "make-dir": "^2.1.0", - "pirates": "^4.0.0", - "source-map-support": "^0.5.16" - } - }, - "@babel/runtime": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.11.1.tgz", - "integrity": "sha512-nH5y8fLvVl3HAb+ezbgcgwrH8QbClWo8xzkOu7+oyqngo3EVorwpWJQaqXPjGRpfj7mQvsJCl/S8knkfkPWqrw==", - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/traverse": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.0.tgz", - "integrity": "sha512-ZB2V+LskoWKNpMq6E5UUCrjtDUh5IOTAyIl0dTjIEoXum/iKWkoIEKIRDnUucO6f+2FzNkE0oD4RLKoPIufDtg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.0", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.11.0", - "@babel/types": "^7.11.0", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "@gulp-sourcemaps/identity-map": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-1.0.2.tgz", - "integrity": "sha512-ciiioYMLdo16ShmfHBXJBOFm3xPC4AuwO4xeRpFeHz7WK9PYsWCmigagG2XyzZpubK4a3qNKoUBDhbzHfa50LQ==", - "dev": true, - "requires": { - "acorn": "^5.0.3", - "css": "^2.2.1", - "normalize-path": "^2.1.1", - "source-map": "^0.6.0", - "through2": "^2.0.3" - }, - "dependencies": { - "acorn": { - "version": "5.7.4", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", - "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", - "dev": true - }, - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "@gulp-sourcemaps/map-sources": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz", - "integrity": "sha1-iQrnxdjId/bThIYCFazp1+yUW9o=", - "dev": true, - "requires": { - "normalize-path": "^2.0.1", - "through2": "^2.0.3" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - } - } - }, - "@istanbuljs/schema": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", - "dev": true - }, - "@peculiar/asn1-schema": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.0.12.tgz", - "integrity": "sha512-DnZ6tMpPSxXa975dwcSe9pEJyO8gcqRVCPuJvvxfB4aC3zX6UOSoJrmlkpLHTeysPi13U5ME3fdQeEMIwZeqGg==", - "requires": { - "@types/asn1js": "^0.0.1", - "asn1js": "^2.0.26", - "pvtsutils": "^1.0.11", - "tslib": "^1.11.1" - }, - "dependencies": { - "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" - } - } - }, - "@peculiar/json-schema": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/@peculiar/json-schema/-/json-schema-1.1.12.tgz", - "integrity": "sha512-coUfuoMeIB7B8/NMekxaDzLhaYmp0HZNPEjYRm9goRou8UZIC3z21s0sL9AWoCw4EG876QyO3kYrc61WNF9B/w==", - "requires": { - "tslib": "^2.0.0" - } - }, - "@peculiar/webcrypto": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@peculiar/webcrypto/-/webcrypto-1.1.2.tgz", - "integrity": "sha512-BkgD5iH2n3+Fdd/+xfhac8VbISo4MPvECPhK1kRpuYC7PnhxaJe2rpU7B4udvMeEL8lhJlvCWybo8Y7A29u/xQ==", - "requires": { - "@peculiar/asn1-schema": "^2.0.8", - "@peculiar/json-schema": "^1.1.10", - "pvtsutils": "^1.0.10", - "tslib": "^2.0.0", - "webcrypto-core": "^1.1.2" - } - }, - "@sinonjs/commons": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", - "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", - "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } - }, - "@sinonjs/samsam": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", - "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", - "dev": true - }, - "@types/asn1js": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@types/asn1js/-/asn1js-0.0.1.tgz", - "integrity": "sha1-74uflwjLFjKhw6nNJ3F8qr55O8I=", - "requires": { - "@types/pvutils": "*" - } - }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true - }, - "@types/json-schema": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.5.tgz", - "integrity": "sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ==", - "dev": true - }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true - }, - "@types/node": { - "version": "14.0.27", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.27.tgz", - "integrity": "sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==", - "dev": true, - "optional": true - }, - "@types/pvutils": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/@types/pvutils/-/pvutils-0.0.2.tgz", - "integrity": "sha512-CgQAm7pjyeF3Gnv78ty4RBVIfluB+Td+2DR8iPaU0prF18pkzptHHP+DoKPfpsJYknKsVZyVsJEu5AuGgAqQ5w==" - }, - "@types/yauzl": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.9.1.tgz", - "integrity": "sha512-A1b8SU4D10uoPjwb0lnHmmu8wZhR9d+9o2PKBQT2jU5YPTKsxac6M2qGAdY7VcL+dHHhARVUDmeg0rOrcd9EjA==", - "dev": true, - "optional": true, - "requires": { - "@types/node": "*" - } - }, - "@unimodules/core": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/@unimodules/core/-/core-5.3.0.tgz", - "integrity": "sha512-uGpkYE2zI0F1LTv+p6drzCHAZo8UFITxedHUH6pjWQBHdpTtae5cU7l3F/CzQ4WYU6SWhkzaB90/Ydf3DNTuLw==", - "optional": true, - "requires": { - "compare-versions": "^3.4.0" - } - }, - "@unimodules/react-native-adapter": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@unimodules/react-native-adapter/-/react-native-adapter-5.4.0.tgz", - "integrity": "sha512-2c3hDWzfBAyDWNCkBziyXphmxRZvZ5J8oSMLRDohvj6DnQiHvnlgr/A4oberkjPSEve5fN4GA+eybcJrec08AA==", - "optional": true, - "requires": { - "invariant": "^2.2.4", - "lodash": "^4.5.0", - "prop-types": "^15.6.1" - } - }, - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", - "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.9.0" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", - "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", - "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", - "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", - "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", - "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/helper-wasm-section": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-opt": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "@webassemblyjs/wast-printer": "1.9.0" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", - "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", - "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", - "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", - "dev": true - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dev": true, - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "acorn": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", - "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", - "dev": true - }, - "acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true - }, - "after": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", - "dev": true - }, - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", - "requires": { - "es6-promisify": "^5.0.0" - } - }, - "agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", - "requires": { - "humanize-ms": "^1.2.1" - } - }, - "aggregate-error": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", - "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true - }, - "align-text": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true, - "optional": true - }, - "ansi-colors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", - "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", - "dev": true, - "requires": { - "ansi-wrap": "^0.1.0" - } - }, - "ansi-cyan": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", - "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - }, - "dependencies": { - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } - }, - "ansi-gray": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", - "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-red": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", - "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "ansi-wrap": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", - "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", - "dev": true - }, - "any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", - "dev": true - }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "append-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz", - "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=", - "dev": true, - "requires": { - "buffer-equal": "^1.0.0" - } - }, - "append-transform": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz", - "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==", - "dev": true, - "requires": { - "default-require-extensions": "^3.0.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "arr-filter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz", - "integrity": "sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4=", - "dev": true, - "requires": { - "make-iterator": "^1.0.0" - } - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz", - "integrity": "sha1-Onc0X/wc814qkYJWAfnljy4kysQ=", - "dev": true, - "requires": { - "make-iterator": "^1.0.0" - } - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", - "dev": true - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "array-includes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", - "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0", - "is-string": "^1.0.5" - } - }, - "array-initial": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz", - "integrity": "sha1-L6dLJnOTccOUe9enrcc74zSz15U=", - "dev": true, - "requires": { - "array-slice": "^1.0.0", - "is-number": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "array-last": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz", - "integrity": "sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==", - "dev": true, - "requires": { - "is-number": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "array-slice": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", - "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true - }, - "array-sort": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz", - "integrity": "sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==", - "dev": true, - "requires": { - "default-compare": "^1.0.0", - "get-value": "^2.0.6", - "kind-of": "^5.0.2" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "array.prototype.flat": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", - "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "arraybuffer.slice": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", - "dev": true - }, - "asmcrypto.js": { - "version": "0.22.0", - "resolved": "https://registry.npmjs.org/asmcrypto.js/-/asmcrypto.js-0.22.0.tgz", - "integrity": "sha512-usgMoyXjMbx/ZPdzTSXExhMPur2FTdz/Vo5PVx2gIaBcdAAJNOFlsdgqveM8Cff7W0v+xrf9BwjOV26JSAF9qA==" - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "asn1js": { - "version": "2.0.26", - "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-2.0.26.tgz", - "integrity": "sha512-yG89F0j9B4B0MKIcFyWWxnpZPLaNTjCj4tkE3fjbAoo0qmpGw0PYYqSbX/4ebnd9Icn8ZgK4K1fvDyEtW1JYtQ==", - "requires": { - "pvutils": "^1.0.17" - } - }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "ast-types": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.3.tgz", - "integrity": "sha512-XTZ7xGML849LkQP86sWdQzfhwbt3YwIO6MqbX9mUNYY98VKaaVZP7YNNm70IpwecbkkxmfC5IYAzOQ/2p29zRA==" - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true - }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true - }, - "async-done": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz", - "integrity": "sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.2", - "process-nextick-args": "^2.0.0", - "stream-exhaust": "^1.0.1" - } - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true - }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true - }, - "async-settle": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz", - "integrity": "sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs=", - "dev": true, - "requires": { - "async-done": "^1.2.2" - } - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz", - "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", - "dev": true - }, - "b64-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/b64-lite/-/b64-lite-1.4.0.tgz", - "integrity": "sha512-aHe97M7DXt+dkpa8fHlCcm1CnskAHrJqEfMI0KN7dwqlzml/aUe1AGt6lk51HzrSfVD67xOso84sOpr+0wIe2w==", - "requires": { - "base-64": "^0.1.0" - } - }, - "b64u-lite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/b64u-lite/-/b64u-lite-1.1.0.tgz", - "integrity": "sha512-929qWGDVCRph7gQVTC6koHqQIpF4vtVaSbwLltFQo44B1bYUquALswZdBKFfrJCPEnsCOvWkJsPdQYZ/Ukhw8A==", - "requires": { - "b64-lite": "^1.4.0" - } - }, - "babel-eslint": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", - "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0", - "eslint-visitor-keys": "^1.0.0", - "resolve": "^1.12.0" - } - }, - "babel-loader": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", - "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", - "dev": true, - "requires": { - "find-cache-dir": "^2.1.0", - "loader-utils": "^1.4.0", - "mkdirp": "^0.5.3", - "pify": "^4.0.1", - "schema-utils": "^2.6.5" - } - }, - "babel-plugin-add-module-exports": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/babel-plugin-add-module-exports/-/babel-plugin-add-module-exports-1.0.2.tgz", - "integrity": "sha512-4paN7RivvU3Rzju1vGSHWPjO8Y0rI6droWvSFKI6dvEQ4mvoV0zGojnlzVRfI6N8zISo6VERXt3coIuVmzuvNg==", - "dev": true, - "requires": { - "chokidar": "^2.0.4" - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "bach": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", - "integrity": "sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA=", - "dev": true, - "requires": { - "arr-filter": "^1.1.1", - "arr-flatten": "^1.0.1", - "arr-map": "^2.0.0", - "array-each": "^1.0.0", - "array-initial": "^1.0.0", - "array-last": "^1.1.1", - "async-done": "^1.2.2", - "async-settle": "^1.0.0", - "now-and-later": "^2.0.0" - } - }, - "backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "base-64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", - "integrity": "sha1-eAqZyE59YAJgNhURxId2E78k9rs=" - }, - "base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", - "dev": true - }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "devOptional": true - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "better-assert": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", - "dev": true, - "requires": { - "callsite": "1.0.0" - } - }, - "big-integer": { - "version": "1.6.48", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.48.tgz", - "integrity": "sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w==", - "dev": true - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "binary": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", - "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", - "dev": true, - "requires": { - "buffers": "~0.1.1", - "chainsaw": "~0.1.0" - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bl": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", - "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==", - "dev": true, - "requires": { - "readable-stream": "^2.3.5", - "safe-buffer": "^5.1.1" - } - }, - "blob": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", - "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", - "dev": true - }, - "bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=", - "dev": true - }, - "bn.js": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.2.tgz", - "integrity": "sha512-40rZaf3bUNKTVYu9sIeeEGOg7g14Yvnj9kH7b50EiwX0Q7A6umbvfI5tvHaOERH0XigqKkfLkFQxzb4e6CIXnA==", - "dev": true - }, - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "dev": true, - "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "http-errors": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", - "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true - }, - "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "dev": true, - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - } - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, - "browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dev": true, - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.13.0.tgz", - "integrity": "sha512-MINatJ5ZNrLnQ6blGvePd/QOz9Xtu+Ne+x29iQSCHfkU5BugKVJwZKn/iiL8UbpIpa3JhviKjz+XxMo0m2caFQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001093", - "electron-to-chromium": "^1.3.488", - "escalade": "^3.0.1", - "node-releases": "^1.1.58" - } - }, - "buffer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", - "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true - }, - "buffer-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", - "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", - "dev": true - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "buffer-indexof-polyfill": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.1.tgz", - "integrity": "sha1-qfuAbOgUXVQoUQznLyeLs2OmOL8=", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "buffers": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true - }, - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" - }, - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - }, - "dependencies": { - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - } - } - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caching-transform": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz", - "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==", - "dev": true, - "requires": { - "hasha": "^5.0.0", - "make-dir": "^3.0.0", - "package-hash": "^4.0.0", - "write-file-atomic": "^3.0.0" - }, - "dependencies": { - "hasha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz", - "integrity": "sha512-2W+jKdQbAdSIrggA8Q35Br8qKadTrqCTC8+XZvBWepKDK6m9XkX6Iz1a2yh2KP01kzAR/dpuMeUnocoLYDcskw==", - "dev": true, - "requires": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "callsite": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", - "dev": true - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001110", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001110.tgz", - "integrity": "sha512-KqJWeat4rhSHF0ito4yz9q/JuZHkvn71SsBnxge4azjPDbowIjOUnS8i1xpKGxZxU6BFiPqO2hSV2eiCpFQVRw==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "cbor-js": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/cbor-js/-/cbor-js-0.1.0.tgz", - "integrity": "sha1-yAzmEg84fo+qdDcN/aIdlluPx/k=" - }, - "cbor-sync": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cbor-sync/-/cbor-sync-1.0.4.tgz", - "integrity": "sha512-GWlXN4wiz0vdWWXBU71Dvc1q3aBo0HytqwAZnXF1wOwjqNnDWA1vZ1gDMFLlqohak31VQzmhiYfiCX5QSSfagA==" - }, - "center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } - }, - "chai": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", - "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", - "dev": true, - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "pathval": "^1.1.0", - "type-detect": "^4.0.5" - } - }, - "chai-as-promised": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", - "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", - "dev": true, - "requires": { - "check-error": "^1.0.2" - } - }, - "chai-nock": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/chai-nock/-/chai-nock-1.2.1.tgz", - "integrity": "sha512-MXEkenBDA/XOdR4D6vEDwtWNjpp3FPOUm38kYW9+4DaTVm4Ht6YcR10mFyL/eRWVPRfaFNunfFaN7Vck5RmW6Q==", - "dev": true, - "requires": { - "chai": "^4.2.0", - "deep-equal": "^1.0.1" - } - }, - "chainsaw": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", - "dev": true, - "requires": { - "traverse": ">=0.3.0 <0.4" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", - "dev": true - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", - "dev": true - } - } - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "clone-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", - "dev": true - }, - "cloneable-readable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", - "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "process-nextick-args": "^2.0.0", - "readable-stream": "^2.3.5" - } - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "collection-map": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz", - "integrity": "sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw=", - "dev": true, - "requires": { - "arr-map": "^2.0.2", - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - } - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true - }, - "colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "compare-versions": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", - "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==", - "optional": true - }, - "component-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "component-inherit": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "confusing-browser-globals": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz", - "integrity": "sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw==", - "dev": true - }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "contains-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true - }, - "cookiejar": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", - "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "copy-props": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", - "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", - "dev": true, - "requires": { - "each-props": "^1.3.0", - "is-plain-object": "^2.0.1" - } - }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true - }, - "core-js-compat": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", - "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", - "dev": true, - "requires": { - "browserslist": "^4.8.5", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - } - }, - "custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", - "dev": true - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true - }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "dev": true, - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "dargs": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", - "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "data-uri-to-buffer": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", - "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==" - }, - "date-format": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-3.0.0.tgz", - "integrity": "sha512-eyTcpKOcamdhWJXj56DpQMo1ylSQpcGtGKXcU0Tb97+K56/CF5amAqqqNj0+KvA0iw2ynxtHWFsPDSClCxe48w==", - "dev": true - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "debug-fabulous": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-1.1.0.tgz", - "integrity": "sha512-GZqvGIgKNlUnHUPQhepnUZFIMoi3dgZKQBzKDeL2g7oJF9SNAji/AAu36dusFUas0O+pae74lNeoIPHqXWDkLg==", - "dev": true, - "requires": { - "debug": "3.X", - "memoizee": "0.4.X", - "object-assign": "4.X" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "deep-eql": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - } - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" - }, - "default-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", - "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", - "dev": true, - "requires": { - "kind-of": "^5.0.2" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "default-require-extensions": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz", - "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==", - "dev": true, - "requires": { - "strip-bom": "^4.0.0" - }, - "dependencies": { - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true - } - } - }, - "default-resolution": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz", - "integrity": "sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ=", - "dev": true - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "degenerator": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", - "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", - "requires": { - "ast-types": "0.x.x", - "escodegen": "1.x.x", - "esprima": "3.x.x" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", - "dev": true - }, - "detect-newline": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", - "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", - "dev": true - }, - "devtools-protocol": { - "version": "0.0.781568", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.781568.tgz", - "integrity": "sha512-9Uqnzy6m6zEStluH9iyJ3iHyaQziFnMnLeC8vK0eN6smiJmIx7+yB64d67C2lH/LZra+5cGscJAJsNXO+MdPMg==", - "dev": true - }, - "di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", - "dev": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" - } - }, - "dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", - "dev": true, - "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, - "duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - } - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "each-props": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz", - "integrity": "sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.1", - "object.defaults": "^1.1.0" - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, - "electron-to-chromium": { - "version": "1.3.519", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.519.tgz", - "integrity": "sha512-2r/p/9YOjIpX10KxcH1HcAGz1oadSD9Cwwotoek8wNJx/SRpklea14qdAMzCTTZlIezvsJ8sNsBQN05bJ/ZjhA==", - "dev": true - }, - "elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true - }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "requires": { - "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz", - "integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "engine.io": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.4.2.tgz", - "integrity": "sha512-b4Q85dFkGw+TqgytGPrGgACRUhsdKc9S9ErRAXpPGy/CXKs4tYoHDkvIRdsseAF7NjfVwjRFIn6KTnbw7LwJZg==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "0.3.1", - "debug": "~4.1.0", - "engine.io-parser": "~2.2.0", - "ws": "^7.1.2" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "engine.io-client": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.4.3.tgz", - "integrity": "sha512-0NGY+9hioejTEJCaSJZfWZLk4FPI9dN+1H1C4+wj2iuFba47UgZbJzfWs4aNFajnX/qAaYKbe2lLTfEEWzCmcw==", - "dev": true, - "requires": { - "component-emitter": "~1.3.0", - "component-inherit": "0.0.3", - "debug": "~4.1.0", - "engine.io-parser": "~2.2.0", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~6.1.0", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ws": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.1.4.tgz", - "integrity": "sha512-eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - } - } - }, - "engine.io-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.0.tgz", - "integrity": "sha512-6I3qD9iUxotsC5HEMuuGsKA0cXerGz+4uGcXQEkfBidgKf0amsjrrtwcbwK/nzpZBxclXlV7gGl9dgWvu4LF6w==", - "dev": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.5", - "has-binary2": "~1.0.2" - } - }, - "enhanced-resolve": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", - "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" - }, - "dependencies": { - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - } - } - }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", - "dev": true - }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", - "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", - "is-regex": "^1.1.0", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", - "dev": true, - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" - }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", - "requires": { - "es6-promise": "^4.0.3" - } - }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "dev": true, - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "es6-weak-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", - "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, - "escalade": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", - "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "escodegen": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", - "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", - "requires": { - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - } - } - }, - "eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "eslint-config-airbnb": { - "version": "17.1.1", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-17.1.1.tgz", - "integrity": "sha512-xCu//8a/aWqagKljt+1/qAM62BYZeNq04HmdevG5yUGWpja0I/xhqd6GdLRch5oetEGFiJAnvtGuTEAese53Qg==", - "dev": true, - "requires": { - "eslint-config-airbnb-base": "^13.2.0", - "object.assign": "^4.1.0", - "object.entries": "^1.1.0" - } - }, - "eslint-config-airbnb-base": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.2.0.tgz", - "integrity": "sha512-1mg/7eoB4AUeB0X1c/ho4vb2gYkNH8Trr/EgCT/aGmKhhG+F6vF5s8+iRBlWAzFIAphxIdp3YfEKgEl0f9Xg+w==", - "dev": true, - "requires": { - "confusing-browser-globals": "^1.0.5", - "object.assign": "^4.1.0", - "object.entries": "^1.1.0" - } - }, - "eslint-import-resolver-node": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", - "dev": true, - "requires": { - "debug": "^2.6.9", - "resolve": "^1.13.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "eslint-module-utils": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", - "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", - "dev": true, - "requires": { - "debug": "^2.6.9", - "pkg-dir": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - } - } - }, - "eslint-plugin-flowtype": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-3.13.0.tgz", - "integrity": "sha512-bhewp36P+t7cEV0b6OdmoRWJCBYRiHFlqPZAG1oS3SF+Y0LQkeDvFSM4oxoxvczD1OdONCXMlJfQFiWLcV9urw==", - "dev": true, - "requires": { - "lodash": "^4.17.15" - } - }, - "eslint-plugin-import": { - "version": "2.22.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz", - "integrity": "sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg==", - "dev": true, - "requires": { - "array-includes": "^3.1.1", - "array.prototype.flat": "^1.2.3", - "contains-path": "^0.1.0", - "debug": "^2.6.9", - "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.3", - "eslint-module-utils": "^2.6.0", - "has": "^1.0.3", - "minimatch": "^3.0.4", - "object.values": "^1.1.1", - "read-pkg-up": "^2.0.0", - "resolve": "^1.17.0", - "tsconfig-paths": "^3.9.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "eslint-plugin-mocha": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-6.3.0.tgz", - "integrity": "sha512-Cd2roo8caAyG21oKaaNTj7cqeYRWW1I2B5SfpKRp0Ip1gkfwoR1Ow0IGlPWnNjzywdF4n+kHL8/9vM6zCJUxdg==", - "dev": true, - "requires": { - "eslint-utils": "^2.0.0", - "ramda": "^0.27.0" - } - }, - "eslint-scope": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", - "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true - }, - "espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - } - }, - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" - }, - "esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", - "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==", - "dev": true - } - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, - "requires": { - "estraverse": "^4.1.0" - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "~0.10.14" - } - }, - "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==", - "dev": true - }, - "events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": true - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "execa": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-2.1.0.tgz", - "integrity": "sha512-Y/URAVapfbYy2Xp/gb6A0E7iR8xeqOCXsuuaoMn7A5PzrXUK84E1gyiEfq0wQd/GHA6GsoHWwhNq8anb0mleIw==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^3.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "expo-random": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/expo-random/-/expo-random-8.2.1.tgz", - "integrity": "sha512-5qcR00xMONKXy6QyNWOcslD0Ka6FYE+5wDLxeG6sZYakBMZ+7CZqXIHU56z2oY3ZjrA6sqy5mJcj1naNOweHMw==", - "optional": true, - "requires": { - "base64-js": "^1.3.0" - } - }, - "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", - "dev": true, - "requires": { - "type": "^2.0.0" - }, - "dependencies": { - "type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extract-zip": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", - "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", - "dev": true, - "requires": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fancy-log": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", - "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", - "dev": true, - "requires": { - "ansi-gray": "^0.1.1", - "color-support": "^1.1.3", - "parse-node-version": "^1.0.0", - "time-stamp": "^1.0.0" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" - }, - "fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", - "dev": true, - "requires": { - "pend": "~1.2.0" - } - }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "findup-sync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", - "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - } - }, - "fined": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", - "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "is-plain-object": "^2.0.3", - "object.defaults": "^1.1.0", - "object.pick": "^1.2.0", - "parse-filepath": "^1.0.1" - } - }, - "flagged-respawn": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", - "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true - }, - "flat": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", - "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", - "dev": true, - "requires": { - "is-buffer": "~2.0.3" - }, - "dependencies": { - "is-buffer": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", - "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", - "dev": true - } - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true - }, - "flow-bin": { - "version": "0.103.0", - "resolved": "https://registry.npmjs.org/flow-bin/-/flow-bin-0.103.0.tgz", - "integrity": "sha512-Y3yrnE5ICN1Kl/y10BwjA3JSuS+gt4jVPNyUNCZb0RqmkdssMrW8QNNysJYvhgAY/JBJH8Qv7NVUf11MiwfSlA==", - "dev": true - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, - "follow-redirects": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.12.1.tgz", - "integrity": "sha512-tmRv0AVuR7ZyouUHLeNSiO6pqulF7dYa3s19c6t+wz9LD69/uSzdMxJ2S91nTI9U3rt/IldxpzMOFejp6f0hjg==", - "dev": true - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "foreground-child": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz", - "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "signal-exit": "^3.0.2" - }, - "dependencies": { - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", - "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "formidable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", - "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "fromentries": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.2.1.tgz", - "integrity": "sha512-Xu2Qh8yqYuDhQGOhD5iJGninErSfI9A3FrriD3tjUgV5VbJFeH8vfgZ9HnC6jWN80QDVNQK5vmxRAmEAp7Mevw==", - "dev": true - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-mkdirp-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", - "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "through2": "^2.0.3" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "ftp": { - "version": "0.3.10", - "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", - "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", - "requires": { - "readable-stream": "1.1.x", - "xregexp": "2.0.0" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - } - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", - "dev": true - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "get-func-name": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", - "dev": true - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-stream": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", - "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", - "dev": true, - "requires": { - "pump": "^3.0.0" - }, - "dependencies": { - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "get-uri": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.4.tgz", - "integrity": "sha512-v7LT/s8kVjs+Tx0ykk1I+H/rbpzkHvuIq87LmeXptcf5sNWm9uQiwjNAt94SJPA1zOlCntmnOlJvVWKmzsxG8Q==", - "requires": { - "data-uri-to-buffer": "1", - "debug": "2", - "extend": "~3.0.2", - "file-uri-to-path": "1", - "ftp": "~0.3.10", - "readable-stream": "2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "glob-stream": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", - "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", - "dev": true, - "requires": { - "extend": "^3.0.0", - "glob": "^7.1.1", - "glob-parent": "^3.1.0", - "is-negated-glob": "^1.0.0", - "ordered-read-streams": "^1.0.0", - "pumpify": "^1.3.5", - "readable-stream": "^2.1.5", - "remove-trailing-separator": "^1.0.1", - "to-absolute-glob": "^2.0.0", - "unique-stream": "^2.0.2" - } - }, - "glob-watcher": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.5.tgz", - "integrity": "sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-done": "^1.2.0", - "chokidar": "^2.0.0", - "is-negated-glob": "^1.0.0", - "just-debounce": "^1.0.0", - "normalize-path": "^3.0.0", - "object.defaults": "^1.1.0" - } - }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "glogg": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", - "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", - "dev": true, - "requires": { - "sparkles": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", - "dev": true - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true - }, - "gulp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz", - "integrity": "sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==", - "dev": true, - "requires": { - "glob-watcher": "^5.0.3", - "gulp-cli": "^2.2.0", - "undertaker": "^1.2.1", - "vinyl-fs": "^3.0.0" - }, - "dependencies": { - "gulp-cli": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", - "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==", - "dev": true, - "requires": { - "ansi-colors": "^1.0.1", - "archy": "^1.0.0", - "array-sort": "^1.0.0", - "color-support": "^1.1.3", - "concat-stream": "^1.6.0", - "copy-props": "^2.0.1", - "fancy-log": "^1.3.2", - "gulplog": "^1.0.0", - "interpret": "^1.4.0", - "isobject": "^3.0.1", - "liftoff": "^3.1.0", - "matchdep": "^2.0.0", - "mute-stdout": "^1.0.0", - "pretty-hrtime": "^1.0.0", - "replace-homedir": "^1.0.0", - "semver-greatest-satisfied-range": "^1.1.0", - "v8flags": "^3.2.0", - "yargs": "^7.1.0" - } - } - } - }, - "gulp-babel": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/gulp-babel/-/gulp-babel-8.0.0.tgz", - "integrity": "sha512-oomaIqDXxFkg7lbpBou/gnUkX51/Y/M2ZfSjL2hdqXTAlSWZcgZtd2o0cOH0r/eE8LWD0+Q/PsLsr2DKOoqToQ==", - "dev": true, - "requires": { - "plugin-error": "^1.0.1", - "replace-ext": "^1.0.0", - "through2": "^2.0.0", - "vinyl-sourcemaps-apply": "^0.2.0" - } - }, - "gulp-clean": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/gulp-clean/-/gulp-clean-0.4.0.tgz", - "integrity": "sha512-DARK8rNMo4lHOFLGTiHEJdf19GuoBDHqGUaypz+fOhrvOs3iFO7ntdYtdpNxv+AzSJBx/JfypF0yEj9ks1IStQ==", - "dev": true, - "requires": { - "fancy-log": "^1.3.2", - "plugin-error": "^0.1.2", - "rimraf": "^2.6.2", - "through2": "^2.0.3", - "vinyl": "^2.1.0" - }, - "dependencies": { - "arr-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", - "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1", - "array-slice": "^0.2.3" - } - }, - "arr-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", - "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", - "dev": true - }, - "array-slice": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", - "dev": true - }, - "extend-shallow": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", - "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", - "dev": true, - "requires": { - "kind-of": "^1.1.0" - } - }, - "kind-of": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", - "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", - "dev": true - }, - "plugin-error": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", - "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", - "dev": true, - "requires": { - "ansi-cyan": "^0.1.1", - "ansi-red": "^0.1.1", - "arr-diff": "^1.0.1", - "arr-union": "^2.0.1", - "extend-shallow": "^1.1.2" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "gulp-eslint": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gulp-eslint/-/gulp-eslint-6.0.0.tgz", - "integrity": "sha512-dCVPSh1sA+UVhn7JSQt7KEb4An2sQNbOdB3PA8UCfxsoPlAKjJHxYHGXdXC7eb+V1FAnilSFFqslPrq037l1ig==", - "dev": true, - "requires": { - "eslint": "^6.0.0", - "fancy-log": "^1.3.2", - "plugin-error": "^1.0.1" - } - }, - "gulp-exec": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/gulp-exec/-/gulp-exec-4.0.0.tgz", - "integrity": "sha512-A9JvTyB3P4huusd/43bTr6SDg3MqBxL9AQbLnsKSO6/91wVkHfxgeJZlgDMkqK8sMel4so8wcko4SZOeB1UCgA==", - "dev": true, - "requires": { - "lodash.template": "^4.4.0", - "plugin-error": "^1.0.1", - "through2": "^3.0.1" - }, - "dependencies": { - "through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" - } - } - } - }, - "gulp-gzip": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/gulp-gzip/-/gulp-gzip-1.4.2.tgz", - "integrity": "sha512-ZIxfkUwk2XmZPTT9pPHrHUQlZMyp9nPhg2sfoeN27mBGpi7OaHnOD+WCN41NXjfJQ69lV1nQ9LLm1hYxx4h3UQ==", - "dev": true, - "requires": { - "ansi-colors": "^1.0.1", - "bytes": "^3.0.0", - "fancy-log": "^1.3.2", - "plugin-error": "^1.0.0", - "stream-to-array": "^2.3.0", - "through2": "^2.0.3" - } - }, - "gulp-istanbul": { - "version": "git+ssh://git@github.com/raipubnub/gulp-istanbul.git#d29ac973735a24c1e6e6983aaab998e2939b2b3a", - "dev": true, - "from": "gulp-istanbul@git+https://github.com/raipubnub/gulp-istanbul.git#gulp4", - "requires": { - "istanbul": "^0.4.0", - "istanbul-threshold-checker": "^0.2.1", - "lodash": "^4.0.0", - "plugin-error": "^1.0.0", - "through2": "^3.0.0", - "vinyl-sourcemaps-apply": "^0.2.1" - }, - "dependencies": { - "through2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", - "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" - } - } - } - }, - "gulp-mocha": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/gulp-mocha/-/gulp-mocha-7.0.2.tgz", - "integrity": "sha512-ZXBGN60TXYnFhttr19mfZBOtlHYGx9SvCSc+Kr/m2cMIGloUe176HBPwvPqlakPuQgeTGVRS47NmcdZUereKMQ==", - "dev": true, - "requires": { + "requires": { "dargs": "^7.0.0", "execa": "^2.0.4", "mocha": "^6.2.0", @@ -21109,9 +6095,9 @@ "dev": true }, "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true }, "camelcase": { @@ -21131,18 +6117,27 @@ "wrap-ansi": "^5.1.0" } }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, "get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -21236,6 +6231,18 @@ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, "require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -21269,9 +6276,9 @@ "dev": true }, "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { "has-flag": "^4.0.0" @@ -21313,9 +6320,9 @@ } }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, "yargs": { @@ -21382,27 +6389,23 @@ } }, "gulp-terser": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/gulp-terser/-/gulp-terser-1.3.0.tgz", - "integrity": "sha512-EvizE1LJLfOh3/EmpJoq9iqYziObOkTzFgN4KvxfB0ICp3+W5H+MOO9B7Xq5Iuu9N+RKByNJLmqR+Ph13U1vtQ==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/gulp-terser/-/gulp-terser-1.4.1.tgz", + "integrity": "sha512-VUoKrk24G0ojr7fXqlZ7vA8qDFHRloYAM6doNRyKdJ/LFkj+X3P04f+7LlOp7j05WtdOCEg65oG6nGjSf//78A==", "dev": true, "requires": { + "is-promise": "^4.0.0", "plugin-error": "^1.0.1", "terser": ">=4", - "through2": "^4.0.2", - "vinyl-sourcemaps-apply": "^0.2.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } + "through2": "^4.0.2", + "vinyl-sourcemaps-apply": "^0.2.1" + }, + "dependencies": { + "is-promise": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", + "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", + "dev": true }, "through2": { "version": "4.0.2", @@ -21434,9 +6437,9 @@ }, "dependencies": { "uglify-js": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.10.1.tgz", - "integrity": "sha512-RjxApKkrPJB6kjJxQS3iZlf///REXWYxYJxO/MpmlQzVkDWVI3PSnCBWezMecmTU/TRkNxrl8bmsfFQCp+LO+Q==", + "version": "3.14.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.14.4.tgz", + "integrity": "sha512-AbiSR44J0GoCeV81+oxcy/jDOElO2Bx3d0MfQCUShq7JRXaM4KtQopZsq2vFv8bCq2yMaGrw1FgygUd03RyRDA==", "dev": true } } @@ -21450,6 +6453,22 @@ "unzipper": "0.9.15", "vinyl": "2.2.0", "vinyl-buffer": "1.0.1" + }, + "dependencies": { + "vinyl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", + "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", + "dev": true, + "requires": { + "clone": "^2.1.1", + "clone-buffer": "^1.0.0", + "clone-stats": "^1.0.0", + "cloneable-readable": "^1.0.0", + "remove-trailing-separator": "^1.0.1", + "replace-ext": "^1.0.0" + } + } } }, "gulp4-run-sequence": { @@ -21467,28 +6486,6 @@ "glogg": "^1.0.0" } }, - "handlebars": { - "version": "4.7.6", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", - "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", - "dev": true, - "requires": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4", - "wordwrap": "^1.0.0" - }, - "dependencies": { - "uglify-js": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.10.1.tgz", - "integrity": "sha512-RjxApKkrPJB6kjJxQS3iZlf///REXWYxYJxO/MpmlQzVkDWVI3PSnCBWezMecmTU/TRkNxrl8bmsfFQCp+LO+Q==", - "dev": true, - "optional": true - } - } - }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -21509,11 +6506,16 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } }, + "has-bigints": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", + "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", + "dev": true + }, "has-binary2": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", @@ -21553,10 +6555,18 @@ } }, "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", + "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } }, "has-value": { "version": "1.0.0", @@ -21599,25 +6609,6 @@ "inherits": "^2.0.4", "readable-stream": "^3.6.0", "safe-buffer": "^5.2.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } } }, "hash.js": { @@ -21675,27 +6666,21 @@ } }, "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", "requires": { "depd": "~1.1.2", "inherits": "2.0.4", - "setprototypeof": "1.1.1", + "setprototypeof": "1.2.0", "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" + "toidentifier": "1.0.1" } }, "http-proxy": { @@ -21705,32 +6690,18 @@ "dev": true, "requires": { "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", + "follow-redirects": "^1.14.7", "requires-port": "^1.0.0" } }, "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "requires": { - "agent-base": "4", - "debug": "3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" } }, "http-signature": { @@ -21751,12 +6722,12 @@ "dev": true }, "https-proxy-agent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-3.0.1.tgz", - "integrity": "sha512-+ML2Rbh6DAuee7d07tYGEKOEi2voWPUGan+ExdPbPW6Z3svq+JCqr0v8WmKPOkz1vOVykPCBSuobe7G8GJUtVg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" + "agent-base": "6", + "debug": "4" } }, "humanize-ms": { @@ -21776,10 +6747,9 @@ } }, "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" }, "iferr": { "version": "0.1.5", @@ -21794,13 +6764,21 @@ "dev": true }, "import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } } }, "imports-loader": { @@ -21861,9 +6839,9 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, "inquirer": { @@ -21887,26 +6865,19 @@ "through": "^2.3.6" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "requires": { "ansi-styles": "^4.1.0", @@ -21934,36 +6905,10 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { "has-flag": "^4.0.0" @@ -21971,21 +6916,23 @@ } } }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, "interpret": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "dev": true }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "devOptional": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, "invert-kv": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", @@ -22028,10 +6975,14 @@ } }, "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } }, "is-arrayish": { "version": "0.2.1", @@ -22039,6 +6990,15 @@ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "requires": { + "has-bigints": "^1.0.1" + } + }, "is-binary-path": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", @@ -22048,6 +7008,16 @@ "binary-extensions": "^1.0.0" } }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", @@ -22055,11 +7025,20 @@ "dev": true }, "is-callable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", + "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", "dev": true }, + "is-core-module": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.0.tgz", + "integrity": "sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", @@ -22081,10 +7060,13 @@ } }, "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } }, "is-descriptor": { "version": "0.1.6", @@ -22100,515 +7082,240 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-negated-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", - "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", - "dev": true - }, - "is-regex": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", - "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.1" - } - }, - "is-relative": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", - "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", - "dev": true, - "requires": { - "is-unc-path": "^1.0.0" - } - }, - "is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true - }, - "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", - "dev": true - }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.1" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-unc-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", - "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", - "dev": true, - "requires": { - "unc-path-regex": "^0.1.2" + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } } }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", "dev": true }, - "is-valid-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", - "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "is-generator": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-generator/-/is-generator-1.0.3.tgz", + "integrity": "sha1-wUwhBX7TbjKNuANHlmxpP4hjifM=", "dev": true }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isbinaryfile": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.6.tgz", - "integrity": "sha512-ORrEy+SNVqUhrCaal4hA4fBzhggQQ+BaLntyPOdoEiwlKZW9BZiJXjg3RMiruE4tPEI3pyVPpySHQF/dKWperg==", - "dev": true + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "is-negated-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", + "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", "dev": true }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true }, - "isomorphic-webcrypto": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/isomorphic-webcrypto/-/isomorphic-webcrypto-2.3.6.tgz", - "integrity": "sha512-d1prB3b0UMWOao5DK3+O2Dr5ZJCakzB5Q+2kCWNkNuM9ln7VB8TSw2SwUjbnErzg7cgsYja+VPQaeBtXEojpew==", + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, "requires": { - "@peculiar/webcrypto": "^1.0.22", - "@unimodules/core": "*", - "@unimodules/react-native-adapter": "*", - "asmcrypto.js": "^0.22.0", - "b64-lite": "^1.3.1", - "b64u-lite": "^1.0.1", - "expo-random": "*", - "msrcrypto": "^1.5.6", - "react-native-securerandom": "^0.1.1", - "str2buf": "^1.3.0", - "webcrypto-shim": "^0.1.4" - } - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "istanbul": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", - "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", - "dev": true, - "requires": { - "abbrev": "1.0.x", - "async": "1.x", - "escodegen": "1.8.x", - "esprima": "2.7.x", - "glob": "^5.0.15", - "handlebars": "^4.0.1", - "js-yaml": "3.x", - "mkdirp": "0.5.x", - "nopt": "3.x", - "once": "1.x", - "resolve": "1.1.x", - "supports-color": "^3.1.0", - "which": "^1.1.1", - "wordwrap": "^1.0.0" + "kind-of": "^3.0.2" }, "dependencies": { - "escodegen": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", - "dev": true, - "requires": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.2.0" - } - }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true - }, - "estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", - "dev": true - }, - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true - }, - "source-map": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", - "dev": true, - "optional": true, - "requires": { - "amdefine": ">=0.0.4" - } - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { - "has-flag": "^1.0.0" + "is-buffer": "^1.1.5" } } } }, - "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true - }, - "istanbul-lib-hook": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz", - "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==", + "is-number-object": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz", + "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", "dev": true, "requires": { - "append-transform": "^2.0.0" + "has-tostringtag": "^1.0.0" } }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "isobject": "^3.0.1" } }, - "istanbul-lib-processinfo": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz", - "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==", + "is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, "requires": { - "archy": "^1.0.0", - "cross-spawn": "^7.0.0", - "istanbul-lib-coverage": "^3.0.0-alpha.1", - "make-dir": "^3.0.0", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", - "uuid": "^3.3.3" - }, - "dependencies": { - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" } }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", "dev": true, "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "is-unc-path": "^1.0.0" } }, - "istanbul-lib-source-maps": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", - "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", + "is-shared-array-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz", + "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==", + "dev": true + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" } }, - "istanbul-reports": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", "dev": true, "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "unc-path-regex": "^0.1.2" } }, - "istanbul-threshold-checker": { + "is-utf8": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/istanbul-threshold-checker/-/istanbul-threshold-checker-0.2.1.tgz", - "integrity": "sha1-xdyU6PLMXNP/0zVFL4S1U8QkgzE=", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-valid-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", + "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", + "dev": true + }, + "is-weakref": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.1.tgz", + "integrity": "sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ==", "dev": true, "requires": { - "istanbul": "~0.4.5", - "lodash": "~4.17.2" + "call-bind": "^1.0.0" } }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + }, + "isbinaryfile": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.8.tgz", + "integrity": "sha512-53h6XFniq77YdW+spoRrebh0mnmTxRPTlcuIArO57lmMdq4uBKFKaeTjnb92oYWrSn/LVL+LT+Hap2tFQj8V+w==", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "devOptional": true + "dev": true }, "js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - } } }, "jsbn": { @@ -22636,9 +7343,9 @@ "dev": true }, "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", "dev": true }, "json-schema-traverse": { @@ -22660,9 +7367,9 @@ "dev": true }, "json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", "dev": true, "requires": { "minimist": "^1.2.5" @@ -22672,54 +7379,77 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, "requires": { "graceful-fs": "^4.1.6" } }, "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", - "json-schema": "0.2.3", + "json-schema": "0.4.0", "verror": "1.10.0" + }, + "dependencies": { + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + } } }, "just-debounce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", - "integrity": "sha1-h/zPrv/AtozRnVX2cilD+SnqNeo=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.1.0.tgz", + "integrity": "sha512-qpcRocdkUmf+UTNBYx5w6dexX5J31AKK1OmPwH630a83DdVVUIngk55RSAiIGpQyoH0dlr872VHfPjnQnK1qDQ==", "dev": true }, "just-extend": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", - "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", "dev": true }, "karma": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/karma/-/karma-5.1.1.tgz", - "integrity": "sha512-xAlOr5PMqUbiKXSv5PCniHWV3aiwj6wIZ0gUVcwpTCPVQm/qH2WAMFWxtnpM6KJqhkRWrIpovR4Rb0rn8GtJzQ==", + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/karma/-/karma-5.2.3.tgz", + "integrity": "sha512-tHdyFADhVVPBorIKCX8A37iLHxc6RBRphkSoQ+MLKdAtFn1k97tD8WUGi1KlEtDZKL3hui0qhsY9HXUfSNDYPQ==", "dev": true, "requires": { "body-parser": "^1.19.0", "braces": "^3.0.2", - "chokidar": "^3.0.0", + "chokidar": "^3.4.2", "colors": "^1.4.0", "connect": "^3.7.0", "di": "^0.0.1", "dom-serialize": "^2.2.1", - "flatted": "^2.0.2", "glob": "^7.1.6", "graceful-fs": "^4.2.4", "http-proxy": "^1.18.1", "isbinaryfile": "^4.0.6", - "lodash": "^4.17.15", + "lodash": "^4.17.19", "log4js": "^6.2.1", "mime": "^2.4.5", "minimatch": "^3.0.4", @@ -22729,30 +7459,23 @@ "socket.io": "^2.3.0", "source-map": "^0.6.1", "tmp": "0.2.1", - "ua-parser-js": "0.7.21", + "ua-parser-js": "0.7.22", "yargs": "^15.3.1" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, "requires": { "normalize-path": "^3.0.0", @@ -22760,9 +7483,9 @@ } }, "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true }, "braces": { @@ -22781,19 +7504,19 @@ "dev": true }, "chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", "dev": true, "requires": { - "anymatch": "~3.1.1", + "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" + "readdirp": "~3.6.0" } }, "cliui": { @@ -22842,9 +7565,9 @@ } }, "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, "optional": true }, @@ -22855,9 +7578,9 @@ "dev": true }, "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "requires": { "is-glob": "^4.0.1" @@ -22872,12 +7595,6 @@ "binary-extensions": "^2.0.0" } }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -22893,12 +7610,6 @@ "p-locate": "^4.1.0" } }, - "mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true - }, "p-locate": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", @@ -22915,9 +7626,9 @@ "dev": true }, "readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "requires": { "picomatch": "^2.2.1" @@ -22929,35 +7640,6 @@ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "dev": true, - "requires": { - "rimraf": "^3.0.0" - } - }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -22985,9 +7667,9 @@ } }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, "yargs": { @@ -23042,20 +7724,6 @@ "which": "^1.2.1" } }, - "karma-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.0.3.tgz", - "integrity": "sha512-atDvLQqvPcLxhED0cmXYdsPMCQuh6Asa9FMZW1bhNqlVEhJoB9qyZ2BY1gu7D/rr5GLGb5QzYO4siQskxaWP/g==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.1", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.0", - "minimatch": "^3.0.4" - } - }, "karma-mocha": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/karma-mocha/-/karma-mocha-2.0.1.tgz", @@ -23082,9 +7750,9 @@ "dev": true }, "karma-sourcemap-loader": { - "version": "0.3.7", - "resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz", - "integrity": "sha1-kTIsd/jxPUb+0GKwQuEAnUxFBdg=", + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.8.tgz", + "integrity": "sha512-zorxyAakYZuBcHRJE+vbrK2o2JXLFWK8VVjiT/6P+ltLBUGUvqTEkUiQ119MGdOrK7mrmxXHZF1/pfT6GgIZ6g==", "dev": true, "requires": { "graceful-fs": "^4.1.2" @@ -23153,6 +7821,15 @@ "graceful-fs": "^4.1.9" } }, + "knuth-shuffle-seeded": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/knuth-shuffle-seeded/-/knuth-shuffle-seeded-1.0.6.tgz", + "integrity": "sha1-AfG2VzOqdUDuCNiwF0Fk0iCB5OE=", + "dev": true, + "requires": { + "seed-random": "~2.2.0" + } + }, "last-run": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz", @@ -23170,12 +7847,50 @@ "dev": true }, "lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "dev": true, "requires": { "readable-stream": "^2.0.5" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "lcid": { @@ -23196,21 +7911,6 @@ "flush-write-stream": "^1.0.2" } }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", - "dev": true, - "requires": { - "leven": "^3.1.0" - } - }, "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", @@ -23248,15 +7948,16 @@ "dev": true }, "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, "requires": { "graceful-fs": "^4.1.2", "parse-json": "^2.2.0", "pify": "^2.0.0", - "strip-bom": "^3.0.0" + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" }, "dependencies": { "pify": { @@ -23264,6 +7965,15 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } } } }, @@ -23306,10 +8016,10 @@ } }, "lodash": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz", - "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==", - "devOptional": true + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "lodash._reinterpolate": { "version": "3.0.0", @@ -23323,10 +8033,10 @@ "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", "dev": true }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", "dev": true }, "lodash.some": { @@ -23374,17 +8084,6 @@ "flatted": "^2.0.1", "rfdc": "^1.1.4", "streamroller": "^2.2.4" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } } }, "lolex": { @@ -23399,21 +8098,21 @@ "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", "dev": true }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "devOptional": true, + "lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dev": true, "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" + "tslib": "^2.0.3" } }, "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "requires": { - "yallist": "^3.0.2" + "yallist": "^4.0.0" } }, "lru-queue": { @@ -23433,6 +8132,14 @@ "requires": { "pify": "^4.0.1", "semver": "^5.6.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "make-error": { @@ -23527,19 +8234,27 @@ "dev": true }, "memoizee": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.14.tgz", - "integrity": "sha512-/SWFvWegAIYAO4NQMpcX+gcra0yEZu4OntmUdrBaWrJncxOqAziGFlHxc7yjKVK2uu3lpPW27P27wkR82wA8mg==", + "version": "0.4.15", + "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz", + "integrity": "sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==", "dev": true, "requires": { - "d": "1", - "es5-ext": "^0.10.45", - "es6-weak-map": "^2.0.2", + "d": "^1.0.1", + "es5-ext": "^0.10.53", + "es6-weak-map": "^2.0.3", "event-emitter": "^0.3.5", - "is-promise": "^2.1", - "lru-queue": "0.1", - "next-tick": "1", - "timers-ext": "^0.1.5" + "is-promise": "^2.2.2", + "lru-queue": "^0.1.0", + "next-tick": "^1.1.0", + "timers-ext": "^0.1.7" + }, + "dependencies": { + "next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", + "dev": true + } } }, "memory-fs": { @@ -23550,6 +8265,44 @@ "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "merge-stream": { @@ -23595,29 +8348,29 @@ }, "dependencies": { "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } }, "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==" }, "mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", + "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==" }, "mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", + "version": "2.1.34", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", + "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", "requires": { - "mime-db": "1.44.0" + "mime-db": "1.51.0" } }, "mimic-fn": { @@ -23758,15 +8511,15 @@ "dev": true }, "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true }, "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, "requires": { "normalize-path": "^3.0.0", @@ -23774,9 +8527,9 @@ } }, "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true }, "braces": { @@ -23821,18 +8574,27 @@ "wrap-ansi": "^5.1.0" } }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -23870,9 +8632,9 @@ } }, "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "requires": { "is-glob": "^4.0.1" @@ -23934,6 +8696,18 @@ "semver": "^5.7.0" } }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, "readdirp": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", @@ -23949,6 +8723,12 @@ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, "string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -24011,9 +8791,9 @@ } }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, "yargs": { @@ -24072,14 +8852,9 @@ } }, "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "msrcrypto": { - "version": "1.5.8", - "resolved": "https://registry.npmjs.org/msrcrypto/-/msrcrypto-1.5.8.tgz", - "integrity": "sha512-ujZ0TRuozHKKm6eGbKHfXef7f+esIhEckmThVnz7RNyiOJd7a6MXj2JGBoL9cnPDW+JMG16MoTUh5X+XXjI66Q==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "mute-stdout": { "version": "1.0.1", @@ -24093,10 +8868,21 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "requires": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, "nan": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", - "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz", + "integrity": "sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==", "dev": true, "optional": true }, @@ -24138,9 +8924,9 @@ "dev": true }, "netmask": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", - "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==" }, "next-tick": { "version": "1.0.0", @@ -24178,6 +8964,16 @@ } } }, + "no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dev": true, + "requires": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, "nock": { "version": "9.6.1", "resolved": "https://registry.npmjs.org/nock/-/nock-9.6.1.tgz", @@ -24193,6 +8989,23 @@ "propagate": "^1.0.0", "qs": "^6.5.1", "semver": "^5.5.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "node-environment-flags": { @@ -24203,24 +9016,23 @@ "requires": { "object.getownpropertydescriptors": "^2.0.3", "semver": "^5.7.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "node-fetch": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-Z8/6vRlTUChSdIgMa51jxQ4lrw/Jy5SOW10ObaA47/RElsAN2c5Pn8bTgFGWn/ibwzXTE8qwr1Yzx28vsecXEA==", "dev": true, "requires": { - "encoding": "^0.1.11", - "is-stream": "^1.0.1" - }, - "dependencies": { - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - } + "whatwg-url": "^5.0.0" } }, "node-libs-browser": { @@ -24252,357 +9064,129 @@ "url": "^0.11.0", "util": "^0.11.0", "vm-browserify": "^1.0.1" - }, - "dependencies": { - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } - } - }, - "node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true - }, - "node-preload": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz", - "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==", - "dev": true, - "requires": { - "process-on-spawn": "^1.0.0" - } - }, - "node-releases": { - "version": "1.1.60", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", - "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", - "dev": true - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "now-and-later": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz", - "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==", - "dev": true, - "requires": { - "once": "^1.3.2" - } - }, - "npm-run-path": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz", - "integrity": "sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - }, - "dependencies": { - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - } - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "nyc": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz", - "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==", - "dev": true, - "requires": { - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "caching-transform": "^4.0.0", - "convert-source-map": "^1.7.0", - "decamelize": "^1.2.0", - "find-cache-dir": "^3.2.0", - "find-up": "^4.1.0", - "foreground-child": "^2.0.0", - "get-package-type": "^0.1.0", - "glob": "^7.1.6", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-hook": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-processinfo": "^2.0.2", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "make-dir": "^3.0.0", - "node-preload": "^0.2.1", - "p-map": "^3.0.0", - "process-on-spawn": "^1.0.0", - "resolve-from": "^5.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "spawn-wrap": "^2.0.0", - "test-exclude": "^6.0.0", - "yargs": "^15.0.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + }, + "dependencies": { + "buffer": { + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", "dev": true, "requires": { - "find-up": "^4.0.0" + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" } }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", "dev": true }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + }, + "dependencies": { + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + } + } + }, + "node-releases": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", + "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", + "dev": true + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "now-and-later": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz", + "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==", + "dev": true, + "requires": { + "once": "^1.3.2" + } + }, + "npm-run-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-3.1.0.tgz", + "integrity": "sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==", + "dev": true, + "requires": { + "path-key": "^3.0.0" + }, + "dependencies": { + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", @@ -24613,12 +9197,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "devOptional": true - }, - "object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", "dev": true }, "object-copy": { @@ -24653,19 +9231,18 @@ } }, "object-inspect": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", - "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==", - "dev": true + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.1.tgz", + "integrity": "sha512-If7BjFlpkzzBeV1cqgT3OSWT3azyoxDGajR+iGnFBfVV2EWyDyWaZZW2ERDjUaY2QM8i5jI3Sj7mhsM4DDAqWA==" }, "object-is": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", - "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" } }, "object-keys": { @@ -24684,15 +9261,15 @@ } }, "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" } }, "object.defaults": { @@ -24708,24 +9285,25 @@ } }, "object.entries": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.2.tgz", - "integrity": "sha512-BQdB9qKmb/HyNdMNWVr7O3+z5MUIx3aiegEIJqjMBbBf0YT9RRxTJSim4mzFqtyr7PDAHigq0N9dO0m0tRakQA==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", + "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, "requires": { + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.17.5", - "has": "^1.0.3" + "es-abstract": "^1.19.1" } }, "object.getownpropertydescriptors": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", - "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz", + "integrity": "sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw==", "dev": true, "requires": { + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" + "es-abstract": "^1.19.1" } }, "object.map": { @@ -24758,15 +9336,14 @@ } }, "object.values": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", - "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", + "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, "requires": { + "call-bind": "^1.0.2", "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1", - "function-bind": "^1.1.1", - "has": "^1.0.3" + "es-abstract": "^1.19.1" } }, "on-finished": { @@ -24788,9 +9365,9 @@ } }, "onetime": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.1.tgz", - "integrity": "sha512-ZpZpjcJeugQfWsfyQlshVoowIIQ1qBGSVll4rfDq6JJVO//fesjoX808hXWfBjY+ROZgpKDI5TRSRBSoJiZ8eg==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "requires": { "mimic-fn": "^2.1.0" @@ -24816,6 +9393,44 @@ "dev": true, "requires": { "readable-stream": "^2.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "os-browserify": { @@ -24863,15 +9478,6 @@ "p-limit": "^2.0.0" } }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", @@ -24879,64 +9485,38 @@ "dev": true }, "pac-proxy-agent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-3.0.1.tgz", - "integrity": "sha512-44DUg21G/liUZ48dJpUSjZnFfZro/0K5JTyFYLBcmh9+T6Ooi4/i4efwUiEy0+4oQusCBqWdhv16XohIj1GqnQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-5.0.0.tgz", + "integrity": "sha512-CcFG3ZtnxO8McDigozwE3AqAw15zDvGH+OjXO4kzf7IkEKkQ4gxQ+3sdF50WmhQ4P/bVusXcqNE2S3XrNURwzQ==", "requires": { - "agent-base": "^4.2.0", - "debug": "^4.1.1", - "get-uri": "^2.0.0", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^3.0.0", - "pac-resolver": "^3.0.0", + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4", + "get-uri": "3", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "5", + "pac-resolver": "^5.0.0", "raw-body": "^2.2.0", - "socks-proxy-agent": "^4.0.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - } + "socks-proxy-agent": "5" } }, "pac-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", - "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-5.0.0.tgz", + "integrity": "sha512-H+/A6KitiHNNW+bxBKREk2MCGSxljfqRX76NjummWEYIat7ldVXRU3dhRIE3iXZ0nvGBk6smv3nntxKkzRL8NA==", "requires": { - "co": "^4.6.0", - "degenerator": "^1.0.4", + "degenerator": "^3.0.1", "ip": "^1.1.5", - "netmask": "^1.0.6", - "thunkify": "^2.1.2" + "netmask": "^2.0.1" } }, - "package-hash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz", - "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==", + "pad-right": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/pad-right/-/pad-right-0.2.2.tgz", + "integrity": "sha1-b7ySQEXSRPKiokRQMGDTv8YAl3Q=", "dev": true, "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^5.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - }, - "dependencies": { - "hasha": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.0.tgz", - "integrity": "sha512-2W+jKdQbAdSIrggA8Q35Br8qKadTrqCTC8+XZvBWepKDK6m9XkX6Iz1a2yh2KP01kzAR/dpuMeUnocoLYDcskw==", - "dev": true, - "requires": { - "is-stream": "^2.0.0", - "type-fest": "^0.8.0" - } - } + "repeat-string": "^1.5.2" } }, "pako": { @@ -24954,6 +9534,44 @@ "cyclist": "^1.0.1", "inherits": "^2.0.3", "readable-stream": "^2.1.5" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "parent-module": { @@ -24966,14 +9584,13 @@ } }, "parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", "dev": true, "requires": { - "asn1.js": "^4.0.0", + "asn1.js": "^5.2.0", "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", "evp_bytestokey": "^1.0.0", "pbkdf2": "^3.0.3", "safe-buffer": "^5.1.1" @@ -25011,23 +9628,17 @@ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", "dev": true }, - "parseqs": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", - "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } - }, + "parseqs": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz", + "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==", + "dev": true + }, "parseuri": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", - "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", - "dev": true, - "requires": { - "better-assert": "~1.0.0" - } + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz", + "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==", + "dev": true }, "parseurl": { "version": "1.3.3", @@ -25072,9 +9683,9 @@ "dev": true }, "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "path-root": { @@ -25099,23 +9710,17 @@ "dev": true, "requires": { "isarray": "0.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - } } }, "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, "requires": { - "pify": "^2.0.0" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { "pify": { @@ -25127,15 +9732,15 @@ } }, "pathval": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", - "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", "dev": true }, "pbkdf2": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", - "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, "requires": { "create-hash": "^1.1.2", @@ -25202,10 +9807,16 @@ } } }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", "dev": true }, "pify": { @@ -25230,13 +9841,10 @@ } }, "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, - "requires": { - "node-modules-regexp": "^1.0.0" - } + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.4.tgz", + "integrity": "sha512-ZIrVPH+A52Dw84R0L3/VS9Op04PuQ2SEoJL6bkshmiTic/HldyW9Tf7oH5mhJZBK7NmDx27vSMrYEXPXclpDKw==", + "dev": true }, "pkg-dir": { "version": "3.0.0", @@ -25285,16 +9893,8 @@ "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" - }, - "process-on-spawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", - "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", - "dev": true, - "requires": { - "fromentries": "^1.2.0" - } + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true }, "progress": { "version": "2.0.3", @@ -25308,17 +9908,6 @@ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", "dev": true }, - "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "optional": true, - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, "propagate": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/propagate/-/propagate-1.0.0.tgz", @@ -25326,27 +9915,32 @@ "dev": true }, "proxy-agent": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.1.1.tgz", - "integrity": "sha512-WudaR0eTsDx33O3EJE16PjBRZWcX8GqCEeERw1W3hZJgH/F2a46g7jty6UGty6NeJ4CKQy8ds2CJPMiyeqaTvw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-5.0.0.tgz", + "integrity": "sha512-gkH7BkvLVkSfX9Dk27W6TyNOWWZWRilRfk1XxGNWOYJ2TuedAv1yFpCaU9QSBmBe716XOTNpYNOzhysyw8xn7g==", "requires": { - "agent-base": "^4.2.0", + "agent-base": "^6.0.0", "debug": "4", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^3.0.0", + "http-proxy-agent": "^4.0.0", + "https-proxy-agent": "^5.0.0", "lru-cache": "^5.1.1", - "pac-proxy-agent": "^3.0.1", + "pac-proxy-agent": "^5.0.0", "proxy-from-env": "^1.0.0", - "socks-proxy-agent": "^4.0.1" + "socks-proxy-agent": "^5.0.0" }, "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "requires": { - "ms": "^2.1.1" + "yallist": "^3.0.2" } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" } } }, @@ -25382,9 +9976,9 @@ }, "dependencies": { "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } @@ -25417,16 +10011,16 @@ "dev": true }, "puppeteer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-5.2.1.tgz", - "integrity": "sha512-PZoZG7u+T6N1GFWBQmGVG162Ak5MAy8nYSVpeeQrwJK2oYUlDWpHEJPcd/zopyuEMTv7DiztS1blgny1txR2qw==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-5.5.0.tgz", + "integrity": "sha512-OM8ZvTXAhfgFA7wBIIGlPQzvyEETzDjeRa4mZRCRHxYL+GNH5WAuYUQdja3rpWZvkX/JKqmuVgbsxDNsDFjMEg==", "dev": true, "requires": { "debug": "^4.1.0", - "devtools-protocol": "0.0.781568", + "devtools-protocol": "0.0.818844", "extract-zip": "^2.0.0", "https-proxy-agent": "^4.0.0", - "mime": "^2.0.3", + "node-fetch": "^2.6.7", "pkg-dir": "^4.2.0", "progress": "^2.0.1", "proxy-from-env": "^1.0.0", @@ -25442,15 +10036,6 @@ "integrity": "sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==", "dev": true }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, "extract-zip": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", @@ -25492,12 +10077,6 @@ "p-locate": "^4.1.0" } }, - "mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true - }, "p-locate": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", @@ -25524,16 +10103,6 @@ } } }, - "pvtsutils": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.0.11.tgz", - "integrity": "sha512-k040UEiUms7Ey8fwRvCBvlqcuOxK9IMBnnmIijk0jkAs+gdZQkayenRQ1a2Z574i2HyFVyJ+zwomZc5QEjzewg==" - }, - "pvutils": { - "version": "1.0.17", - "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.0.17.tgz", - "integrity": "sha512-wLHYUQxWaXVQvKnwIDWFVKDJku9XDCvyhhxoq8dc5MFdIlRenyPI9eSfEtcvgHgD7FlvCyGAlWgOzRnZD99GZQ==" - }, "qjobs": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", @@ -25541,9 +10110,12 @@ "dev": true }, "qs": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.4.tgz", - "integrity": "sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ==" + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } }, "querystring": { "version": "0.2.0", @@ -25589,109 +10161,66 @@ "dev": true }, "raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz", + "integrity": "sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==", "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.3", + "bytes": "3.1.1", + "http-errors": "1.8.1", "iconv-lite": "0.4.24", "unpipe": "1.0.0" } }, - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "optional": true - }, - "react-native-securerandom": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/react-native-securerandom/-/react-native-securerandom-0.1.1.tgz", - "integrity": "sha1-8TBiOkEsM4sK+t7bwgTFy7i/IHA=", - "optional": true, - "requires": { - "base64-js": "*" - } - }, "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, "requires": { - "load-json-file": "^2.0.0", + "load-json-file": "^1.0.0", "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" + "path-type": "^1.0.0" } }, "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" }, "dependencies": { "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, "requires": { - "p-try": "^1.0.0" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, "requires": { - "p-limit": "^1.1.0" + "pinkie-promise": "^2.0.0" } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true } } }, "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } }, "readdirp": { @@ -25703,6 +10232,44 @@ "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", "readable-stream": "^2.0.2" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "rechoir": { @@ -25714,25 +10281,31 @@ "resolve": "^1.1.6" } }, + "reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", + "dev": true + }, "regenerate": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", - "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true }, "regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz", + "integrity": "sha512-3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA==", "dev": true, "requires": { - "regenerate": "^1.4.0" + "regenerate": "^1.4.2" } }, "regenerator-runtime": { - "version": "0.13.7", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", - "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" }, "regenerator-transform": { "version": "0.14.5", @@ -25753,14 +10326,29 @@ "safe-regex": "^1.1.0" } }, + "regexp-match-indices": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regexp-match-indices/-/regexp-match-indices-1.0.2.tgz", + "integrity": "sha512-DwZuAkt8NF5mKwGGER1EGh2PRqyvhRhhLviH+R8y8dIuaQROlUfXjt4s9ZTXstIsSkptf06BSvwcEmmfheJJWQ==", + "dev": true, + "requires": { + "regexp-tree": "^0.1.11" + } + }, + "regexp-tree": { + "version": "0.1.24", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.24.tgz", + "integrity": "sha512-s2aEVuLhvnVJW6s/iPgEGK6R+/xngd2jNQ+xy4bXNDKxZKJH6jpPHY6kVeVv1IeLCHgswRj+Kl3ELaDjG6V1iw==", + "dev": true + }, "regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" } }, "regexpp": { @@ -25770,17 +10358,17 @@ "dev": true }, "regexpu-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", - "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.8.0.tgz", + "integrity": "sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg==", "dev": true, "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^9.0.0", + "regjsgen": "^0.5.2", + "regjsparser": "^0.7.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" } }, "regjsgen": { @@ -25790,9 +10378,9 @@ "dev": true }, "regjsparser": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", - "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.7.0.tgz", + "integrity": "sha512-A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -25806,15 +10394,6 @@ } } }, - "release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", - "dev": true, - "requires": { - "es6-error": "^4.0.1" - } - }, "remove-bom-buffer": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", @@ -25843,9 +10422,9 @@ "dev": true }, "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", "dev": true }, "repeat-string": { @@ -25911,9 +10490,15 @@ } }, "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "dev": true + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", "dev": true } } @@ -25946,11 +10531,12 @@ "dev": true }, "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, "requires": { + "is-core-module": "^2.2.0", "path-parse": "^1.0.6" } }, @@ -25965,9 +10551,9 @@ } }, "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, "resolve-options": { @@ -25979,6 +10565,15 @@ "value-or-function": "^3.0.0" } }, + "resolve-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg/-/resolve-pkg-2.0.0.tgz", + "integrity": "sha512-+1lzwXehGCXSeryaISr6WujZzowloigEofRB+dj75y9RRa/obVcYgbHJd53tdYw8pvZj8GojXaaENws8Ktw/hQ==", + "dev": true, + "requires": { + "resolve-from": "^5.0.0" + } + }, "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", @@ -26002,9 +10597,9 @@ "dev": true }, "rfdc": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.4.tgz", - "integrity": "sha512-5C9HXdzK8EAqN7JDif30jqsBzavB7wLpaubisuQIGHWf2gUXSpzy6ArX/+Da8RjFpagWsCn+pIgxTMAmKw9Zug==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", "dev": true }, "right-align": { @@ -26051,26 +10646,26 @@ } }, "rxjs": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.2.tgz", - "integrity": "sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "requires": { "tslib": "^1.9.0" }, "dependencies": { "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true } } }, "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safe-regex": { "version": "1.1.0", @@ -26087,22 +10682,30 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", "dev": true, "requires": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" } }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "seed-random": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/seed-random/-/seed-random-2.2.0.tgz", + "integrity": "sha1-KpsZ4lCoFwmSMaW5mk2vgLf77VQ=", "dev": true }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "requires": { + "lru-cache": "^6.0.0" + } + }, "semver-greatest-satisfied-range": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz", @@ -26113,9 +10716,9 @@ } }, "serialize-javascript": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", - "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", + "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", "dev": true, "requires": { "randombytes": "^2.1.0" @@ -26157,9 +10760,9 @@ "dev": true }, "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, "sha.js": { "version": "2.4.11", @@ -26195,10 +10798,20 @@ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.6.tgz", + "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==", "dev": true }, "sinon": { @@ -26214,12 +10827,20 @@ "lolex": "^4.2.0", "nise": "^1.5.2", "supports-color": "^5.5.0" + }, + "dependencies": { + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + } } }, "sinon-chai": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.5.0.tgz", - "integrity": "sha512-IifbusYiQBpUxxFJkR3wTU68xzBN0+bxCScEaKMjBvAQERg6FnTTc1F17rseLb1tjmkJ23730AXpFI0c47FgAg==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.7.0.tgz", + "integrity": "sha512-mf5NURdUaSdnatJx3uhoBOrY9dtL19fiOtAdT1Azxg3+lNJFiuN0uzaU3xX1LeAfL17kHQhTAJgpsfhbMJMY2g==", "dev": true }, "slice-ansi": { @@ -26242,9 +10863,9 @@ } }, "smart-buffer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", - "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==" }, "snapdragon": { "version": "0.8.2", @@ -26375,16 +10996,16 @@ } }, "socket.io": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.3.0.tgz", - "integrity": "sha512-2A892lrj0GcgR/9Qk81EaY2gYhCBxurV0PfmmESO6p27QPrUK1J3zdns+5QPqvUYK2q657nSj0guoIil9+7eFg==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.4.1.tgz", + "integrity": "sha512-Si18v0mMXGAqLqCVpTxBa8MGqriHGQh8ccEOhmsmNS3thNCGBwO8WGrwMibANsWtQQ5NStdZwHqZR3naJVFc3w==", "dev": true, "requires": { "debug": "~4.1.0", - "engine.io": "~3.4.0", + "engine.io": "~3.5.0", "has-binary2": "~1.0.2", "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.3.0", + "socket.io-client": "2.4.0", "socket.io-parser": "~3.4.0" }, "dependencies": { @@ -26406,40 +11027,31 @@ "dev": true }, "socket.io-client": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.3.0.tgz", - "integrity": "sha512-cEQQf24gET3rfhxZ2jJ5xzAOo/xhZwK+mOqtGRg5IowZsMgwvHwnf/mCRapAAkadhM26y+iydgwsXGObBB5ZdA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.4.0.tgz", + "integrity": "sha512-M6xhnKQHuuZd4Ba9vltCLT9oa+YvTsP8j9NcEiLElfIg8KeYPyhWOes6x4t+LTAC8enQbE/995AdTem2uNyKKQ==", "dev": true, "requires": { "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~4.1.0", - "engine.io-client": "~3.4.0", + "component-emitter": "~1.3.0", + "debug": "~3.1.0", + "engine.io-client": "~3.5.0", "has-binary2": "~1.0.2", - "has-cors": "1.1.0", "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", + "parseqs": "0.0.6", + "parseuri": "0.0.6", "socket.io-parser": "~3.3.0", "to-array": "0.1.4" }, "dependencies": { - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.0.0" } }, "isarray": { @@ -26448,32 +11060,21 @@ "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", "dev": true }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, "socket.io-parser": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.0.tgz", - "integrity": "sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.2.tgz", + "integrity": "sha512-FJvDBuOALxdCI9qwRrO/Rfp9yfndRtc1jSgVgV8FDraihmSP/MLGD5PEuJrNfjALvcQ+vMDM/33AWOYP/JSjDg==", "dev": true, "requires": { - "component-emitter": "1.2.1", + "component-emitter": "~1.3.0", "debug": "~3.1.0", "isarray": "2.0.1" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } } } } @@ -26513,31 +11114,22 @@ } }, "socks": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", - "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", + "integrity": "sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA==", "requires": { - "ip": "1.1.5", + "ip": "^1.1.5", "smart-buffer": "^4.1.0" } }, "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz", + "integrity": "sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ==", "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "dependencies": { - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", - "requires": { - "es6-promisify": "^5.0.0" - } - } + "agent-base": "^6.0.2", + "debug": "4", + "socks": "^2.3.3" } }, "source-list-map": { @@ -26565,9 +11157,9 @@ } }, "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -26575,9 +11167,9 @@ } }, "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", "dev": true }, "sparkles": { @@ -26586,46 +11178,6 @@ "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", "dev": true }, - "spawn-wrap": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz", - "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==", - "dev": true, - "requires": { - "foreground-child": "^2.0.0", - "is-windows": "^1.0.2", - "make-dir": "^3.0.0", - "rimraf": "^3.0.0", - "signal-exit": "^3.0.2", - "which": "^2.0.1" - }, - "dependencies": { - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, "spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -26653,9 +11205,9 @@ } }, "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", + "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", "dev": true }, "split-string": { @@ -26691,20 +11243,70 @@ } }, "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", + "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", "dev": true, "requires": { "figgy-pudding": "^3.5.1" } }, + "stack-chain": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/stack-chain/-/stack-chain-2.0.0.tgz", + "integrity": "sha512-GGrHXePi305aW7XQweYZZwiRwR7Js3MWoK/EHzzB9ROdc75nCnjSJVi21rdAGxFl+yCx2L2qdfl5y7NO4lTyqg==", + "dev": true + }, + "stack-generator": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/stack-generator/-/stack-generator-2.0.5.tgz", + "integrity": "sha512-/t1ebrbHkrLrDuNMdeAcsvynWgoH/i4o8EGGfX7dEYDoTXOYVAkEpFdtshlvabzc6JlJ8Kf9YdFEoz7JkzGN9Q==", + "dev": true, + "requires": { + "stackframe": "^1.1.1" + } + }, "stack-trace": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", "dev": true }, + "stackframe": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.2.0.tgz", + "integrity": "sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA==", + "dev": true + }, + "stacktrace-gps": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/stacktrace-gps/-/stacktrace-gps-3.0.4.tgz", + "integrity": "sha512-qIr8x41yZVSldqdqe6jciXEaSCKw1U8XTXpjDuy0ki/apyTn/r3w9hDAAQOhZdxvsC93H+WwwEu5cq5VemzYeg==", + "dev": true, + "requires": { + "source-map": "0.5.6", + "stackframe": "^1.1.1" + }, + "dependencies": { + "source-map": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", + "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=", + "dev": true + } + } + }, + "stacktrace-js": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stacktrace-js/-/stacktrace-js-2.0.2.tgz", + "integrity": "sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==", + "dev": true, + "requires": { + "error-stack-parser": "^2.0.6", + "stack-generator": "^2.0.5", + "stacktrace-gps": "^3.0.4" + } + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -26740,11 +11342,6 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, - "str2buf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/str2buf/-/str2buf-1.3.0.tgz", - "integrity": "sha512-xIBmHIUHYZDP4HyoXGHYNVmxlXLXDrtFHYT0eV6IOdEj3VO9ccaF1Ejl9Oq8iFjITllpT8FhaXb4KsNmw+3EuA==" - }, "stream-browserify": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", @@ -26753,6 +11350,44 @@ "requires": { "inherits": "~2.0.1", "readable-stream": "^2.0.2" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "stream-each": { @@ -26782,6 +11417,44 @@ "readable-stream": "^2.3.6", "to-arraybuffer": "^1.0.0", "xtend": "^4.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "stream-shift": { @@ -26815,64 +11488,61 @@ "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz", "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==", "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } } } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "requires": { - "safe-buffer": "~5.1.0" - } + "string-argv": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", + "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "dev": true }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" } }, "string.prototype.trimend": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", - "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", + "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" } }, "string.prototype.trimstart": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", - "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", + "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^5.0.1" } }, "strip-bom": { @@ -26900,29 +11570,30 @@ "dev": true }, "superagent": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz", - "integrity": "sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-6.1.0.tgz", + "integrity": "sha512-OUDHEssirmplo3F+1HWKUrUjvnQuA+nZI6i/JJBdXb5eq9IyEQwPyPpqND+SSsxf6TygpBEkUjISVRN4/VOpeg==", "requires": { - "component-emitter": "^1.2.0", - "cookiejar": "^2.1.0", - "debug": "^3.1.0", - "extend": "^3.0.0", - "form-data": "^2.3.1", - "formidable": "^1.2.0", - "methods": "^1.1.1", - "mime": "^1.4.1", - "qs": "^6.5.1", - "readable-stream": "^2.3.5" + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.2", + "debug": "^4.1.1", + "fast-safe-stringify": "^2.0.7", + "form-data": "^3.0.0", + "formidable": "^1.2.2", + "methods": "^1.1.2", + "mime": "^2.4.6", + "qs": "^6.9.4", + "readable-stream": "^3.6.0", + "semver": "^7.3.2" } }, "superagent-proxy": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/superagent-proxy/-/superagent-proxy-2.0.0.tgz", - "integrity": "sha512-TktJma5jPdiH1BNN+reF/RMW3b8aBTCV7KlLFV0uYcREgNf3pvo7Rdt564OcFHwkGb3mYEhHuWPBhSbOwiNaYw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/superagent-proxy/-/superagent-proxy-3.0.0.tgz", + "integrity": "sha512-wAlRInOeDFyd9pyonrkJspdRAxdLrcsZ6aSnS+8+nu4x1aXbz6FWSTT9M6Ibze+eG60szlL7JA8wEIV7bPWuyQ==", "requires": { - "debug": "^3.1.0", - "proxy-agent": "3" + "debug": "^4.3.2", + "proxy-agent": "^5.0.0" } }, "supports-color": { @@ -26957,9 +11628,9 @@ }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true }, "emoji-regex": { @@ -27003,15 +11674,15 @@ "dev": true }, "tar-fs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.0.tgz", - "integrity": "sha512-9uW5iDvrIMCVpvasdFHW0wJPez0K4JnMZtsuIeDI7HyMGJNxmDZDOCQROr7lXyS+iL/QMpj07qcjGYTSdRFXUg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", "dev": true, "requires": { "chownr": "^1.1.1", "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", - "tar-stream": "^2.0.0" + "tar-stream": "^2.1.4" }, "dependencies": { "pump": { @@ -27027,12 +11698,12 @@ } }, "tar-stream": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.3.tgz", - "integrity": "sha512-Z9yri56Dih8IaK8gncVPx4Wqt86NDmQTSh49XLZgjWpGZL9GK9HKParS2scqHCC4w6X9Gh2jwaU45V47XTKwVA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "dev": true, "requires": { - "bl": "^4.0.1", + "bl": "^4.0.3", "end-of-stream": "^1.4.1", "fs-constants": "^1.0.0", "inherits": "^2.0.3", @@ -27040,9 +11711,9 @@ }, "dependencies": { "bl": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.2.tgz", - "integrity": "sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, "requires": { "buffer": "^5.5.0", @@ -27050,15 +11721,14 @@ "readable-stream": "^3.4.0" } }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", "dev": true, "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } } } @@ -27072,19 +11742,27 @@ "commander": "^2.20.0", "source-map": "~0.6.1", "source-map-support": "~0.5.12" + }, + "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + } } }, "terser-webpack-plugin": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.4.tgz", - "integrity": "sha512-U4mACBHIegmfoEe5fdongHESNJWqsGU+W0S/9+BmYGVQDw1+c2Ow05TpMhxjPK1sRb7cuYq1BPl1e5YHJMTCqA==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", "dev": true, "requires": { "cacache": "^12.0.2", "find-cache-dir": "^2.1.0", "is-wsl": "^1.1.0", "schema-utils": "^1.0.0", - "serialize-javascript": "^3.1.0", + "serialize-javascript": "^4.0.0", "source-map": "^0.6.1", "terser": "^4.1.2", "webpack-sources": "^1.4.0", @@ -27104,23 +11782,30 @@ } } }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - } - }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, + "thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "requires": { + "any-promise": "^1.0.0" + } + }, + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "dev": true, + "requires": { + "thenify": ">= 3.1.0 < 4" + } + }, "throttleit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz", @@ -27141,6 +11826,44 @@ "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "through2-filter": { @@ -27153,11 +11876,6 @@ "xtend": "~4.0.0" } }, - "thunkify": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", - "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=" - }, "time-stamp": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", @@ -27165,9 +11883,9 @@ "dev": true }, "timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", "dev": true, "requires": { "setimmediate": "^1.0.4" @@ -27184,12 +11902,12 @@ } }, "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", "dev": true, "requires": { - "os-tmpdir": "~1.0.2" + "rimraf": "^3.0.0" } }, "to-absolute-glob": { @@ -27272,9 +11990,9 @@ } }, "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" }, "tough-cookie": { "version": "2.5.0", @@ -27286,6 +12004,12 @@ "punycode": "^2.1.1" } }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", + "dev": true + }, "traverse": { "version": "0.3.9", "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", @@ -27293,9 +12017,9 @@ "dev": true }, "tsconfig-paths": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.12.0.tgz", + "integrity": "sha512-e5adrnOYT6zqVnWqZu7i/BQ3BnhzvGbjEjejFXO20lKIKpwTaupkCPgEfv4GZK1IBciJUEhYs3J3p75FdaTFVg==", "dev": true, "requires": { "@types/json5": "^0.0.29", @@ -27316,9 +12040,9 @@ } }, "tslib": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.0.tgz", - "integrity": "sha512-lTqkx847PI7xEDYJntxZH89L2/aXInsyF2luSafe/+0fHOMjlBNXdH6th7f70qxLDhul7KZK0zC8V5ZIyHl0/g==" + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" }, "tty-browserify": { "version": "0.0.0", @@ -27383,19 +12107,16 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "dev": true }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" - } + "typescript": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.2.tgz", + "integrity": "sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw==", + "dev": true }, "ua-parser-js": { - "version": "0.7.21", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.21.tgz", - "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==", + "version": "0.7.22", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.22.tgz", + "integrity": "sha512-YUxzMjJ5T71w6a8WWVcMGM6YWOTX27rCoIQgLXiWaxqXSx9D7DNjiGWn1aJIRSQ5qr0xuhra77bSIh6voR/46Q==", "dev": true }, "uglify-js": { @@ -27432,12 +12153,6 @@ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "dev": true }, - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true - }, "yargs": { "version": "3.10.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", @@ -27457,7 +12172,19 @@ "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", "dev": true, - "optional": true + "optional": true + }, + "unbox-primitive": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", + "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has-bigints": "^1.0.1", + "has-symbols": "^1.0.2", + "which-boxed-primitive": "^1.0.2" + } }, "unbzip2-stream": { "version": "1.4.3", @@ -27467,6 +12194,18 @@ "requires": { "buffer": "^5.2.1", "through": "^2.3.8" + }, + "dependencies": { + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + } } }, "unc-path-regex": { @@ -27476,15 +12215,15 @@ "dev": true }, "underscore": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.10.2.tgz", - "integrity": "sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg==", + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.1.tgz", + "integrity": "sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==", "dev": true }, "undertaker": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.1.tgz", - "integrity": "sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz", + "integrity": "sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg==", "dev": true, "requires": { "arr-flatten": "^1.0.1", @@ -27492,10 +12231,19 @@ "bach": "^1.0.0", "collection-map": "^1.0.0", "es6-weak-map": "^2.0.1", + "fast-levenshtein": "^1.0.0", "last-run": "^1.1.0", "object.defaults": "^1.0.0", "object.reduce": "^1.0.0", "undertaker-registry": "^1.0.0" + }, + "dependencies": { + "fast-levenshtein": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz", + "integrity": "sha1-5qdUzI8V5YmHqpy9J69m/W9OWvk=", + "dev": true + } } }, "undertaker-registry": { @@ -27505,31 +12253,31 @@ "dev": true }, "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", "dev": true }, "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" } }, "unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", "dev": true }, "unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", "dev": true }, "union-value": { @@ -27575,8 +12323,7 @@ "universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" }, "unpipe": { "version": "1.0.0", @@ -27620,6 +12367,12 @@ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true } } }, @@ -27638,6 +12391,50 @@ "listenercount": "~1.0.1", "readable-stream": "~2.3.6", "setimmediate": "~1.0.4" + }, + "dependencies": { + "bluebird": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", + "integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "upath": { @@ -27646,10 +12443,19 @@ "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", "dev": true }, + "upper-case-first": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz", + "integrity": "sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==", + "dev": true, + "requires": { + "tslib": "^2.0.3" + } + }, "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "requires": { "punycode": "^2.1.0" @@ -27702,6 +12508,12 @@ } } }, + "util-arity": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/util-arity/-/util-arity-1.1.0.tgz", + "integrity": "sha1-WdAa8f2z/t4KxOYysKtfbOl8kzA=", + "dev": true + }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -27714,15 +12526,15 @@ "dev": true }, "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true }, "v8-compile-cache": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", - "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, "v8flags": { @@ -27751,20 +12563,28 @@ "dev": true }, "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", "dev": true, "requires": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", "extsprintf": "^1.2.0" + }, + "dependencies": { + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + } } }, "vinyl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", - "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz", + "integrity": "sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==", "dev": true, "requires": { "clone": "^2.1.1", @@ -27808,6 +12628,44 @@ "value-or-function": "^3.0.0", "vinyl": "^2.0.0", "vinyl-sourcemap": "^1.1.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "vinyl-sourcemap": { @@ -27859,6 +12717,11 @@ "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", "dev": true }, + "vm2": { + "version": "3.9.5", + "resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.5.tgz", + "integrity": "sha512-LuCAHZN75H9tdrAiLFf030oW7nJV5xwNMuk1ymOZwopmuK3d2H4L1Kv4+GFHgarKiLfXXLFU+7LDABHnwOkWng==" + }, "void-elements": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", @@ -27866,21 +12729,21 @@ "dev": true }, "watchpack": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", - "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", + "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", "dev": true, "requires": { "chokidar": "^3.4.1", "graceful-fs": "^4.1.2", "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.0" + "watchpack-chokidar2": "^2.0.1" }, "dependencies": { "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, "optional": true, "requires": { @@ -27889,9 +12752,9 @@ } }, "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", "dev": true, "optional": true }, @@ -27906,20 +12769,20 @@ } }, "chokidar": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", - "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", + "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", "dev": true, "optional": true, "requires": { - "anymatch": "~3.1.1", + "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" + "readdirp": "~3.6.0" } }, "fill-range": { @@ -27933,16 +12796,16 @@ } }, "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, "optional": true }, "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "optional": true, "requires": { @@ -27967,9 +12830,9 @@ "optional": true }, "readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "optional": true, "requires": { @@ -27989,43 +12852,25 @@ } }, "watchpack-chokidar2": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", - "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", + "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", "dev": true, "optional": true, "requires": { "chokidar": "^2.1.8" } }, - "webcrypto-core": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/webcrypto-core/-/webcrypto-core-1.1.2.tgz", - "integrity": "sha512-LxM/dTcXr/ZnwwKLox0tGEOIqvP7KIJ4Hk/fFPX20tr1EgqTmpEFZinmu4FzoGVbs6e4jI1priQKCDrOBD3L6w==", - "requires": { - "@peculiar/asn1-schema": "^2.0.1", - "@peculiar/json-schema": "^1.1.10", - "asn1js": "^2.0.26", - "pvtsutils": "^1.0.10", - "tslib": "^1.11.2" - }, - "dependencies": { - "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" - } - } - }, - "webcrypto-shim": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/webcrypto-shim/-/webcrypto-shim-0.1.6.tgz", - "integrity": "sha512-0o612s3S5z3IkDSRghIwd3Ul4X8NRmmZDpt6PWGI9gSM+nygVvrfzGjhIh4vwzlOJxYxS0fcFD1wh3yznuVzFg==" + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", + "dev": true }, "webpack": { - "version": "4.44.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", - "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", + "version": "4.46.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", + "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", @@ -28036,7 +12881,7 @@ "ajv": "^6.10.2", "ajv-keywords": "^3.4.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.3.0", + "enhanced-resolve": "^4.5.0", "eslint-scope": "^4.0.3", "json-parse-better-errors": "^1.0.2", "loader-runner": "^2.4.0", @@ -28054,9 +12899,9 @@ }, "dependencies": { "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", "dev": true }, "eslint-scope": { @@ -28083,9 +12928,9 @@ } }, "webpack-dev-middleware": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz", - "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==", + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz", + "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==", "dev": true, "requires": { "memory-fs": "^0.4.1", @@ -28093,14 +12938,6 @@ "mkdirp": "^0.5.1", "range-parser": "^1.2.1", "webpack-log": "^2.0.0" - }, - "dependencies": { - "mime": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", - "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", - "dev": true - } } }, "webpack-log": { @@ -28118,6 +12955,12 @@ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", "dev": true + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true } } }, @@ -28148,6 +12991,16 @@ "webpack": "^4.26.1" } }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dev": true, + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -28157,6 +13010,19 @@ "isexe": "^2.0.0" } }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, "which-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", @@ -28170,6 +13036,39 @@ "dev": true, "requires": { "string-width": "^1.0.2 || 2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } } }, "window-size": { @@ -28184,9 +13083,9 @@ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" }, "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", "dev": true }, "worker-farm": { @@ -28206,6 +13105,43 @@ "requires": { "string-width": "^1.0.1", "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } } }, "wrapper-webpack-plugin": { @@ -28232,28 +13168,16 @@ "mkdirp": "^0.5.1" } }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, "ws": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz", - "integrity": "sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==", + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", "dev": true }, "xmlhttprequest-ssl": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", - "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz", + "integrity": "sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q==", "dev": true }, "xregexp": { @@ -28268,20 +13192,20 @@ "dev": true }, "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", "dev": true }, "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yargs": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz", - "integrity": "sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.2.tgz", + "integrity": "sha512-ZEjj/dQYQy0Zx0lgLMLR8QuaqTihnxirir7EwUHp1Axq4e3+k8jXU5K0VLbNvedv1f4EWtBonDIZm0NUr+jCcA==", "dev": true, "requires": { "camelcase": "^3.0.0", @@ -28296,94 +13220,50 @@ "string-width": "^1.0.2", "which-module": "^1.0.0", "y18n": "^3.2.1", - "yargs-parser": "5.0.0-security.0" + "yargs-parser": "^5.0.1" }, "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" + "number-is-nan": "^1.0.0" } }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "is-utf8": "^0.2.0" + "ansi-regex": "^2.0.0" } } } }, "yargs-parser": { - "version": "5.0.0-security.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz", - "integrity": "sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.1.tgz", + "integrity": "sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA==", "dev": true, "requires": { "camelcase": "^3.0.0", @@ -28402,9 +13282,9 @@ }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true }, "camelcase": { @@ -28486,9 +13366,9 @@ } }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, "yargs": { diff --git a/package.json b/package.json index e757287f1..0a350aab7 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,11 @@ { "name": "pubnub", - "version": "4.32.1", + "version": "5.0.0", "author": "PubNub ", "description": "Publish & Subscribe Real-time Messaging with PubNub", "bin": {}, "scripts": { - "clean": "rimraf lib dist coverage upload", + "clean": "rimraf lib dist upload", "build": "gulp compile", "lint": "eslint \"src/**/*\" --config .eslintrc.yml", "test:node": "mocha --config .mocharc.yml", @@ -14,8 +14,13 @@ "test:feature:fileupload:web": "karma start karma/chrome.config.js test/feature/file_upload.web.test.js", "test:crypto:node": "mocha --no-config --require test/setup.js --reporter spec test/crypto/node.test.js", "test:crypto:web": "karma start karma/chrome.config.js test/crypto/web.test.js", - "coverage": "nyc npm run test:node", - "codecov": "cat coverage/lcov.info | codecov" + "contract:refresh": "rimraf dist/contract && git clone --branch master git@github.com:pubnub/service-contract-mock.git dist/contract && npm install --prefix dist/contract && npm run refresh-files --prefix dist/contract", + "contract:server": "npm start --prefix dist/contract consumer", + "contract:build": "cd test/contract && tsc", + "contract:test": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags 'not @na=js and not @beta'", + "contract:test-beta": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags 'not @na=js and @beta'", + "contract:test-access": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags '@featureSet=access and not @na=js and not @beta'", + "contract:test-access-beta": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags '@featureSet=access and not @na=js and @beta'" }, "main": "./lib/node/index.js", "react-native": "./lib/react_native/index.js", @@ -38,13 +43,14 @@ ], "dependencies": { "@babel/runtime": "^7.10.5", + "@tsconfig/node12": "^1.0.9", "agentkeepalive": "^3.5.2", + "buffer": "^6.0.3", "cbor-js": "^0.1.0", "cbor-sync": "^1.0.4", - "isomorphic-webcrypto": "^2.3.6", "lil-uuid": "^0.1.1", - "superagent": "^3.8.1", - "superagent-proxy": "^2.0.0" + "superagent": "^6.1.0", + "superagent-proxy": "^3.0.0" }, "noAnalyze": false, "devDependencies": { @@ -56,14 +62,16 @@ "@babel/plugin-transform-modules-commonjs": "^7.7.5", "@babel/plugin-transform-runtime": "^7.10.5", "@babel/polyfill": "^7.8.7", - "@babel/preset-env": "^7.7.7", + "@babel/preset-env": "^7.16.0", "@babel/register": "^7.7.7", + "@cucumber/cucumber": "^7.3.1", "babel-eslint": "^10.0.3", "babel-loader": "^8.0.6", "babel-plugin-add-module-exports": "^1.0.2", "chai": "^4.2.0", "chai-as-promised": "^7.1.1", "chai-nock": "^1.2.0", + "es6-shim": "^0.35.6", "eslint-config-airbnb": "^17.1.1", "eslint-plugin-flowtype": "^3.13.0", "eslint-plugin-import": "^2.19.1", @@ -75,7 +83,6 @@ "gulp-eslint": "^6.0.0", "gulp-exec": "^4.0.0", "gulp-gzip": "^1.4.2", - "gulp-istanbul": "git+https://github.com/raipubnub/gulp-istanbul.git#gulp4", "gulp-mocha": "^7.0.2", "gulp-rename": "^1.4.0", "gulp-sourcemaps": "^2.6.5", @@ -90,7 +97,6 @@ "karma-babel-preprocessor": "^8.0.1", "karma-chai": "^0.1.0", "karma-chrome-launcher": "^3.1.0", - "karma-coverage": "^2.0.2", "karma-mocha": "^2.0.1", "karma-phantomjs-launcher": "^1.0.4", "karma-sinon-chai": "^2.0.2", @@ -99,8 +105,7 @@ "karma-webpack": "^4.0.2", "mocha": "^7.1.2", "nock": "^9.6.1", - "node-fetch": "^1.7.3", - "nyc": "^15.0.1", + "node-fetch": "^2.6.1", "phantomjs-prebuilt": "^2.1.16", "puppeteer": "^5.2.0", "rimraf": "^3.0.2", @@ -108,6 +113,7 @@ "sinon-chai": "^3.3.0", "stats-webpack-plugin": "^0.7.0", "terser": "^4.8.0", + "typescript": "^4.3.5", "uglify-js": "^2.8.26", "underscore": "^1.9.2", "webpack": "^4.41.2", diff --git a/project1/.pubnub.yml b/project1/.pubnub.yml deleted file mode 100644 index aa704ee66..000000000 --- a/project1/.pubnub.yml +++ /dev/null @@ -1,1050 +0,0 @@ ---- -changelog: - - - changes: - - - text: "Fixes issue of signature does not match error with `getAllUUIDMetadata` call." - type: bug - - - text: "Error handling with global hereNow call to provide detailed error message when feature not enabled." - type: bug - date: 2021-05-26 - version: v4.32.1 - - - changes: - - - text: "Add grantToken support for channel and group resources." - type: feature - date: 2021-04-28 - version: v4.32.0 - - - changes: - - - text: "BREAKING CHANGE - Set `true` for `useRandomIVs` by default." - type: improvement - - - text: "Fix `channel` and `uuid` which is used with: files API, Objects and presence." - type: bug - date: 2021-04-22 - version: v4.31.0 - - - changes: - - - text: "Revert v4.300." - type: bug - date: 2021-03-30 - version: v4.30.1 - - - changes: - - - text: "Set default increased limit for message count of History v3 api single call." - type: improvement - date: 2021-01-11 - version: v4.29.11 - - - changes: - - - text: "Fixes issue of missing more field in fetch messages response." - type: bug - date: 2020-11-30 - version: v4.29.10 - - - changes: - - - text: "Adds timetoken of file publish in the sendFile response." - type: feature - - - text: "Fixes getFileUrl so that it includes auth and signature query params." - type: bug - - - text: "Fixes downloadFile method to generate correct signature." - type: bug - date: 2020-10-05 - version: v4.29.9 - - - changes: - - - text: "Fixes compatibility with @sentry/react-native library." - type: bug - date: 2020-09-21 - version: v4.29.8 - - - changes: - - - text: "Added support for managing permissions of objects v2 while applying PAM v2." - type: feature - - - text: "Fix uncaught promise exception in subscription manager caused by error in user code inside of subscription handlers. Error will be handled and returned to status handler with PNUnknownCategory category where errorData can be examined." - type: bug - date: 2020-09-14 - version: v4.29.7 - - - changes: - - - text: "Add file download to Blob in React Native." - type: feature - date: 2020-09-08 - version: v4.29.6 - - - changes: - - - text: "Add support for file upload via file URI in React Native." - type: feature - - - text: "Fix file download to ArrayBuffer in React Native." - type: bug - date: 2020-09-01 - version: v4.29.5 - - - changes: - - - text: "Fixes an artifact where ract-native entrypoint didnt use ssl." - type: bug - date: 2020-08-14 - version: v4.29.4 - - - changes: - - - text: "Fixes an issue with react-native entrypoint where interfaces to File and Crypto are not included in the build." - type: bug - - - text: "Fixes the ability to sendByPost in publish." - type: bug - - - text: "Fixes an issue where getFileUrl returned and URI without a protocol." - type: bug - - - text: "Fixes an issue where storeInHistory false would not include the param." - type: bug - - - text: "Removes mime types dependency since that will be handled by the server." - type: bug - - - text: "Adds userMetadata to file event listener." - type: bug - date: 2020-08-14 - version: v4.29.3 - - - changes: - - - text: "Move @babel/runtime to runtime dependency." - type: bug - date: 2020-08-05 - version: v4.29.2 - - - changes: - - - text: "Release 4.291." - type: bug - date: 2020-08-04 - version: v4.29.1 - - - changes: - - - text: "Allows to upload files to channels, download them with optional encryption support." - type: feature - - - text: "Allows to enable random IVs when encrypting messages." - type: feature - - - text: "Fixes a bug with PAM and Objects v2." - type: bug - date: 2020-08-04 - version: v4.29.0 - - - changes: - - - text: "Fixes issue of high cpu usage when heartbeat interval is not set." - type: bug - date: 2020-07-15 - version: v4.28.4 - - - changes: - - - text: "getAllChannelMetadata no longer includes customFields by default." - type: bug - - - text: "removeChannelMetadata no longer hits wrong endpoint." - type: bug - - - text: "getMemberships and getChannelMembers now includes customFields by default." - type: bug - - - text: "getAllUUIDMetadata now includes totalCount by default." - type: bug - - - text: "getAllUUIDMetadata no longer includes limit by default." - type: bug - - - text: "all membership and channel members methods now accept a callback." - type: bug - - - text: "all objects v2 methods are properly typed now to include an optional callback." - type: bug - - - text: "getMemberships and getChannelMembers now include totalCount, prev, and next in the response." - type: bug - date: 2020-07-15 - version: v4.28.3 - - - changes: - - - text: "Fixes a bug in removeChannelMembers and removeMemberships." - type: bug - date: 2020-06-29 - version: v4.28.2 - - - changes: - - - text: "Ensure proper bytes padding in ArrayBuffer prepared for `cbor-js` library." - type: bug - date: 2020-06-19 - version: v4.28.1 - - - changes: - - - text: "Added Objects v2 API and deprecated Objects v1 API." - type: feature - date: 2020-06-03 - version: v4.28.0 - - - changes: - - - text: "Added support for delete permission in the grant method of accesses manager." - type: feature - date: 2020-04-24 - version: v4.27.6 - - - changes: - - - text: "Update READMEmd CDN links during deployment." - type: bug - - - text: "Fix pre-compiled scripts update." - type: bug - date: 2020-04-21 - version: v4.27.5 - - - changes: - - - text: "Add telemetry (latency) for all existing operation types." - type: feature - - - text: "Replace `cbor-sync` module with `cbor-js` for client implementation for web to fix compatibility with Salesforce Lightning Web Components." - type: bug - date: 2020-03-18 - version: v4.27.4 - - - changes: - - - text: "Support for APNS2 Push API" - type: improvement - - - text: "Restore functionality to set heartbeat interval when presence timeout is set below the default" - type: bug - date: 2020-01-06 - version: v4.27.3 - - - changes: - - - text: "disable presence heartbeats by default" - type: bug - date: 2019-12-05 - version: v4.27.2 - - - changes: - - - text: "Make changes in fetch_messages endpoint to move message actions (if any) for message from 'data' to 'actions' property (old 'data' will be in place for few updates to not break existing clients)." - type: bug - - - text: "fix PAMv3 tests mocked signature" - type: improvement - - - text: "fix lint warnings for tests and code" - type: improvement - - - text: "fix gulp build so that failures in test and lint will trigger failure in travis" - type: improvement - date: 2019-11-20 - version: v4.27.1 - - - changes: - - - text: "Add Message Actions API support which allow to: add, remove and fetch previously added actions" - type: feature - - - text: "Add new arguments to fetch messages function which allow to fetch previously added actions and message metadata" - type: feature - - - text: "Add new handler which can be used to track message actions addition / removal events" - type: feature - date: 2019-10-08 - version: v4.27.0 - - - changes: - - - text: "Ensures history response is an array before iterating it" - type: bug - date: 2019-09-27 - version: v4.26.1 - - - changes: - - - text: "Add support for auth tokens with Objects for Users, Spaces and Memberships" - type: bug - date: 2019-09-20 - version: v4.26.0 - - - changes: - - - text: "Fix issue with subdomains ending in 'ps'" - type: bug - date: 2019-09-03 - version: v4.25.2 - - - changes: - - - text: "Fix titanium build to support recent version" - type: bug - date: 2019-08-23 - version: v4.25.1 - - - changes: - - - text: "Add Objects support for Users, Spaces and Memberships" - type: improvement - date: 2019-08-16 - version: v4.25.0 - - - changes: - - - text: "Fix regression: 'PubNub is not a constructor' in Node.js" - type: bug - date: 2019-08-09 - version: v4.24.6 - - - changes: - - - text: "Add Signals support" - type: improvement - date: 2019-08-07 - version: v4.24.5 - - - changes: - - - text: "Add minimum presence timeout" - type: improvement - date: 2019-07-26 - version: v4.24.4 - - - changes: - - - text: "Added support to enable heartbeat requests while subscribe when heartbeat interval is provided" - type: improvement - date: 2019-06-19 - version: v4.24.3 - - - changes: - - - text: "Added try catch block to handle exception for JSON.parse function" - type: improvement - - - text: "Updated default origin to ps.pndsn.com" - type: improvement - date: 2019-06-13 - version: v4.24.2 - - - changes: - - - text: "Maintains the state when the presence heartbeat is explicitly disabled" - type: improvement - date: 2019-06-06 - version: v4.24.1 - - - changes: - - - text: "Disables the presence heartbeat by default when a subscribe is called. Presence heartbeat can still be enabled explicitly." - type: improvement - date: 2019-05-09 - version: v4.24.0 - - - changes: - - - text: "The `timetoken` parameter is deprecated in the `message-counts` function. Use 'channelTimetokens' instead, pass one value in 'channelTimetokens' to achieve the same results." - type: improvement - date: 2019-03-14 - version: v4.23.0 - - - changes: - - - text: "message counts" - type: feature - - - text: "use null instead of '' for NativeScript networking module" - type: improvement - date: 2019-03-04 - version: v4.22.0 - - - changes: - - - text: "update dependencies" - type: improvement - - - text: "fix flow process on nativescript" - type: improvement - date: 2018-12-20 - version: v4.21.7 - - - changes: - - - text: "fix POST for nativescript adapter over android" - type: bug - date: 2018-10-04 - version: v4.21.6 - - - changes: - - - text: "update dependencies" - type: improvement - date: 2018-08-06 - version: v4.21.5 - - - changes: - - - text: "return error parameter into errorData when logVerbosity = true" - type: improvement - date: 2018-08-04 - version: v4.21.4 - - - changes: - - - text: "update dependencies" - type: improvement - date: 2018-07-10 - version: v4.21.3 - - - changes: - - - text: "add stringifiedTimeToken into the fetch endpoint" - type: improvement - date: 2018-06-12 - version: v4.21.2 - - - changes: - - - text: "avoid security vulnerability in growl < 1.10.0" - type: bug - date: 2018-06-08 - version: v4.21.1 - - - changes: - - - text: "subscribe without using the heartbeat loop with flag withHeartbeats = false" - type: feature - date: 2018-06-06 - version: v4.21.0 - - - changes: - - - text: "fix timetoken announces" - type: bug - - - text: "categorize ETIMEDOUT errors as PNNetworkIssuesCategory" - type: improvement - date: 2018-04-24 - version: v4.20.3 - - - changes: - - - text: "fix signature to delete message" - type: bug - date: 2018-02-28 - version: v4.20.2 - - - changes: - - - text: "allow set ssl to false for nodejs" - type: improvement - date: 2018-01-29 - version: v4.20.1 - - - changes: - - - text: "add support for heartbeat sending without subscription via .presence()" - type: feature - - - text: "add method setProxy for Nodejs" - type: feature - - - text: "set ssl to true for nodejs by default" - type: feature - date: 2018-01-04 - version: v4.20.0 - - - changes: - - - text: "add support for Native Script" - type: feature - - - text: "add missing flow types" - type: improvement - - - text: "upgrade superagent to ^3.8.1" - type: improvement - date: 2017-12-05 - version: v4.19.0 - - - changes: - - - text: "keepAlive is now initialized globally instead of per-call, allowing better connection reuse" - type: improvement - - - text: "added sdkName configuration parameter which allow completely override pnsdk in request query" - type: feature - date: 2017-11-20 - version: v4.18.0 - - - changes: - - - text: "allow disabling of heartbeats by passing 0 during initialization." - type: improvement - date: 2017-10-19 - version: v4.17.0 - - - changes: - - - text: "fix UUID library to work in browsers." - type: bug - date: 2017-10-19 - version: v4.16.2 - - - changes: - - - text: "fix incorrect packaging of lil-uuid and uuid" - type: bug - date: 2017-10-12 - version: v4.16.1 - - - changes: - - - text: "support delete messages from history" - type: feature - - - text: "swap uuid generator with support for IE9 and IE10" - type: improvement - date: 2017-10-10 - version: v4.16.0 - - - changes: - - - text: "fix typo to enable http keep alive support" - type: improvement - date: 2017-08-21 - version: v4.15.1 - - - changes: - - - text: "Support optional message deduping via the dedupeOnSubscribe config" - type: improvement - - - text: "Do not issue leave events if the channel mix is empty." - type: improvement - date: 2017-08-21 - version: v4.15.0 - - - changes: - - - text: "Allow disable of heartbeats by passing heartbeatInterval = 0" - type: improvement - date: 2017-08-14 - version: v4.14.0 - - - changes: - - - text: "patch up 503 reporting" - type: improvement - - - text: "fix issue with where now and invalid server response" - type: improvement - - - text: "fix issue with here now and invalid server response" - type: improvement - date: 2017-07-27 - version: v4.13.0 - - - changes: - - - text: "fix issue of net with android for titanium" - type: improvement - - - text: "add additional hooks for connectivity" - type: feature - - - text: "add auto network detection" - type: feature - date: 2017-06-19 - version: v4.12.0 - - - changes: - - - text: "fix issue of net with android for react-native" - type: improvement - date: 2017-05-23 - version: v4.10.0 - - - changes: - - - text: "metadata is now passed on message envelope" - type: feature - date: ~ - version: v4.9.2 - - - changes: - - - text: "add support custom encryption and decryption" - type: feature - date: 2017-05-18 - version: v4.9.1 - - - changes: - - - text: "integrate fetch for react-native SDK" - type: feature - - - text: "announce when subscription get reactivated" - type: improvement - - - text: "stop heartbeats for responses with status PNBadRequestCategory" - type: improvement - date: ~ - version: v4.9.0 - - - changes: - - - text: "allow manual control over network state via listenToBrowserNetworkEvents" - type: feature - date: 2017-04-06 - version: v4.8.0 - - - changes: - - - text: "add support for titanium SDK" - type: feature - - - text: "fix support for react-native SDK" - type: improvement - - - text: "add validation for web distribution" - type: improvement - date: 2017-03-30 - version: v4.7.0 - - - changes: - - - text: "add support for presence deltas." - type: feature - - - text: "keep track of new and upcoming timetokens on status messages" - type: feature - date: 2017-03-27 - version: v4.6.0 - - - changes: - - - text: "add optional support for keepAlive by passing the keepAlive config into the init logic" - type: feature - date: 2017-03-08 - version: v4.5.0 - - - changes: - - - text: "add guard to check for channel or channel group on state setting" - type: improvement - - - text: "add guard to check for publish, secret keys when performing a grant" - type: improvement - date: 2017-02-14 - version: v4.4.4 - - - changes: - - - text: "downgrade superagent to v2; add new entry point for react native." - type: improvement - date: 2017-02-07 - version: v4.4.3 - - - changes: - - - text: "adjust compilation for webpack based compilations" - type: improvement - date: 2017-01-31 - version: v4.4.2 - - - changes: - - - text: "proxy support for node" - type: improvement - date: 2017-01-31 - version: v4.4.1 - - - changes: - - - text: "upgrade dependencies; fix up linting." - type: improvement - - - text: "handle network outage cases for correct reporting." - type: improvement - date: 2017-01-23 - version: v4.4.0 - - - changes: - - - text: "bump version after v3 release." - type: improvement - date: 2016-12-16 - version: v4.3.3 - - - changes: - - - text: "removes bundling of package.json into the dist file" - type: improvement - date: 2016-11-28 - version: v4.3.2 - - - changes: - - - text: "SDK now supports the restore config to allow message catch-up" - type: improvement - date: 2016-11-22 - version: v4.3.1 - - - changes: - - - text: "bulk history exposed via pubnub.fetchMessages" - type: improvement - - - text: "publish supports custom ttl interval" - type: improvement - - - text: "v2 for audit and grant; no consumer facing changes." - type: improvement - - - text: "fixes for param validation on usage of promises" - type: improvement - date: 2016-11-18 - version: v4.3.0 - - - changes: - - - text: "SDK reports on the id of the publisher in the message" - type: improvement - date: 2016-11-04 - version: v4.2.5 - - - changes: - - - text: "Detection of support of promises improved." - type: improvement - date: 2016-11-01 - version: v4.2.4 - - - changes: - - - text: "Fixes on encoding of apostraphes." - type: improvement - date: 2016-11-01 - version: v4.2.3 - - - changes: - - - text: "Add promise support on setState operation (@jskrzypek)" - type: improvement - - - text: "Add hooks to stop polling time when the number of subscriptions drops to 0 (@jasonpoe)" - type: improvement - date: 2016-10-31 - version: v4.2.2 - - - changes: - - - text: "Encode signatures to avoid sending restricted characters" - type: improvement - date: 2016-10-30 - version: v4.2.1 - - - changes: - - - text: "Add optional support for promises on all endpoints." - type: improvement - - - text: "History always returns timetokens in the payloads." - type: improvement - - - text: "Optionally, if queue size is set, send status on queue size threshold" - type: improvement - date: 2016-10-26 - version: v4.2.0 - - - changes: - - - text: "Fix state setting for channels with reserved tags." - type: improvement - date: 2016-10-17 - version: v4.1.1 - - - changes: - - - text: "Reset timetoken when all unsubscribes happen" - type: improvement - - - text: "Sign requests when a a secret key is passed" - type: improvement - date: 2016-10-13 - version: v4.1.0 - - - changes: - - - text: "Propogate status events to the status callback on subscribe operations." - type: improvement - date: 2016-10-05 - version: v4.0.13 - - - changes: - - - text: "affectedChannels and affectedChannelGroups are now populated on subscribe / unsubscribe events" - type: improvement - date: 2016-10-03 - version: v4.0.12 - - - changes: - - - text: "Dependency upgrades" - type: improvement - date: 2016-09-27 - version: v4.0.11 - - - changes: - - - text: "Expose decryption and encryption as a global" - type: improvement - date: 2016-09-14 - version: v4.0.10 - - - changes: - - - text: "Channel / subscription items are populated in" - type: improvement - - - text: "Constants for operation and category are exposed on global object" - type: improvement - date: 2016-09-09 - version: v4.0.9 - - - changes: - - - text: "Re-publish of v4.0.7" - type: improvement - date: 2016-08-25 - version: v4.0.8 - - - changes: - - - text: "Dependency upgrades" - type: improvement - - - text: "Try..catch wrapped around localStorage for iframe compliance" - type: improvement - date: 2016-08-25 - version: v4.0.7 - - - changes: - - - text: "Adjustment of reconnection policies for web distributions." - type: improvement - - - text: "PNSDK support for partner identification" - type: improvement - date: 2016-08-18 - version: v4.0.6 - - - changes: - - - text: "Stop exposing .babelrc which causes unpredictable behavior on react native." - type: improvement - date: 2016-08-10 - version: v4.0.5 - - - changes: - - - text: "Adjust handling of presence payloads for state settings." - type: improvement - - - text: "Exposing generateUUID method to create uuids." - type: feature - - - text: "Triggering disconnect, reconnect events on Web distributions." - type: improvement - - - text: "React Native adjustments to package.json information." - type: improvement - date: 2016-08-09 - version: v4.0.4 - - - changes: - - - text: "Global Here Now parsing adjustments." - type: improvement - date: 2016-08-07 - version: v4.0.3 - - - changes: - - - text: "Adjustments to internet disconnects on node." - type: improvement - date: 2016-08-03 - version: v4.0.2 - - - changes: - - - text: "Fixes to avoid double encoding on JSON payloads." - type: bug - date: 2016-08-01 - version: v4.0.1 - - - changes: - - - text: "New iteration of JS / Node SDK family" - type: feature - version: v4.0.0 -features: - access: - - ACCESS-GRANT - - ACCESS-SECRET-KEY-ALL-ACCESS - - ACCESS-GRANT-MANAGE - - ACCESS-GRANT-DELETE - - ACCESS-TOKEN-MANAGEMENT - - ACCESS-OBJECTS-V2-MANAGEMENT - channel-groups: - - CHANNEL-GROUPS-ADD-CHANNELS - - CHANNEL-GROUPS-REMOVE-CHANNELS - - CHANNEL-GROUPS-REMOVE-GROUPS - - CHANNEL-GROUPS-LIST-CHANNELS-IN-GROUP - notify: - - REQUEST-MESSAGE-COUNT-EXCEEDED - presence: - - PRESENCE-HERE-NOW - - PRESENCE-WHERE-NOW - - PRESENCE-SET-STATE - - PRESENCE-GET-STATE - - PRESENCE-HEARTBEAT - publish: - - PUBLISH-STORE-FLAG - - PUBLISH-RAW-JSON - - PUBLISH-WITH-METADATA - - PUBLISH-GET - - PUBLISH-POST - - PUBLISH-ASYNC - - PUBLISH-FIRE - - PUBLISH-REPLICATION-FLAG - - PUBLISH-MESSAGE-TTL - push: - - PUSH-ADD-DEVICE-TO-CHANNELS - - PUSH-REMOVE-DEVICE-FROM-CHANNELS - - PUSH-LIST-CHANNELS-FROM-DEVICE - - PUSH-REMOVE-DEVICE - - PUSH-TYPE-APNS - - PUSH-TYPE-APNS2 - - PUSH-TYPE-FCM - - PUSH-TYPE-MPNS - storage: - - STORAGE-REVERSE - - STORAGE-INCLUDE-TIMETOKEN - - STORAGE-START-END - - STORAGE-COUNT - - STORAGE-DELETE-MESSAGES - - STORAGE-FETCH-MESSAGES - - STORAGE-MESSAGE-COUNT - - STORAGE-HISTORY-WITH-META - - STORAGE-FETCH-WITH-META - - STORAGE-FETCH-WITH-MESSAGE-ACTIONS - subscribe: - - SUBSCRIBE-CHANNELS - - SUBSCRIBE-CHANNEL-GROUPS - - SUBSCRIBE-PRESENCE-CHANNELS - - SUBSCRIBE-PRESENCE-CHANNELS-GROUPS - - SUBSCRIBE-WITH-TIMETOKEN - - SUBSCRIBE-WILDCARD - - SUBSCRIBE-FILTER-EXPRESSION - - SUBSCRIBE-PUBLISHER-UUID - - SUBSCRIBE-WITH-USERSTATE - - SUBSCRIBE-PUBSUB-V2 - - SUBSCRIBE-SIGNAL-LISTENER - - SUBSCRIBE-USER-LISTENER - - SUBSCRIBE-SPACE-LISTENER - - SUBSCRIBE-MEMBERSHIP-LISTENER - - SUBSCRIBE-MESSAGE-ACTIONS-LISTENER - unsubscribe: - - UNSUBSCRIBE-ALL - - UNSUBSCRIBE-SUPPRESS-LEAVE-EVENTS - signal: - - SIGNAL-SEND - objects: - - OBJECTS-GET-ALL-UUID-METADATA - - OBJECTS-GET-UUID-METADATA - - OBJECTS-SET-UUID-METADATA - - OBJECTS-REMOVE-UUID-METADATA - - OBJECTS-GET-ALL-CHANNEL-METADATA - - OBJECTS-GET-CHANNEL-METADATA - - OBJECTS-SET-CHANNEL-METADATA - - OBJECTS-REMOVE-CHANNEL-METADATA - - OBJECTS-GET-MEMBERSHIPS-V2 - - OBJECTS-SET-MEMBERSHIPS-V2 - - OBJECTS-REMOVE-MEMBERSHIPS-V2 - - OBJECTS-GET-CHANNEL-MEMBERS-V2 - - OBJECTS-SET-CHANNEL-MEMBERS-V2 - - OBJECTS-REMOVE-CHANNEL-MEMBERS-V2 - - OBJECTS-MANAGE-MEMBERSHIPS-V2 - - OBJECTS-MANAGE-CHANNEL-MEMBERS-V2 - message-actions: - - MESSAGE-ACTIONS-GET - - MESSAGE-ACTIONS-ADD - - MESSAGE-ACTIONS-REMOVE - files: - - FILES-SEND-FILE - - FILES-LIST-FILES - - FILES-GET-FILE-URL - - FILES-DELETE-FILE - - FILES-DOWNLOAD-FILE - time: - - TIME-TIME - others: - - TELEMETRY - - CREATE-PUSH-PAYLOAD -files: - - dist/web/pubnub.js - - dist/web/pubnub.min.js -name: javascript -schema: 1 -scm: github.com/pubnub/javascript -supported-platforms: - - - frameworks: - - "Angular JS" - - "Angular 2 and up" - platforms: - - "Safari 10 and up" - - "Mozilla Firefox 51 and up" - - "Google Chrome 56 and up" - - "Opera 41 and up" - - "IE 9 and up (include a Promise polyfill for pubnub >= 4.29.0)" - - "Microsoft Edge 38 and up" - version: "Pubnub Javascript for Web" - - - editors: - - "4 and up" - platforms: - - "OSX 10.12 and up" - - "Ubuntu 14.04 and up" - - "Windows 7 and up" - version: "Pubnub Javascript for Node" -version: "4.32.1" diff --git a/project1/CHANGELOG.md b/project1/CHANGELOG.md deleted file mode 100644 index c3b49ccc5..000000000 --- a/project1/CHANGELOG.md +++ /dev/null @@ -1,1191 +0,0 @@ -## [v4.32.1](https://github.com/pubnub/javascript/releases/tag/v4.32.1) -May-26-2021 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.32.0...v4.32.1) - -- 🐛 Fixes issue of signature does not match error with `getAllUUIDMetadata` call. -- 🐛 Error handling with global hereNow call to provide detailed error message when feature not enabled. - -## [v4.32.0](https://github.com/pubnub/javascript/releases/tag/v4.32.0) -April-28-2021 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.31.0...v4.32.0) - -- 🌟️ Add grantToken support for channel and group resources. - -## [v4.31.0](https://github.com/pubnub/javascript/releases/tag/v4.31.0) -April-22-2021 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.30.1...v4.31.0) - -- ⭐️️ **BREAKING CHANGE** - Set `true` for `useRandomIVs` by default. -- 🐛 Fix `channel` and `uuid` which is used with: files API, Objects and presence. - -## [v4.30.1](https://github.com/pubnub/javascript/releases/tag/v4.30.1) -March-30-2021 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.30.0...v4.30.1) - -- 🐛 Revert v4.300. - -## [v4.29.11](https://github.com/pubnub/javascript/releases/tag/v4.29.11) -January-11-2021 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.10...v4.29.11) - -- ⭐️️ Set default increased limit for message count of History v3 api single call. - -## [v4.29.10](https://github.com/pubnub/javascript/releases/tag/v4.29.10) -November-30-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.9...v4.29.10) - -- 🐛 Fixes issue of missing more field in fetch messages response. - -## [v4.29.9](https://github.com/pubnub/javascript/releases/tag/v4.29.9) -October-05-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.8...v4.29.9) - -- 🌟️ Adds timetoken of file publish in the sendFile response. -- 🐛 Fixes getFileUrl so that it includes auth and signature query params. -- 🐛 Fixes downloadFile method to generate correct signature. - -## [v4.29.8](https://github.com/pubnub/javascript/releases/tag/v4.29.8) -September-21-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.7...v4.29.8) - -- 🐛 Fixes compatibility with @sentry/react-native library. - -## [v4.29.7](https://github.com/pubnub/javascript/releases/tag/v4.29.7) -September-14-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.6...v4.29.7) - -- 🌟️ Added support for managing permissions of objects v2 while applying PAM v2. -- 🐛 Fix uncaught promise exception in subscription manager caused by error in user code inside of subscription handlers. Error will be handled and returned to status handler with PNUnknownCategory category where errorData can be examined. - -## [v4.29.6](https://github.com/pubnub/javascript/releases/tag/v4.29.6) -September-08-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.5...v4.29.6) - -- 🌟️ Add file download to Blob in React Native. - -## [v4.29.5](https://github.com/pubnub/javascript/releases/tag/v4.29.5) -September-01-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.4...v4.29.5) - -- 🌟️ Add support for file upload via file URI in React Native. -- 🐛 Fix file download to ArrayBuffer in React Native. - -## [v4.29.4](https://github.com/pubnub/javascript/releases/tag/v4.29.4) -August-14-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.3...v4.29.4) - -- 🐛 Fixes an artifact where ract-native entrypoint didnt use ssl. - -## [v4.29.3](https://github.com/pubnub/javascript/releases/tag/v4.29.3) -August-14-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.2...v4.29.3) - -- 🐛 Fixes an issue with react-native entrypoint where interfaces to File and Crypto are not included in the build. -- 🐛 Fixes the ability to sendByPost in publish. -- 🐛 Fixes an issue where getFileUrl returned and URI without a protocol. -- 🐛 Fixes an issue where storeInHistory false would not include the param. -- 🐛 Removes mime types dependency since that will be handled by the server. -- 🐛 Adds userMetadata to file event listener. - -## [v4.29.2](https://github.com/pubnub/javascript/releases/tag/v4.29.2) -August-05-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.1...v4.29.2) - -- 🐛 Move @babel/runtime to runtime dependency. - -## [v4.29.1](https://github.com/pubnub/javascript/releases/tag/v4.29.1) -August-04-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.29.0...v4.29.1) - -- 🐛 Release 4.291. - -## [v4.29.0](https://github.com/pubnub/javascript/releases/tag/v4.29.0) -August-04-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.28.4...v4.29.0) - -- 🌟️ Allows to upload files to channels, download them with optional encryption support. -- 🌟️ Allows to enable random IVs when encrypting messages. -- 🐛 Fixes a bug with PAM and Objects v2. - -## [v4.28.4](https://github.com/pubnub/javascript/releases/tag/v4.28.4) -July-15-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.28.3...v4.28.4) - -- 🐛 Fixes issue of high cpu usage when heartbeat interval is not set. - -## [v4.28.3](https://github.com/pubnub/javascript/releases/tag/v4.28.3) -July-15-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.28.2...v4.28.3) - -- 🐛 * getAllChannelMetadata no longer includes customFields by default, * removeChannelMetadata no longer hits wrong endpoint, * getMemberships and getChannelMembers now includes customFields by default, * getAllUUIDMetadata now includes totalCount by default, * getAllUUIDMetadata no longer includes limit by default, * all membership and channel members methods now accept a callback, * all objects v2 methods are properly typed now to include an optional callback, * getMemberships and getChannelMembers now include totalCount, prev, and next in the response. - -## [v4.28.2](https://github.com/pubnub/javascript/releases/tag/v4.28.2) -June-29-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.28.1...v4.28.2) - -- 🐛 Fixes a bug in removeChannelMembers and removeMemberships. - -## [v4.28.1](https://github.com/pubnub/javascript/releases/tag/v4.28.1) -June-19-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.28.0...v4.28.1) - -- 🐛 Ensure proper bytes padding in ArrayBuffer prepared for `cbor-js` library. - -## [v4.28.0](https://github.com/pubnub/javascript/releases/tag/v4.28.0) -June-03-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.27.6...v4.28.0) - -- 🌟️ Added Objects v2 API and deprecated Objects v1 API. - -## [v4.27.6](https://github.com/pubnub/javascript/releases/tag/v4.27.6) -April-24-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.27.5...v4.27.6) - -- 🌟️ Added support for delete permission in the grant method of accesses manager. -- ⭐️️ Added missing feature entries. Removed incorrect feature entries. - -## [v4.27.5](https://github.com/pubnub/javascript/releases/tag/v4.27.5) -April-21-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.27.4...v4.27.5) - -- 🐛 Update READMEmd CDN links during deployment. -- 🐛 Fix pre-compiled scripts update. - -## [v4.27.4](https://github.com/pubnub/javascript/releases/tag/v4.27.4) -March-18-2020 - -[Full Changelog](https://github.com/pubnub/javascript/compare/v4.27.3...v4.27.4) - -- 🌟️ Add telemetry (latency) for all existing operation types. -- 🐛 Replace `cbor-sync` module with `cbor-js` for client implementation for web to fix compatibility with Salesforce Lightning Web Components. - -## [v4.27.3](https://github.com/pubnub/javascript/tree/v4.27.3) - January-06-2020 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.27.2...v4.27.3) - - - -- ⭐ Support for APNS2 Push API -- ⭐ Restore functionality to set heartbeat interval when presence timeout is set below the default - - -## [v4.27.2](https://github.com/pubnub/javascript/tree/v4.27.2) - December-05-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.27.1...v4.27.2) - - - -- ⭐ disable presence heartbeats by default - - -## [v4.27.1](https://github.com/pubnub/javascript/tree/v4.27.1) - November-20-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.27.0...v4.27.1) - - - -- ⭐ Make changes in fetch_messages endpoint to move message actions (if any) for message from 'data' to 'actions' property (old 'data' will be in place for few updates to not break existing clients). -- ⭐ fix PAMv3 tests mocked signature -- ⭐ fix lint warnings for tests and code -- ⭐ fix gulp build so that failures in test and lint will trigger failure in travis - - -## [v4.27.0](https://github.com/pubnub/javascript/tree/v4.27.0) - October-08-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.26.1...v4.27.0) - - - -- ⭐ Add Message Actions API support which allow to: add, remove and fetch previously added action -- ⭐ Add new arguments to fetch messages function which allow to fetch previously added actions and message metadata -- ⭐ Add new handler which can be used to track message actions addition / removal events - - -## [v4.26.1](https://github.com/pubnub/javascript/tree/v4.26.1) - September-27-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.26.0...v4.26.1) - - - -- ⭐ Ensures history response is an array before iterating it - - - -## [v4.26.0](https://github.com/pubnub/javascript/tree/v4.26.0) - September-20-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.25.2...v4.26.0) - - - -- ⭐ Add support for auth tokens with Objects for Users, Spaces and Memberships - - - -## [v4.25.2](https://github.com/pubnub/javascript/tree/v4.25.2) - September-03-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.25.1...v4.25.2) - - - -- ⭐ Fix issue with subdomains ending in 'ps' - - - -## [v4.25.1](https://github.com/pubnub/javascript/tree/v4.25.1) - August-23-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.25.0...v4.25.1) - - - -- ⭐ Fix regression: Fix titanium build to support recent version - - - -## [v4.25.0](https://github.com/pubnub/javascript/tree/v4.25.0) - August-16-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.24.6...v4.25.0) - - - -- ⭐ Fix regression: Add Objects support for Users, Spaces and Memberships - - - -## [v4.24.6](https://github.com/pubnub/javascript/tree/v4.24.6) - August-09-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.24.5...v4.24.6) - - - -- ⭐ Fix regression: 'PubNub is not a constructor' in Node.js - - - -## [v4.24.5](https://github.com/pubnub/javascript/tree/v4.24.5) - August-07-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.24.4...v4.24.5) - - - -- ⭐ Add Signals support - - - -## [v4.24.4](https://github.com/pubnub/javascript/tree/v4.24.4) - July-26-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.24.0...v4.24.4) - - - -- ⭐ Add minimum presence timeout - - - -## [v4.24.3](https://github.com/pubnub/javascript/tree/v4.24.3) - June-19-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.24.0...v4.24.3) - - - -- ⭐ Added support to enable heartbeat requests while subscribe when heartbeat interval is provided - - - -## [v4.24.2](https://github.com/pubnub/javascript/tree/v4.24.2) - June-13-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.24.0...v4.24.2) - - - -- ⭐ Added try catch block to handle exception for JSON.parse function -- ⭐ Changed default origin to ps.pndsn.com - - - -## [v4.24.1](https://github.com/pubnub/javascript/tree/v4.24.1) - June-06-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.24.0...v4.24.1) - - - -- ⭐ Maintains the state when presence heartbeat is explicitly disabled - - - -## [v4.24.0](https://github.com/pubnub/javascript/tree/v4.24.0) - May-09-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.23.0...v4.24.0) - - - -- ⭐ Disables the presence heartbeat by default when a subscribe is called. Presence heartbeat can still be enabled explicitly. - - - -## [v4.23.0](https://github.com/pubnub/javascript/tree/v4.23.0) - March-14-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.22.0...v4.23.0) - - - -- ⭐ The `timetoken` parameter is deprecated in the `message-counts` function. Use `channelTimetokens` instead, pass one value in `channelTimetokens` to achieve the same results - - - -## [v4.22.0](https://github.com/pubnub/javascript/tree/v4.22.0) - March-04-2019 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.21.7...v4.22.0) - - - -- ⭐message counts - -- ⭐use null instead of '' for NativeScript networking module - - - -## [v4.21.7](https://github.com/pubnub/javascript/tree/v4.21.7) - December-20-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.21.6...v4.21.7) - - - -- ⭐update dependencies - -- ⭐fix flow process on nativescript - - - -## [v4.21.6](https://github.com/pubnub/javascript/tree/v4.21.6) - October-04-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.21.5...v4.21.6) - - - -- 🐛fix POST for nativescript adapter over android - - - -## [v4.21.5](https://github.com/pubnub/javascript/tree/v4.21.5) - August-06-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.21.4...v4.21.5) - - - -- ⭐update dependencies - - - -## [v4.21.4](https://github.com/pubnub/javascript/tree/v4.21.4) - August-04-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.21.3...v4.21.4) - - - -- ⭐return error parameter into errorData when logVerbosity = true - - - -## [v4.21.3](https://github.com/pubnub/javascript/tree/v4.21.3) - July-10-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.21.2...v4.21.3) - - - -- ⭐update dependencies - - - -## [v4.21.2](https://github.com/pubnub/javascript/tree/v4.21.2) - June-12-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.21.1...v4.21.2) - - - -- ⭐add stringifiedTimeToken into the fetch endpoint - - - -## [v4.21.1](https://github.com/pubnub/javascript/tree/v4.21.1) - June-08-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.21.0...v4.21.1) - - - -- 🐛avoid security vulnerability in growl < 1.10.0 - - - -## [v4.21.0](https://github.com/pubnub/javascript/tree/v4.21.0) - June-06-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.20.3...v4.21.0) - - - -- ⭐subscribe without using the heartbeat loop with flag withHeartbeats = false - - - -## [v4.20.3](https://github.com/pubnub/javascript/tree/v4.20.3) - Abril-24-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.20.2...v4.20.3) - - - -- 🐛fix timetoken announces - - -- ⭐categorize ETIMEDOUT errors as PNNetworkIssuesCategory - - - -## [v4.20.2](https://github.com/pubnub/javascript/tree/v4.20.2) - February-28-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.20.1...v4.20.2) - - - -- 🐛fix signature to delete message - - - -## [v4.20.1](https://github.com/pubnub/javascript/tree/v4.20.1) - January-29-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.20.0...v4.20.1) - - - -- ⭐allow set ssl to false for nodejs - - - -## [v4.20.0](https://github.com/pubnub/javascript/tree/v4.20.0) - January-04-2018 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.19.0...v4.20.0) - - - -- ⭐add support for heartbeat sending without subscription via .presence() - - -- ⭐add method setProxy for Nodejs - - -- ⭐set ssl to true for nodejs by default - - - -## [v4.19.0](https://github.com/pubnub/javascript/tree/v4.19.0) - December-05-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.18.0...v4.19.0) - - - -- ⭐add support for Native Script - - -- ⭐add missing flow types - - -- ⭐upgrade superagent to ^3.8.1 - - - -## [v4.18.0](https://github.com/pubnub/javascript/tree/v4.18.0) - November-20-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.17.0...v4.18.0) - - - -- ⭐keepAlive is now initialized globally instead of per-call, allowing better connection reuse - - -- ⭐added sdkName configuration parameter which allow completely override pnsdk in request query - - - -## [v4.17.0](https://github.com/pubnub/javascript/tree/v4.17.0) - October-19-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.16.2...v4.17.0) - - -- ⭐allow disabling of heartbeats by passing 0 during initialization. - - - -## [v4.16.2](https://github.com/pubnub/javascript/tree/v4.16.2) - October-19-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.16.1...v4.16.2) - - - -- 🐛fix UUID library to work in browsers. - - -## [v4.16.1](https://github.com/pubnub/javascript/tree/v4.16.1) - October-12-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.16.0...v4.16.1) - - - -- 🐛fix incorrect packaging of lil-uuid and uuid - - -## [v4.16.0](https://github.com/pubnub/javascript/tree/v4.16.0) - October-10-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.15.1...v4.16.0) - -- 🌟support delete messages from history - - - -- ⭐swap uuid generator with support for IE9 and IE10 - - - -## [v4.15.1](https://github.com/pubnub/javascript/tree/v4.15.1) - August-21-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.15.0...v4.15.1) - - -- ⭐fix typo to enable http keep alive support - - - -## [v4.15.0](https://github.com/pubnub/javascript/tree/v4.15.0) - August-21-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.14.0...v4.15.0) - - -- ⭐Support optional message deduping via the dedupeOnSubscribe config - - -- ⭐Do not issue leave events if the channel mix is empty. - - - -## [v4.14.0](https://github.com/pubnub/javascript/tree/v4.14.0) - August-14-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.13.0...v4.14.0) - - -- ⭐Allow disable of heartbeats by passing heartbeatInterval = 0 - - - -## [v4.13.0](https://github.com/pubnub/javascript/tree/v4.13.0) - July-27-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.12.0...v4.13.0) - - -- ⭐patch up 503 reporting - - -- ⭐fix issue with where now and invalid server response - - -- ⭐fix issue with here now and invalid server response - - - -## [v4.12.0](https://github.com/pubnub/javascript/tree/v4.12.0) - June-19-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.10.0...v4.12.0) - - -- ⭐fix issue of net with android for titanium - -- 🌟add additional hooks for connectivity - - -- 🌟add auto network detection - - - - -## [v4.10.0](https://github.com/pubnub/javascript/tree/v4.10.0) - May-23-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.9.2...v4.10.0) - - -- ⭐fix issue of net with android for react-native - - - -## [v4.9.2](https://github.com/pubnub/javascript/tree/v4.9.2) - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.9.1...v4.9.2) - -- 🌟metadata is now passed on message envelope - - - - -## [v4.9.1](https://github.com/pubnub/javascript/tree/v4.9.1) - May-18-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.9.0...v4.9.1) - -- 🌟add support custom encryption and decryption - - - - -## [v4.9.0](https://github.com/pubnub/javascript/tree/v4.9.0) - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.8.0...v4.9.0) - -- 🌟integrate fetch for react-native SDK - - - -- ⭐announce when subscription get reactivated - - -- ⭐stop heartbeats for responses with status PNBadRequestCategory - - - -## [v4.8.0](https://github.com/pubnub/javascript/tree/v4.8.0) - April-06-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.7.0...v4.8.0) - -- 🌟allow manual control over network state via listenToBrowserNetworkEvents - - - - -## [v4.7.0](https://github.com/pubnub/javascript/tree/v4.7.0) - March-30-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.6.0...v4.7.0) - -- 🌟add support for titanium SDK - - - -- ⭐fix support for react-native SDK - - -- ⭐add validation for web distribution - - - -## [v4.6.0](https://github.com/pubnub/javascript/tree/v4.6.0) - March-27-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.5.0...v4.6.0) - -- 🌟add support for presence deltas. - - -- 🌟keep track of new and upcoming timetokens on status messages - - - - -## [v4.5.0](https://github.com/pubnub/javascript/tree/v4.5.0) - March-08-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.4.4...v4.5.0) - -- 🌟add optional support for keepAlive by passing the keepAlive config into the init logic - - - - -## [v4.4.4](https://github.com/pubnub/javascript/tree/v4.4.4) - February-14-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.4.3...v4.4.4) - - -- ⭐add guard to check for channel or channel group on state setting - - -- ⭐add guard to check for publish, secret keys when performing a grant - - - -## [v4.4.3](https://github.com/pubnub/javascript/tree/v4.4.3) - February-07-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.4.2...v4.4.3) - - -- ⭐downgrade superagent to v2; add new entry point for react native. - - - -## [v4.4.2](https://github.com/pubnub/javascript/tree/v4.4.2) - January-31-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.4.1...v4.4.2) - - -- ⭐adjust compilation for webpack based compilations - - - -## [v4.4.1](https://github.com/pubnub/javascript/tree/v4.4.1) - January-31-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.4.0...v4.4.1) - - -- ⭐proxy support for node - - - -## [v4.4.0](https://github.com/pubnub/javascript/tree/v4.4.0) - January-23-2017 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.3.3...v4.4.0) - - -- ⭐upgrade dependencies; fix up linting. - - -- ⭐handle network outage cases for correct reporting. - - - -## [v4.3.3](https://github.com/pubnub/javascript/tree/v4.3.3) - December-16-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.3.2...v4.3.3) - - -- ⭐bump version after v3 release. - - - -## [v4.3.2](https://github.com/pubnub/javascript/tree/v4.3.2) - November-28-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.3.1...v4.3.2) - - -- ⭐removes bundling of package.json into the dist file - - - -## [v4.3.1](https://github.com/pubnub/javascript/tree/v4.3.1) - November-22-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.3.0...v4.3.1) - - -- ⭐SDK now supports the restore config to allow message catch-up - - - -## [v4.3.0](https://github.com/pubnub/javascript/tree/v4.3.0) - November-18-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.2.5...v4.3.0) - - -- ⭐bulk history exposed via pubnub.fetchMessages - - -- ⭐publish supports custom ttl interval - - -- ⭐v2 for audit and grant; no consumer facing changes. - - -- ⭐fixes for param validation on usage of promises - - - -## [v4.2.5](https://github.com/pubnub/javascript/tree/v4.2.5) - November-04-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.2.4...v4.2.5) - - -- ⭐SDK reports on the id of the publisher in the message - - - -## [v4.2.4](https://github.com/pubnub/javascript/tree/v4.2.4) - November-01-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.2.3...v4.2.4) - - -- ⭐Detection of support of promises improved. - - - -## [v4.2.3](https://github.com/pubnub/javascript/tree/v4.2.3) - November-01-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.2.2...v4.2.3) - - -- ⭐Fixes on encoding of apostraphes. - - - -## [v4.2.2](https://github.com/pubnub/javascript/tree/v4.2.2) - October-31-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.2.1...v4.2.2) - - -- ⭐Add promise support on setState operation (@jskrzypek) - - -- ⭐Add hooks to stop polling time when the number of subscriptions drops to 0 (@jasonpoe) - - - -## [v4.2.1](https://github.com/pubnub/javascript/tree/v4.2.1) - October-30-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.2.0...v4.2.1) - - -- ⭐Encode signatures to avoid sending restricted characters - - - -## [v4.2.0](https://github.com/pubnub/javascript/tree/v4.2.0) - October-26-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.1.1...v4.2.0) - - -- ⭐Add optional support for promises on all endpoints. - - -- ⭐History always returns timetokens in the payloads. - - -- ⭐Optionally, if queue size is set, send status on queue size threshold - - - -## [v4.1.1](https://github.com/pubnub/javascript/tree/v4.1.1) - October-17-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.1.0...v4.1.1) - - -- ⭐Fix state setting for channels with reserved tags. - - - -## [v4.1.0](https://github.com/pubnub/javascript/tree/v4.1.0) - October-13-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.13...v4.1.0) - - -- ⭐Reset timetoken when all unsubscribes happen - - -- ⭐Sign requests when a a secret key is passed - - - -## [v4.0.13](https://github.com/pubnub/javascript/tree/v4.0.13) - October-05-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.12...v4.0.13) - - -- ⭐Propogate status events to the status callback on subscribe operations. - - - -## [v4.0.12](https://github.com/pubnub/javascript/tree/v4.0.12) - October-03-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.11...v4.0.12) - - -- ⭐affectedChannels and affectedChannelGroups are now populated on subscribe / unsubscribe events - - - -## [v4.0.11](https://github.com/pubnub/javascript/tree/v4.0.11) - September-27-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.10...v4.0.11) - - -- ⭐Dependency upgrades - - - -## [v4.0.10](https://github.com/pubnub/javascript/tree/v4.0.10) - September-14-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.9...v4.0.10) - - -- ⭐Expose decryption and encryption as a global - - - -## [v4.0.9](https://github.com/pubnub/javascript/tree/v4.0.9) - September-09-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.8...v4.0.9) - - -- ⭐Channel / subscription items are populated in - - -- ⭐Constants for operation and category are exposed on global object - - - -## [v4.0.8](https://github.com/pubnub/javascript/tree/v4.0.8) - August-25-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.7...v4.0.8) - - -- ⭐Re-publish of v4.0.7 - - - -## [v4.0.7](https://github.com/pubnub/javascript/tree/v4.0.7) - August-25-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.6...v4.0.7) - - -- ⭐Dependency upgrades - - -- ⭐Try..catch wrapped around localStorage for iframe compliance - - - -## [v4.0.6](https://github.com/pubnub/javascript/tree/v4.0.6) - August-18-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.5...v4.0.6) - - -- ⭐Adjustment of reconnection policies for web distributions. - - -- ⭐PNSDK support for partner identification - - - -## [v4.0.5](https://github.com/pubnub/javascript/tree/v4.0.5) - August-10-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.4...v4.0.5) - - -- ⭐Stop exposing .babelrc which causes unpredictable behavior on react native. - - - -## [v4.0.4](https://github.com/pubnub/javascript/tree/v4.0.4) - August-09-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.3...v4.0.4) - - -- ⭐Adjust handling of presence payloads for state settings. - -- 🌟Exposing generateUUID method to create uuids. - - - -- ⭐Triggering disconnect, reconnect events on Web distributions. - - -- ⭐React Native adjustments to package.json information. - - - -## [v4.0.3](https://github.com/pubnub/javascript/tree/v4.0.3) - August-07-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.2...v4.0.3) - - -- ⭐Global Here Now parsing adjustments. - - - -## [v4.0.2](https://github.com/pubnub/javascript/tree/v4.0.2) - August-03-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.1...v4.0.2) - - -- ⭐Adjustments to internet disconnects on node. - - - -## [v4.0.1](https://github.com/pubnub/javascript/tree/v4.0.1) - August-01-2016 - - - [Full Changelog](https://github.com/pubnub/javascript/compare/v4.0.0...v4.0.1) - - - -- 🐛Fixes to avoid double encoding on JSON payloads. - - -## [v4.0.0](https://github.com/pubnub/javascript/tree/v4.0.0) - - - -- 🌟New iteration of JS / Node SDK family diff --git a/project1/README.md b/project1/README.md deleted file mode 100644 index 8b1705644..000000000 --- a/project1/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# PubNub JavaScript SDK (V4) - -[![Build Status](https://travis-ci.com/pubnub/javascript.svg?branch=master)](https://travis-ci.com/pubnub/javascript) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/2859917905c549b8bfa27630ff276fce)](https://www.codacy.com/app/PubNub/javascript?utm_source=github.com&utm_medium=referral&utm_content=pubnub/javascript&utm_campaign=Badge_Grade) -[![Codacy Badge](https://api.codacy.com/project/badge/Coverage/2859917905c549b8bfa27630ff276fce)](https://www.codacy.com/app/PubNub/javascript?utm_source=github.com&utm_medium=referral&utm_content=pubnub/javascript&utm_campaign=Badge_Coverage) -[![npm](https://img.shields.io/npm/v/pubnub.svg)]() -[![Bower](https://img.shields.io/bower/v/pubnub.svg)]() -[![Known Vulnerabilities](https://snyk.io/test/npm/pubnub/badge.svg)](https://snyk.io/test/npm/pubnub) - -This is the official PubNub JavaScript SDK repository. - -PubNub takes care of the infrastructure and APIs needed for the realtime communication layer of your application. Work on your app's logic and let PubNub handle sending and receiving data across the world in less than 100ms. - -## Get keys - -You will need the publish and subscribe keys to authenticate your app. Get your keys from the [Admin Portal](https://dashboard.pubnub.com/login). - -## Configure PubNub - -1. Integrate the JavaScript SDK into your project: - * use `npm`: - ``` - npm install pubnub - ``` - * or download one of our builds from our CDN: - * https://cdn.pubnub.com/sdk/javascript/pubnub.4.32.1.js - * https://cdn.pubnub.com/sdk/javascript/pubnub.4.32.1.min.js - -2. Configure your keys: - - ```javascript - pubnub = new PubNub({ - publishKey : "myPublishKey", - subscribeKey : "mySubscribeKey", - uuid: "myUniqueUUID" - }) - ``` - -## Add event listeners - -```javascript -pubnub.addListener({ - message: function (m) { - // handle messages - }, - presence: function (p) { - // handle presence - }, - signal: function (s) { - // handle signals - }, - objects: (objectEvent) => { - // handle pbjects - }, - messageAction: function (ma) { - // handle message actions - }, - file: function (event) { - // handle files - }, - status: function (s) { - // handle status - }, -}); -``` - -## Publish/subscribe - -```javascript -var publishPayload = { - channel : "hello_world", - message: { - title: "greeting", - description: "This is my first message!" - } -} - -pubnub.publish(publishPayload, function(status, response) { - console.log(status, response); -}) - -pubnub.subscribe({ - channels: ["hello_world"] -}); -``` - -## Documentation - -* [Build your first realtime JS app with PubNub](https://www.pubnub.com/docs/platform/quickstarts/javascript) -* [API reference for JavaScript (web)](https://www.pubnub.com/docs/web-javascript/pubnub-javascript-sdk) -* [API reference for JavaScript (Node.js)](https://www.pubnub.com/docs/nodejs-javascript/pubnub-javascript-sdk) - -## Support - -If you **need help** or have a **general question**, contact . diff --git a/src/core/components/config.js b/src/core/components/config.js index 8425ddf28..cd9bbadf4 100644 --- a/src/core/components/config.js +++ b/src/core/components/config.js @@ -2,19 +2,18 @@ /* global location */ import uuidGenerator from './uuid'; -import { InternalSetupStruct, DatabaseInterface, KeepAliveStruct, ProxyStruct } from '../flow_interfaces'; +import { InternalSetupStruct, KeepAliveStruct, ProxyStruct } from '../flow_interfaces'; const PRESENCE_TIMEOUT_MINIMUM: number = 20; const PRESENCE_TIMEOUT_DEFAULT: number = 300; +const makeDefaultOrigins = () => Array.from({ length: 20 }, (_, i) => `ps${i + 1}.pndsn.com`); + type ConfigConstructArgs = { - setup: InternalSetupStruct, - db: DatabaseInterface, + setup: InternalSetupStruct }; export default class { - _db: DatabaseInterface; - subscribeKey: string; publishKey: string; secretKey: string; @@ -60,7 +59,7 @@ export default class { secure: boolean; // Custom optional origin. - origin: string; + origin: string | string[]; // log verbosity: true to output lots of info logVerbosity: boolean; @@ -143,9 +142,8 @@ export default class { fileUploadPublishRetryLimit: number; useRandomIVs: boolean; - constructor({ setup, db }: ConfigConstructArgs) { + constructor({ setup }: ConfigConstructArgs) { this._PNSDKSuffix = {}; - this._db = db; this.instanceId = `pn-${uuidGenerator.createUUID()}`; this.secretKey = setup.secretKey || setup.secret_key; @@ -159,7 +157,11 @@ export default class { this.setFilterExpression(setup.filterExpression); - this.origin = setup.origin || 'ps.pndsn.com'; + if (typeof setup.origin !== 'string' && !Array.isArray(setup.origin) && setup.origin !== undefined) { + throw new Error('Origin must be either undefined, a string or a list of strings.'); + } + + this.origin = setup.origin || makeDefaultOrigins(); this.secure = setup.ssl || false; this.restore = setup.restore || false; this.proxy = setup.proxy; @@ -209,7 +211,7 @@ export default class { this.setHeartbeatInterval(setup.heartbeatInterval); } - this.setUUID(this._decideUUID(setup.uuid)); // UUID decision depends on subKey. + this.setUUID(setup.uuid); } // exposed setters @@ -232,7 +234,9 @@ export default class { } setUUID(val: string): this { - if (this._db && this._db.set) this._db.set(`${this.subscribeKey}uuid`, val); + if (!val || typeof val !== 'string' || val.trim().length === 0) { + throw new Error('Missing uuid parameter. Provide a valid string uuid'); + } this.UUID = val; return this; } @@ -307,7 +311,7 @@ export default class { } getVersion(): string { - return '4.32.1'; + return '5.0.0'; } _addPnsdkSuffix(name: string, suffix: string) { @@ -317,19 +321,4 @@ export default class { _getPnsdkSuffix(separator: string): string { return Object.keys(this._PNSDKSuffix).reduce((result, key) => result + separator + this._PNSDKSuffix[key], ''); } - - _decideUUID(providedUUID: string): string { - // if the uuid was provided by setup, use this UUID. - if (providedUUID) { - return providedUUID; - } - - // if the database module is enabled and we have something saved, use this. - if (this._db && this._db.get && this._db.get(`${this.subscribeKey}uuid`)) { - return this._db.get(`${this.subscribeKey}uuid`); - } - - // randomize the UUID and push to storage - return `pn-${uuidGenerator.createUUID()}`; - } } diff --git a/src/core/components/endpoint.js b/src/core/components/endpoint.js index 0c5119ee1..d89d06c86 100644 --- a/src/core/components/endpoint.js +++ b/src/core/components/endpoint.js @@ -36,16 +36,6 @@ function decideURL(endpoint, modules, incomingParams) { } } -function getAuthToken(endpoint, modules, incomingParams) { - let token; - - if (endpoint.getAuthToken) { - token = endpoint.getAuthToken(modules, incomingParams); - } - - return token; -} - export function generatePNSDK(config: Config): string { if (config.sdkName) { return config.sdkName; @@ -125,7 +115,7 @@ export function signRequest(modules, url, outgoingParams, incomingParams, endpoi } export default function (modules, endpoint, ...args) { - let { networking, config, telemetryManager } = modules; + let { networking, config, telemetryManager, tokenManager } = modules; const requestId = uuidGenerator.createUUID(); let callback = null; let promiseComponent = null; @@ -191,8 +181,7 @@ export default function (modules, endpoint, ...args) { } if (endpoint.isAuthSupported()) { - let token = getAuthToken(endpoint, modules, incomingParams); - let tokenOrKey = token || config.getAuthKey(); + let tokenOrKey = tokenManager.getToken() || config.getAuthKey(); if (tokenOrKey) { outgoingParams.auth = tokenOrKey; diff --git a/src/core/components/telemetry_manager.js b/src/core/components/telemetry_manager.js index 8c57baab6..de65e5b63 100644 --- a/src/core/components/telemetry_manager.js +++ b/src/core/components/telemetry_manager.js @@ -133,7 +133,8 @@ export default class { operation = 'pam'; break; case operationConstants.PNAccessManagerGrantToken: - operation = 'pam3'; + case operationConstants.PNAccessManagerRevokeToken: + operation = 'pamv3'; break; default: operation = 'time'; diff --git a/src/core/components/token_manager.js b/src/core/components/token_manager.js index 95abc5f9b..7499e44d1 100644 --- a/src/core/components/token_manager.js +++ b/src/core/components/token_manager.js @@ -1,8 +1,6 @@ /* @flow */ import Config from './config'; import { - TokensDefinition, - GetTokensInput, GrantTokenOutput, } from '../flow_interfaces'; @@ -11,146 +9,48 @@ export default class { _cbor: any; - _userTokens: { [string]: string}; - _spaceTokens: { [string]: string}; - - _userToken: ?string; - _spaceToken: ?string; + _token: any; constructor(config: Config, cbor: any) { this._config = config; this._cbor = cbor; - this._initializeTokens(); - } - - _initializeTokens() { - this._userTokens = {}; - this._spaceTokens = {}; - - this._userToken = undefined; - this._spaceToken = undefined; - } - - _setToken(token: string) { - let tokenObject: GrantTokenOutput = this.parseToken(token); - - if (tokenObject && tokenObject.resources) { - if (tokenObject.resources.users) { - Object.keys(tokenObject.resources.users).forEach((id) => { - this._userTokens[id] = token; - }); - } - - if (tokenObject.resources.spaces) { - Object.keys(tokenObject.resources.spaces).forEach((id) => { - this._spaceTokens[id] = token; - }); - } - } - - if (tokenObject && tokenObject.patterns) { - if (tokenObject.patterns.users && Object.keys(tokenObject.patterns.users).length > 0) { - this._userToken = token; - } - - if (tokenObject.patterns.spaces && Object.keys(tokenObject.patterns.spaces).length > 0) { - this._spaceToken = token; - } - } } setToken(token: string) { if (token && token.length > 0) { - this._setToken(token); - } - } - - setTokens(tokens: string[]) { - if (tokens && tokens.length && typeof tokens === 'object') { - tokens.forEach((token) => { - this.setToken(token); - }); - } - } - - getTokens(tokenDef: GetTokensInput): TokensDefinition { - let result: TokensDefinition = { - users: {}, - spaces: {} - }; - - if (tokenDef) { - if (tokenDef.user) { - result.user = this._userToken; - } - - if (tokenDef.space) { - result.space = this._spaceToken; - } - - if (tokenDef.users) { - tokenDef.users.forEach((user) => { - result.users[user] = this._userTokens[user]; - }); - } - - if (tokenDef.space) { - tokenDef.spaces.forEach((space) => { - result.spaces[space] = this._spaceTokens[space]; - }); - } + this._token = token; } else { - if (this._userToken) { - result.user = this._userToken; - } - - if (this._spaceToken) { - result.space = this._spaceToken; - } - - Object.keys(this._userTokens).forEach((user) => { - result.users[user] = this._userTokens[user]; - }); - - Object.keys(this._spaceTokens).forEach((space) => { - result.spaces[space] = this._spaceTokens[space]; - }); + this._token = undefined; } - - return result; } - getToken(type: string, id?: string) { - let result; - - if (id) { - if (type === 'user') { - result = this._userTokens[id]; - } else if (type === 'space') { - result = this._spaceTokens[id]; - } - } else if (type === 'user') { - result = this._userToken; - } else if (type === 'space') { - result = this._spaceToken; - } - - return result; + getToken() { + return this._token; } extractPermissions(permissions: number) { let permissionsResult = { - create: false, read: false, write: false, manage: false, delete: false, + get: false, + update: false, + join: false }; /* eslint-disable */ - if ((permissions & 16) === 16) { - permissionsResult.create = true; + if ((permissions & 128) === 128) { + permissionsResult.join = true; + } + + if ((permissions & 64) === 64) { + permissionsResult.update = true; + } + + if ((permissions & 32) === 32) { + permissionsResult.get = true; } if ((permissions & 8) === 8) { @@ -178,40 +78,31 @@ export default class { let parsed = this._cbor.decodeToken(tokenString); if (parsed !== undefined) { - let userResourcePermissions = Object.keys(parsed.res.usr); - let spaceResourcePermissions = Object.keys(parsed.res.spc); + let uuidResourcePermissions = parsed.res.uuid ? Object.keys(parsed.res.uuid) : []; let channelResourcePermissions = Object.keys(parsed.res.chan); let groupResourcePermissions = Object.keys(parsed.res.grp); - let userPatternPermissions = Object.keys(parsed.pat.usr); - let spacePatternPermissions = Object.keys(parsed.pat.spc); + let uuidPatternPermissions = parsed.pat.uuid ? Object.keys(parsed.pat.uuid) : []; let channelPatternPermissions = Object.keys(parsed.pat.chan); let groupPatternPermissions = Object.keys(parsed.pat.grp); let result: GrantTokenOutput = { version: parsed.v, timestamp: parsed.t, - ttl: parsed.ttl + ttl: parsed.ttl, + authorized_uuid: parsed.uuid }; - let userResources = userResourcePermissions.length > 0; - let spaceResources = spaceResourcePermissions.length > 0; + let uuidResources = uuidResourcePermissions.length > 0; let channelResources = channelResourcePermissions.length > 0; let groupResources = groupResourcePermissions.length > 0; - if (userResources || spaceResources || channelResources || groupResources) { + if (uuidResources || channelResources || groupResources) { result.resources = {}; - if (userResources) { - result.resources.users = {}; - userResourcePermissions.forEach((id) => { - result.resources.users[id] = this.extractPermissions(parsed.res.usr[id]); - }); - } - - if (spaceResources) { - result.resources.spaces = {}; - spaceResourcePermissions.forEach((id) => { - result.resources.spaces[id] = this.extractPermissions(parsed.res.spc[id]); + if (uuidResources) { + result.resources.uuids = {}; + uuidResourcePermissions.forEach((id) => { + result.resources.uuids[id] = this.extractPermissions(parsed.res.uuid[id]); }); } @@ -230,25 +121,17 @@ export default class { } } - let userPatterns = userPatternPermissions.length > 0; - let spacePatterns = spacePatternPermissions.length > 0; + let uuidPatterns = uuidPatternPermissions.length > 0; let channelPatterns = channelPatternPermissions.length > 0; let groupPatterns = groupPatternPermissions.length > 0; - if (userPatterns || spacePatterns || channelPatterns || groupPatterns) { + if (uuidPatterns || channelPatterns || groupPatterns) { result.patterns = {}; - if (userPatterns) { - result.patterns.users = {}; - userPatternPermissions.forEach((id) => { - result.patterns.users[id] = this.extractPermissions(parsed.pat.usr[id]); - }); - } - - if (spacePatterns) { - result.patterns.spaces = {}; - spacePatternPermissions.forEach((id) => { - result.patterns.spaces[id] = this.extractPermissions(parsed.pat.spc[id]); + if (uuidPatterns) { + result.patterns.uuids = {}; + uuidPatternPermissions.forEach((id) => { + result.patterns.uuids[id] = this.extractPermissions(parsed.pat.uuid[id]); }); } @@ -278,8 +161,4 @@ export default class { return undefined; } } - - clearTokens() { - this._initializeTokens(); - } } diff --git a/src/core/constants/operations.js b/src/core/constants/operations.js index 0a4283880..208604504 100644 --- a/src/core/constants/operations.js +++ b/src/core/constants/operations.js @@ -83,5 +83,6 @@ export default { PNAccessManagerGrant: 'PNAccessManagerGrant', PNAccessManagerGrantToken: 'PNAccessManagerGrantToken', PNAccessManagerAudit: 'PNAccessManagerAudit', + PNAccessManagerRevokeToken: 'PNAccessManagerRevokeToken', // }; diff --git a/src/core/endpoints/access_manager/grant_token.js b/src/core/endpoints/access_manager/grant_token.js index 06f5e9ed3..795ef4957 100644 --- a/src/core/endpoints/access_manager/grant_token.js +++ b/src/core/endpoints/access_manager/grant_token.js @@ -1,4 +1,5 @@ /* @flow */ +/* eslint camelcase: 0 */ import { GrantTokenInput, GrantTokenObject, ModulesInject } from '../../flow_interfaces'; import operationConstants from '../../constants/operations'; @@ -12,8 +13,16 @@ export function extractPermissions(permissions: GrantTokenObject) { /* eslint-disable */ - if (permissions.create) { - permissionsResult |= 16; + if (permissions.join) { + permissionsResult |= 128; + } + + if (permissions.update) { + permissionsResult |= 64; + } + + if (permissions.get) { + permissionsResult |= 32; } if (permissions.delete) { @@ -38,38 +47,34 @@ export function extractPermissions(permissions: GrantTokenObject) { } function prepareMessagePayload(modules, incomingParams) { - const { ttl, resources, patterns, meta } = incomingParams; - const params = { + const { ttl, resources, patterns, meta, authorized_uuid } = incomingParams; + const params: any = { ttl: 0, permissions: { resources: { channels: {}, groups: {}, - users: {}, - spaces: {} + uuids: {}, + users: {}, // not used, needed for api backward compatibility + spaces: {} // not used, needed for api backward compatibility }, patterns: { channels: {}, groups: {}, - users: {}, - spaces: {} + uuids: {}, + users: {}, // not used, needed for api backward compatibility + spaces: {} // not used, needed for api backward compatibility }, meta: {} } }; if (resources) { - const { users, spaces, channels, groups } = resources; - - if (users) { - Object.keys(users).forEach((user) => { - params.permissions.resources.users[user] = extractPermissions(users[user]); - }); - } + const { uuids, channels, groups } = resources; - if (spaces) { - Object.keys(spaces).forEach((space) => { - params.permissions.resources.spaces[space] = extractPermissions(spaces[space]); + if (uuids) { + Object.keys(uuids).forEach((uuid) => { + params.permissions.resources.uuids[uuid] = extractPermissions(uuids[uuid]); }); } @@ -87,17 +92,11 @@ function prepareMessagePayload(modules, incomingParams) { } if (patterns) { - const { users, spaces, channels, groups } = patterns; - - if (users) { - Object.keys(users).forEach((user) => { - params.permissions.patterns.users[user] = extractPermissions(users[user]); - }); - } + const { uuids, channels, groups } = patterns; - if (spaces) { - Object.keys(spaces).forEach((space) => { - params.permissions.patterns.spaces[space] = extractPermissions(spaces[space]); + if (uuids) { + Object.keys(uuids).forEach((uuid) => { + params.permissions.patterns.uuids[uuid] = extractPermissions(uuids[uuid]); }); } @@ -122,6 +121,10 @@ function prepareMessagePayload(modules, incomingParams) { params.permissions.meta = meta; } + if (authorized_uuid) { + params.permissions.uuid = `${authorized_uuid}`; // ensure this is a string + } + return params; } @@ -140,15 +143,13 @@ export function validateParams( if ( ( (incomingParams.resources) && - (!incomingParams.resources.users || Object.keys(incomingParams.resources.users).length === 0) && - (!incomingParams.resources.spaces || Object.keys(incomingParams.resources.spaces).length === 0) && + (!incomingParams.resources.uuids || Object.keys(incomingParams.resources.uuids).length === 0) && (!incomingParams.resources.channels || Object.keys(incomingParams.resources.channels).length === 0) && (!incomingParams.resources.groups || Object.keys(incomingParams.resources.groups).length === 0) ) || ( (incomingParams.patterns) && - (!incomingParams.patterns.users || Object.keys(incomingParams.patterns.users).length === 0) && - (!incomingParams.patterns.spaces || Object.keys(incomingParams.patterns.spaces).length === 0) && + (!incomingParams.patterns.uuids || Object.keys(incomingParams.patterns.uuids).length === 0) && (!incomingParams.patterns.channels || Object.keys(incomingParams.patterns.channels).length === 0) && (!incomingParams.patterns.groups || Object.keys(incomingParams.patterns.groups).length === 0) ) diff --git a/src/core/endpoints/access_manager/revoke_token.js b/src/core/endpoints/access_manager/revoke_token.js new file mode 100644 index 000000000..5f7ad23e9 --- /dev/null +++ b/src/core/endpoints/access_manager/revoke_token.js @@ -0,0 +1,45 @@ +/** @flow */ + +import type { EndpointConfig } from '../endpoint'; +import operationConstants from '../../constants/operations'; +import utils from '../../utils'; + +export type RevokeTokenParams = string; + +export type RevokeTokenResult = {| + status: 200, + data: string +|} + +const endpoint: EndpointConfig = { + getOperation: () => operationConstants.PNAccessManagerRevokeToken, + + validateParams: (modules, token) => { + const { secretKey } = modules.config; + if (!secretKey) { + return 'Missing Secret Key'; + } + + if (!token) { + return "token can't be empty"; + } + }, + + getURL: ({ config }, token) => `/v3/pam/${config.subscribeKey}/grant/${utils.encodeString(token)}`, + useDelete: () => true, + + getRequestTimeout: ({ config }) => config.getTransactionTimeout(), + + isAuthSupported: () => false, + + prepareParams: ({ config }) => ({ + uuid: config.getUUID(), + }), + + handleResponse: (_, response) => ({ + status: response.status, + data: response.data, + }), +}; + +export default endpoint; diff --git a/src/core/endpoints/endpoint.js b/src/core/endpoints/endpoint.js index 477c15f07..6446f8461 100644 --- a/src/core/endpoints/endpoint.js +++ b/src/core/endpoints/endpoint.js @@ -30,7 +30,6 @@ export type EndpointConfig = {| validateParams: InjectedFunction<[$Shape], string | void>, prepareParams: InjectedFunction<[$Shape], Record>, - getAuthToken?: InjectedFunction<[TParams], string | void | null>, getRequestHeaders?: () => Record, getURL?: InjectedFunction<[TParams], string>, diff --git a/src/core/endpoints/file_upload/delete_file.js b/src/core/endpoints/file_upload/delete_file.js index 7c8ce62da..a86862c98 100644 --- a/src/core/endpoints/file_upload/delete_file.js +++ b/src/core/endpoints/file_upload/delete_file.js @@ -29,8 +29,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('fileUpload'), - prepareParams: () => ({}), handleResponse: (_, response): DeleteFileResult => ({ diff --git a/src/core/endpoints/file_upload/download_file.js b/src/core/endpoints/file_upload/download_file.js index da5dcc7ae..c718b73f2 100644 --- a/src/core/endpoints/file_upload/download_file.js +++ b/src/core/endpoints/file_upload/download_file.js @@ -38,7 +38,7 @@ const endpoint: EndpointConfig = { handleResponse: async ({ PubNubFile, config, cryptography }, res, params): Promise => { let body = res.response.body; - if (PubNubFile.supportsEncryptFile && (config.cipherKey)) { + if (PubNubFile.supportsEncryptFile && (params.cipherKey ?? config.cipherKey)) { body = await cryptography.decrypt(params.cipherKey ?? config.cipherKey, body); } diff --git a/src/core/endpoints/file_upload/generate_upload_url.js b/src/core/endpoints/file_upload/generate_upload_url.js index 2b4739c70..b6dacdc03 100644 --- a/src/core/endpoints/file_upload/generate_upload_url.js +++ b/src/core/endpoints/file_upload/generate_upload_url.js @@ -29,8 +29,6 @@ const endpoint: EndpointConfig isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('fileUpload'), - prepareParams: () => ({}), handleResponse: (_, response): GenerateUploadUrlResult => ({ diff --git a/src/core/endpoints/file_upload/get_file_url.js b/src/core/endpoints/file_upload/get_file_url.js index fe2444b28..f637186e4 100644 --- a/src/core/endpoints/file_upload/get_file_url.js +++ b/src/core/endpoints/file_upload/get_file_url.js @@ -6,7 +6,7 @@ import type { GetFileUrlParams, GetFileUrlResult } from './types'; import utils from '../../utils'; export default (modules: Modules, { channel, id, name }: GetFileUrlParams): GetFileUrlResult => { - const { config } = modules; + const { config, networking } = modules; if (!channel) { throw new PubNubError( @@ -48,8 +48,8 @@ export default (modules: Modules, { channel, id, name }: GetFileUrlParams): GetF const queryParams = Object.keys(params).map((key) => `${encodeURIComponent(key)}=${encodeURIComponent(params[key])}`).join('&'); if (queryParams !== '') { - return `https://${config.origin}${url}?${queryParams}`; + return `${networking.getStandardOrigin()}${url}?${queryParams}`; } - return `https://${config.origin}${url}`; + return `${networking.getStandardOrigin()}${url}`; }; diff --git a/src/core/endpoints/file_upload/list_files.js b/src/core/endpoints/file_upload/list_files.js index 8d772f504..733a41ec0 100644 --- a/src/core/endpoints/file_upload/list_files.js +++ b/src/core/endpoints/file_upload/list_files.js @@ -20,8 +20,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('fileUpload'), - prepareParams: (_, params) => { const outParams = {}; diff --git a/src/core/endpoints/file_upload/publish_file.js b/src/core/endpoints/file_upload/publish_file.js index 98aba3ccd..011c26c12 100644 --- a/src/core/endpoints/file_upload/publish_file.js +++ b/src/core/endpoints/file_upload/publish_file.js @@ -53,8 +53,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('fileUpload'), - prepareParams: (_, params) => { const outParams = {}; diff --git a/src/core/endpoints/file_upload/send_file.js b/src/core/endpoints/file_upload/send_file.js index 74be4caf2..d78c87cee 100644 --- a/src/core/endpoints/file_upload/send_file.js +++ b/src/core/endpoints/file_upload/send_file.js @@ -100,12 +100,12 @@ const sendFile = ({ throw new PubNubError('Upload to bucket was unsuccessful', result); } - let retries = 5; + let retries = config.fileUploadPublishRetryLimit; let wasSuccessful = false; let publishResult = { timetoken: '0' }; - while (!wasSuccessful && retries > 0) { + do { try { publishResult = await publishFile({ channel, @@ -121,7 +121,7 @@ const sendFile = ({ } catch (e) { retries -= 1; } - } + } while (!wasSuccessful && retries > 0); if (!wasSuccessful) { throw new PubNubError('Publish failed. You may want to execute that operation manually using pubnub.publishFile', { diff --git a/src/core/endpoints/memberships/add_members.js b/src/core/endpoints/memberships/add_members.js index 98fcf86a3..e58b889ff 100644 --- a/src/core/endpoints/memberships/add_members.js +++ b/src/core/endpoints/memberships/add_members.js @@ -74,14 +74,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: MembersInput): string { - let token = - modules.tokenManager.getToken('space', incomingParams.spaceId) || - modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: MembersInput diff --git a/src/core/endpoints/memberships/get_members.js b/src/core/endpoints/memberships/get_members.js index f715cd3bb..ea41e0d1e 100644 --- a/src/core/endpoints/memberships/get_members.js +++ b/src/core/endpoints/memberships/get_members.js @@ -35,14 +35,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: MembersInput): string { - let token = - modules.tokenManager.getToken('space', incomingParams.spaceId) || - modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: MembersInput diff --git a/src/core/endpoints/memberships/get_memberships.js b/src/core/endpoints/memberships/get_memberships.js index 9fd2a0af5..d2387daaa 100644 --- a/src/core/endpoints/memberships/get_memberships.js +++ b/src/core/endpoints/memberships/get_memberships.js @@ -35,14 +35,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: MembershipsInput): string { - let token = - modules.tokenManager.getToken('user', incomingParams.userId) || - modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: MembershipsInput diff --git a/src/core/endpoints/memberships/join_spaces.js b/src/core/endpoints/memberships/join_spaces.js index de7fb87f4..751dcb2a3 100644 --- a/src/core/endpoints/memberships/join_spaces.js +++ b/src/core/endpoints/memberships/join_spaces.js @@ -74,14 +74,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: MembershipsInput): string { - let token = - modules.tokenManager.getToken('user', incomingParams.userId) || - modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: MembershipsInput diff --git a/src/core/endpoints/memberships/leave_spaces.js b/src/core/endpoints/memberships/leave_spaces.js index 86ccd6258..17a436c5f 100644 --- a/src/core/endpoints/memberships/leave_spaces.js +++ b/src/core/endpoints/memberships/leave_spaces.js @@ -67,14 +67,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: MembershipsInput): string { - let token = - modules.tokenManager.getToken('user', incomingParams.userId) || - modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: MembershipsInput diff --git a/src/core/endpoints/memberships/remove_members.js b/src/core/endpoints/memberships/remove_members.js index 64db62c60..e1f1438fc 100644 --- a/src/core/endpoints/memberships/remove_members.js +++ b/src/core/endpoints/memberships/remove_members.js @@ -67,14 +67,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: MembersInput): string { - let token = - modules.tokenManager.getToken('space', incomingParams.spaceId) || - modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: MembersInput diff --git a/src/core/endpoints/memberships/update_members.js b/src/core/endpoints/memberships/update_members.js index 39e67d7c2..faab35861 100644 --- a/src/core/endpoints/memberships/update_members.js +++ b/src/core/endpoints/memberships/update_members.js @@ -112,14 +112,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: MembersInput): string { - let token = - modules.tokenManager.getToken('space', incomingParams.spaceId) || - modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: MembersInput diff --git a/src/core/endpoints/memberships/update_memberships.js b/src/core/endpoints/memberships/update_memberships.js index da772545f..52cdaa9b8 100644 --- a/src/core/endpoints/memberships/update_memberships.js +++ b/src/core/endpoints/memberships/update_memberships.js @@ -112,14 +112,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: MembershipsInput): string { - let token = - modules.tokenManager.getToken('user', incomingParams.userId) || - modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: MembershipsInput diff --git a/src/core/endpoints/objects/channel/get.js b/src/core/endpoints/objects/channel/get.js index 13737760d..f0b5a97f3 100644 --- a/src/core/endpoints/objects/channel/get.js +++ b/src/core/endpoints/objects/channel/get.js @@ -32,8 +32,6 @@ const endpoint: EndpointConfig true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('channel'), - prepareParams: (_, params) => ({ include: (params?.include?.customFields ?? true) && 'custom', }), diff --git a/src/core/endpoints/objects/channel/get_all.js b/src/core/endpoints/objects/channel/get_all.js index 8fcba4a11..b2d18f851 100644 --- a/src/core/endpoints/objects/channel/get_all.js +++ b/src/core/endpoints/objects/channel/get_all.js @@ -38,8 +38,6 @@ const endpoint: EndpointConfig true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('channel'), - prepareParams: (_modules, params) => { const queryParams = {}; diff --git a/src/core/endpoints/objects/channel/remove.js b/src/core/endpoints/objects/channel/remove.js index 4fa600206..461dae3d8 100644 --- a/src/core/endpoints/objects/channel/remove.js +++ b/src/core/endpoints/objects/channel/remove.js @@ -30,8 +30,6 @@ const endpoint: EndpointConfig true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('channel'), - prepareParams: () => ({}), handleResponse: (_, response) => ({ diff --git a/src/core/endpoints/objects/channel/set.js b/src/core/endpoints/objects/channel/set.js index b63a18cec..4e9d43191 100644 --- a/src/core/endpoints/objects/channel/set.js +++ b/src/core/endpoints/objects/channel/set.js @@ -41,8 +41,6 @@ const endpoint: EndpointConfig true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('channel'), - prepareParams: (_, params) => ({ include: (params?.include?.customFields ?? true) && 'custom', }), diff --git a/src/core/endpoints/objects/member/get.js b/src/core/endpoints/objects/member/get.js index c64e7b088..0ea6e2d27 100644 --- a/src/core/endpoints/objects/member/get.js +++ b/src/core/endpoints/objects/member/get.js @@ -32,8 +32,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('member'), - prepareParams: (_modules, params) => { const queryParams = {}; diff --git a/src/core/endpoints/objects/member/set.js b/src/core/endpoints/objects/member/set.js index 2ce75101e..ddddbfbec 100644 --- a/src/core/endpoints/objects/member/set.js +++ b/src/core/endpoints/objects/member/set.js @@ -71,8 +71,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('member'), - prepareParams: (_modules, params) => { const queryParams = {}; diff --git a/src/core/endpoints/objects/membership/get.js b/src/core/endpoints/objects/membership/get.js index e28cef70a..08b4d31c4 100644 --- a/src/core/endpoints/objects/membership/get.js +++ b/src/core/endpoints/objects/membership/get.js @@ -29,8 +29,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('membership'), - prepareParams: (_modules, params) => { const queryParams = {}; diff --git a/src/core/endpoints/objects/membership/set.js b/src/core/endpoints/objects/membership/set.js index ae718a8b6..dbf02c6f5 100644 --- a/src/core/endpoints/objects/membership/set.js +++ b/src/core/endpoints/objects/membership/set.js @@ -68,8 +68,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('membership'), - prepareParams: (_modules, params) => { const queryParams = {}; diff --git a/src/core/endpoints/objects/uuid/get.js b/src/core/endpoints/objects/uuid/get.js index 0377f0c53..631401279 100644 --- a/src/core/endpoints/objects/uuid/get.js +++ b/src/core/endpoints/objects/uuid/get.js @@ -29,8 +29,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('user'), - prepareParams: ({ config }, params) => ({ uuid: params?.uuid ?? config.getUUID(), include: (params?.include?.customFields ?? true) && 'custom', diff --git a/src/core/endpoints/objects/uuid/get_all.js b/src/core/endpoints/objects/uuid/get_all.js index 6d8439aad..25d9f2e55 100644 --- a/src/core/endpoints/objects/uuid/get_all.js +++ b/src/core/endpoints/objects/uuid/get_all.js @@ -38,8 +38,6 @@ const endpoint: EndpointConfig true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('user'), - prepareParams: (_modules, params) => { const queryParams = {}; diff --git a/src/core/endpoints/objects/uuid/remove.js b/src/core/endpoints/objects/uuid/remove.js index 7fad22e93..bbbc6497c 100644 --- a/src/core/endpoints/objects/uuid/remove.js +++ b/src/core/endpoints/objects/uuid/remove.js @@ -27,8 +27,6 @@ const endpoint: EndpointConfig true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('user'), - prepareParams: ({ config }, params) => ({ uuid: params?.uuid ?? config.getUUID(), }), diff --git a/src/core/endpoints/objects/uuid/set.js b/src/core/endpoints/objects/uuid/set.js index 81ab8cfac..f898287a6 100644 --- a/src/core/endpoints/objects/uuid/set.js +++ b/src/core/endpoints/objects/uuid/set.js @@ -37,8 +37,6 @@ const endpoint: EndpointConfig = { isAuthSupported: () => true, - getAuthToken: ({ tokenManager }) => tokenManager.getToken('user'), - prepareParams: ({ config }, params) => ({ uuid: params?.uuid ?? config.getUUID(), include: (params?.include?.customFields ?? true) && 'custom', diff --git a/src/core/endpoints/spaces/create_space.js b/src/core/endpoints/spaces/create_space.js index 090e7a914..c27be610d 100644 --- a/src/core/endpoints/spaces/create_space.js +++ b/src/core/endpoints/spaces/create_space.js @@ -60,14 +60,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: SpacesObjectInput): string { - let token = - modules.tokenManager.getToken('space', incomingParams.id) || - modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: SpacesObjectInput diff --git a/src/core/endpoints/spaces/delete_space.js b/src/core/endpoints/spaces/delete_space.js index ae0c145dd..1bd9b6476 100644 --- a/src/core/endpoints/spaces/delete_space.js +++ b/src/core/endpoints/spaces/delete_space.js @@ -30,14 +30,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, spaceId: string): string { - let token = - modules.tokenManager.getToken('space', spaceId) || - modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams(): Object { return {}; } diff --git a/src/core/endpoints/spaces/get_space.js b/src/core/endpoints/spaces/get_space.js index 81a8ea576..0cc26f788 100644 --- a/src/core/endpoints/spaces/get_space.js +++ b/src/core/endpoints/spaces/get_space.js @@ -34,14 +34,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: SingleSpaceInput): string { - let token = - modules.tokenManager.getToken('space', incomingParams.spaceId) || - modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: SingleSpaceInput diff --git a/src/core/endpoints/spaces/get_spaces.js b/src/core/endpoints/spaces/get_spaces.js index cd1caa600..a0940c1bd 100644 --- a/src/core/endpoints/spaces/get_spaces.js +++ b/src/core/endpoints/spaces/get_spaces.js @@ -31,12 +31,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject): string { - let token = modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: SpaceListInput diff --git a/src/core/endpoints/spaces/update_space.js b/src/core/endpoints/spaces/update_space.js index 8b97dbc00..9aa386006 100644 --- a/src/core/endpoints/spaces/update_space.js +++ b/src/core/endpoints/spaces/update_space.js @@ -63,14 +63,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: SpacesObjectInput): string { - let token = - modules.tokenManager.getToken('space', incomingParams.id) || - modules.tokenManager.getToken('space'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: SpacesObjectInput diff --git a/src/core/endpoints/users/create_user.js b/src/core/endpoints/users/create_user.js index 8017ff35f..3fd95a9f9 100644 --- a/src/core/endpoints/users/create_user.js +++ b/src/core/endpoints/users/create_user.js @@ -60,14 +60,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: UsersObjectInput): string { - let token = - modules.tokenManager.getToken('user', incomingParams.id) || - modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: UsersObjectInput diff --git a/src/core/endpoints/users/delete_user.js b/src/core/endpoints/users/delete_user.js index acc460925..ce8a93ae0 100644 --- a/src/core/endpoints/users/delete_user.js +++ b/src/core/endpoints/users/delete_user.js @@ -30,14 +30,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, userId: string): string { - let token = - modules.tokenManager.getToken('user', userId) || - modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams(): Object { return {}; } diff --git a/src/core/endpoints/users/get_user.js b/src/core/endpoints/users/get_user.js index bffc2466a..3d554c859 100644 --- a/src/core/endpoints/users/get_user.js +++ b/src/core/endpoints/users/get_user.js @@ -35,14 +35,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: SingleUserInput): string { - let token = - modules.tokenManager.getToken('user', incomingParams.userId) || - modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: SingleUserInput diff --git a/src/core/endpoints/users/get_users.js b/src/core/endpoints/users/get_users.js index 719a25f8a..5fd60151a 100644 --- a/src/core/endpoints/users/get_users.js +++ b/src/core/endpoints/users/get_users.js @@ -30,12 +30,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject): string { - let token = modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: UserListInput diff --git a/src/core/endpoints/users/update_user.js b/src/core/endpoints/users/update_user.js index a5bf930a3..daaa83a0d 100644 --- a/src/core/endpoints/users/update_user.js +++ b/src/core/endpoints/users/update_user.js @@ -63,14 +63,6 @@ export function isAuthSupported() { return true; } -export function getAuthToken(modules: ModulesInject, incomingParams: UsersObjectInput): string { - let token = - modules.tokenManager.getToken('user', incomingParams.id) || - modules.tokenManager.getToken('user'); - - return token; -} - export function prepareParams( modules: ModulesInject, incomingParams: UsersObjectInput diff --git a/src/core/flow_interfaces.js b/src/core/flow_interfaces.js index 17c9ea980..d5547fc4a 100644 --- a/src/core/flow_interfaces.js +++ b/src/core/flow_interfaces.js @@ -64,15 +64,9 @@ export type InternalSetupStruct = { suppressLev: ?boolean, - db: Function, // get / set implementation to store data networking: Function // component of networking to use } -type DatabaseInterface = { - get: Function, - set: Function -} - type EndpointKeyDefinition = { required: boolean } @@ -439,15 +433,18 @@ type GrantArguments = { // Base permissions object interface GrantTokenObject { - create: boolean, read: boolean, write: boolean, manage: boolean, delete: boolean, + get: boolean, + update: boolean, + join: boolean } interface GrantTokenInput { ttl: number, + authorizedUuid: String, resources?: { channels?: { [key: String]: GrantTokenObject, @@ -455,12 +452,9 @@ interface GrantTokenInput { groups?: { [key: String]: GrantTokenObject, }, - users?: { + uuids?: { [key: String]: GrantTokenObject, - }, - spaces?: { - [key: String]: GrantTokenObject, - }, + } }, patterns?: { channels?: { @@ -469,12 +463,9 @@ interface GrantTokenInput { groups?: { [key: String]: GrantTokenObject, }, - users?: { - [key: String]: GrantTokenObject, - }, - spaces?: { + uuids?: { [key: String]: GrantTokenObject, - }, + } }, meta?: Object } @@ -485,26 +476,6 @@ interface GrantTokenOutput extends GrantTokenInput { signature: Buffer } -// token manager - -type TokensDefinition = { - user?: string, - space?: string, - users?: { - [key: String]: String - }, - spaces?: { - [key: String]: String - } -}; - -type GetTokensInput= { - user?: boolean, - space?: boolean, - users?: Array, - spaces?: Array -}; - // publish type PublishResponse = { diff --git a/src/core/pubnub-common.js b/src/core/pubnub-common.js index 63894b4ed..ef5e5922b 100644 --- a/src/core/pubnub-common.js +++ b/src/core/pubnub-common.js @@ -137,6 +137,10 @@ import * as leaveSpacesEndpointConfig from './endpoints/memberships/leave_spaces import * as auditEndpointConfig from './endpoints/access_manager/audit'; import * as grantEndpointConfig from './endpoints/access_manager/grant'; import * as grantTokenEndpointConfig from './endpoints/access_manager/grant_token'; +import revokeTokenEndpointConfig, { + type RevokeTokenParams, + type RevokeTokenResult, +} from './endpoints/access_manager/revoke_token'; import * as publishEndpointConfig from './endpoints/publish'; import * as signalEndpointConfig from './endpoints/signal'; @@ -188,6 +192,10 @@ export default class { grant: Function; grantToken: Function; audit: Function; + revokeToken: ( + parameters: RevokeTokenParams, + callback?: (status: CallbackStatus, result: RevokeTokenResult) => void + ) => Promise; // subscribe: Function; signal: Function; @@ -328,10 +336,7 @@ export default class { parseToken: Function; setToken: Function; - setTokens: Function; getToken: Function; - getTokens: Function; - clearTokens: Function; getAuthKey: Function; setAuthKey: Function; @@ -353,9 +358,9 @@ export default class { // constructor(setup: InternalSetupStruct) { - let { db, networking, cbor } = setup; + let { networking, cbor } = setup; - const config = (this._config = new Config({ setup, db })); + const config = (this._config = new Config({ setup })); const crypto = new Crypto({ config }); // LEGACY const cryptography = setup.cryptography; @@ -409,10 +414,7 @@ export default class { this.parseToken = tokenManager.parseToken.bind(tokenManager); this.setToken = tokenManager.setToken.bind(tokenManager); - this.setTokens = tokenManager.setTokens.bind(tokenManager); this.getToken = tokenManager.getToken.bind(tokenManager); - this.getTokens = tokenManager.getTokens.bind(tokenManager); - this.clearTokens = tokenManager.clearTokens.bind(tokenManager); /* channel groups */ this.channelGroups = { @@ -438,6 +440,7 @@ export default class { this.grant = endpointCreator.bind(this, modules, grantEndpointConfig); this.grantToken = endpointCreator.bind(this, modules, grantTokenEndpointConfig); this.audit = endpointCreator.bind(this, modules, auditEndpointConfig); + this.revokeToken = endpointCreator.bind(this, modules, revokeTokenEndpointConfig); // this.publish = endpointCreator.bind(this, modules, publishEndpointConfig); diff --git a/src/crypto/modules/web.js b/src/crypto/modules/web.js index 86a9b3fa1..7dbc71c1b 100644 --- a/src/crypto/modules/web.js +++ b/src/crypto/modules/web.js @@ -1,10 +1,10 @@ /** @flow */ - -import crypto, { type $CryptoKey } from 'isomorphic-webcrypto'; - import type { ICryptography } from '../'; import type { IFile, FileClass } from '../../file'; +// This version of flow doesn't know about the Web Crypto API +declare var crypto: any; + function concatArrayBuffer(ab1: ArrayBuffer, ab2: ArrayBuffer): ArrayBuffer { const tmp = new Uint8Array(ab1.byteLength + ab2.byteLength); @@ -66,17 +66,13 @@ export default class WebCryptography implements ICryptography { + async getKey(key: string): Promise { const bKey = Buffer.from(key); const abHash = await crypto.subtle.digest('SHA-256', bKey.buffer); @@ -85,19 +81,19 @@ export default class WebCryptography implements ICryptography= this._maxSubDomain) { - this._currentSubDomain = 1; + if (this._currentSubDomain >= this._config.origin.length) { + this._currentSubDomain = 0; } - newSubDomain = this._currentSubDomain.toString(); + const origin = this._config.origin[this._currentSubDomain]; - return this._providedFQDN.replace('ps.pndsn.com', `ps${newSubDomain}.pndsn.com`); + return `${protocol}${origin}`; } hasModule(name: string) { diff --git a/src/networking/modules/web-node.js b/src/networking/modules/web-node.js index 801eb547a..a43e57623 100644 --- a/src/networking/modules/web-node.js +++ b/src/networking/modules/web-node.js @@ -54,7 +54,9 @@ function xdr(superagentConstruct: superagent, endpoint: EndpointDefinition, call sc = sc.buffer(false); } - return sc.timeout(endpoint.timeout).end((err, resp) => { + sc = sc.timeout(endpoint.timeout); + + sc.end((err, resp) => { let parsedResponse; let status: StatusAnnouncement = {}; status.error = err !== null; @@ -112,6 +114,8 @@ function xdr(superagentConstruct: superagent, endpoint: EndpointDefinition, call return callback(status, parsedResponse); }); + + return sc; } export async function postfile( diff --git a/src/react_native/index.js b/src/react_native/index.js index cc6799f17..aa4138277 100644 --- a/src/react_native/index.js +++ b/src/react_native/index.js @@ -1,6 +1,7 @@ /* @flow */ import CborReader from 'cbor-sync'; +import { Buffer } from 'buffer'; import PubNubCore from '../core/pubnub-common'; import Networking from '../networking'; import Database from '../db/common'; @@ -11,6 +12,8 @@ import { InternalSetupStruct } from '../core/flow_interfaces'; import PubNubFile from '../file/modules/react-native'; +global.Buffer = global.Buffer || Buffer; + export default class extends PubNubCore { constructor(setup: InternalSetupStruct) { setup.db = new Database(); diff --git a/test/contract/cucumber.ts b/test/contract/cucumber.ts new file mode 100644 index 000000000..69e2f79b1 --- /dev/null +++ b/test/contract/cucumber.ts @@ -0,0 +1,2 @@ +const options = `--format-options '{"snippetInterface": "synchronous"}'`; +export default options; \ No newline at end of file diff --git a/test/contract/enums.ts b/test/contract/enums.ts new file mode 100644 index 000000000..8ba2ecbc0 --- /dev/null +++ b/test/contract/enums.ts @@ -0,0 +1,15 @@ +export enum ACCESS_PERMISSION { + READ = "read", + WRITE = "write", + GET = "get", + MANAGE = "manage", + UPDATE = "update", + JOIN = "join", + DELETE = "delete" +} + +export enum RESOURCE_TYPE { + CHANNEL = "channels", + CHANNEL_GROUP = "groups", + UUID = "uuids" + } \ No newline at end of file diff --git a/test/contract/hooks.ts b/test/contract/hooks.ts new file mode 100644 index 000000000..3829cbe14 --- /dev/null +++ b/test/contract/hooks.ts @@ -0,0 +1,63 @@ +import { Before, After, AfterStep } from '@cucumber/cucumber'; +import * as http from 'http'; +const mockServerScriptFileTagPrefix = '@contract='; + +/** + * this is run before each scenario + * + * check if scenario tag includes a script file + * call init endpoint on mock server + */ +Before(async function (scenario) { + let scriptFile = checkMockServerScriptFile(scenario); + + if (scriptFile) { + return new Promise((resolve) => { + http.get(`http://${this.settings.contractServer}/init?__contract__script__=${scriptFile}`, () => { + resolve(); + }); + }); + } +}); + +After(async function (scenario) { + let scriptFile = checkMockServerScriptFile(scenario); + + this.stopPubnub(); + + if (scriptFile && this.settings.checkContractExpectations) { + const contractResult = await this.checkContract(); + + if ( + contractResult?.expectations?.pending?.length !== 0 || + contractResult?.expectations?.failed?.length !== 0 + ) { + console.log('Contract Expectations', contractResult?.expectations) + throw new Error(`The scenario failed due to contract server expectations [${scenario.pickle.name}]`); + } + } +}); + +AfterStep(async function (scenario) { + let scriptFile = checkMockServerScriptFile(scenario); + + if (scriptFile && this.settings.checkContractExpectations) { + const contractResult = await this.checkContract(); + + if (contractResult?.expectations?.failed?.length !== 0) { + throw new Error("The step failed due to contract server expectations."); + } + } +}); + +function checkMockServerScriptFile(scenario) { + let mockServerFileName; + + scenario.pickle.tags.forEach(tag => { + if (tag.name.indexOf(mockServerScriptFileTagPrefix) === 0) { + mockServerFileName = tag.name.substring(mockServerScriptFileTagPrefix.length); + } + }); + + return mockServerFileName; +} \ No newline at end of file diff --git a/test/contract/parameter_types.ts b/test/contract/parameter_types.ts new file mode 100644 index 000000000..765463889 --- /dev/null +++ b/test/contract/parameter_types.ts @@ -0,0 +1,17 @@ +import { defineParameterType } from '@cucumber/cucumber'; +import { + RESOURCE_TYPE, + ACCESS_PERMISSION +} from './enums'; + +defineParameterType({ + name: 'resource_type', + regexp: new RegExp(Object.keys(RESOURCE_TYPE).join("|")), + transformer: enum_value => RESOURCE_TYPE[enum_value] +}); + +defineParameterType({ + name: 'access_permission', + regexp: new RegExp(Object.keys(ACCESS_PERMISSION).join("|")), + transformer: enum_value => ACCESS_PERMISSION[enum_value] +}); \ No newline at end of file diff --git a/test/contract/steps/access/auth.ts b/test/contract/steps/access/auth.ts new file mode 100644 index 000000000..6595a3c98 --- /dev/null +++ b/test/contract/steps/access/auth.ts @@ -0,0 +1,65 @@ +import { Given, When, Then, Before, After } from '@cucumber/cucumber'; +import { expect } from 'chai'; + +Given('I have a keyset with access manager enabled - without secret key', function() { + this.keyset = this.fixtures.accessManagerWithoutSecretKeyKeyset; +}); + +Given('a valid token with permissions to publish with channel {string}', function(channel) { + this.token = `this_represents_valid_token_with_write_permissions_to_channel_${channel}`; +}); + +Given('an expired token with permissions to publish with channel {string}', function(channel) { + this.token = `this_represents_expired_token_with_write_permissions_to_channel_${channel}`; +}); + +When('I publish a message using that auth token with channel {string}', async function(channel) { + expect(this.token).not.to.be.empty; + const pubnub = await this.getPubnub({ + publishKey: this.keyset.publishKey, + subscribeKey: this.keyset.subscribeKey + }); + pubnub.setToken(this.token); + + this.publishResult = await pubnub.publish({ + message: "hello!", + channel: channel, + }); +}); + +When('I attempt to publish a message using that auth token with channel {string}', async function(channel) { + expect(this.token).not.to.be.empty; + const pubnub = await this.getPubnub({ + publishKey: this.keyset.publishKey, + subscribeKey: this.keyset.subscribeKey + }); + pubnub.setToken(this.token); + try { + const result = await pubnub.publish({ + message: "hello!", + channel: channel, + }); + } catch (e: any) { + this.expectedError = e?.status?.errorData; + } +}); + +Then('the result is successful', function () { + console.log(this.publishResult) + expect(this.publishResult).to.not.to.equal(undefined); + expect(this.publishResult.timetoken).to.not.to.equal(undefined); +}); + +Then('the auth error flag is true', function() { + expect(this.expectedError.error).to.equal(true); +}); + +Then('an auth error is returned', function () {console.log(this.expectedError) + expect(this.expectedError.status).to.be.a('number'); + + expect(this.expectedError.error).to.be.true; +}); + +Then('the auth error message is {string}', function (errorMessage) { + expect(this.expectedError.message).to.equal(errorMessage); +}); diff --git a/test/contract/steps/access/grant_token.ts b/test/contract/steps/access/grant_token.ts new file mode 100644 index 000000000..fc53e7ee9 --- /dev/null +++ b/test/contract/steps/access/grant_token.ts @@ -0,0 +1,214 @@ +import { Given, When, Then, Before, After } from '@cucumber/cucumber'; +import { expect } from 'chai'; +import { + ACCESS_PERMISSION, + RESOURCE_TYPE +} from '../../enums.js'; + +// Before({ tags: '@contract=grantAllPermissions' }, function () { +// this.grantPayload = {}; +// }); + +Before(function () { + this.grantPayload = {}; +}); + +Given('I have a keyset with access manager enabled', function() { + this.keyset = this.fixtures.accessManagerKeyset; +}); + +Given('the authorized UUID {string}', function(uuid: string) { + this.grantPayload.authorized_uuid = uuid; +}); + +Given('the TTL {int}', function(ttl: number) { + this.grantPayload.ttl = ttl; +}); + +Given('the {string} {resource_type} resource access permissions', function(resourceName: string, resourceType: RESOURCE_TYPE) { + this.resourceName = resourceName; + this.resourceType = resourceType; + + this.grantPayload.resources = this.grantPayload.resources || {}; + this.grantPayload.resources[this.resourceType] = this.grantPayload.resources[this.resourceType] || {}; + + this.grantPayload.resources[this.resourceType][this.resourceName] = {}; +}); + +Given('the {string} {resource_type} pattern access permissions', function(resourceName: string, resourceType: RESOURCE_TYPE) { + this.resourceName = resourceName; + this.resourceType = resourceType; + + this.grantPayload.patterns = this.grantPayload.patterns || {}; + this.grantPayload.patterns[this.resourceType] = this.grantPayload.patterns[this.resourceType] || {}; + + this.grantPayload.patterns[this.resourceType][this.resourceName] = {}; +}); + +Given('grant resource permission {access_permission}', function(accessPermission: ACCESS_PERMISSION) { + this.grantPayload.resources[this.resourceType][this.resourceName][accessPermission] = true; +}); + +Given('deny resource permission {access_permission}', function(accessPermission: ACCESS_PERMISSION) { + this.grantPayload.resources[this.resourceType][this.resourceName][accessPermission] = false; +}); + +Given('grant pattern permission {access_permission}', function(accessPermission: ACCESS_PERMISSION) { + this.grantPayload.patterns[this.resourceType][this.resourceName][accessPermission] = true; +}); + +Given('deny pattern permission {access_permission}', function(accessPermission: ACCESS_PERMISSION) { + this.grantPayload.patterns[this.resourceType][this.resourceName][accessPermission] = false; +}); + +When('I grant a token specifying those permissions', async function() { + const pubnub = await this.getPubnub({ + publishKey: this.keyset.publishKey, + subscribeKey: this.keyset.subscribeKey, + secretKey: this.keyset.secretKey + }); + + this.token = await pubnub.grantToken(this.grantPayload); + expect(this.token).not.to.be.empty; + // console.log('token', this.token); + this.parsedToken = pubnub.parseToken(this.token); + expect(this.parsedToken).to.exist; + // console.log('parsed token', JSON.stringify(this.parsedToken, null, 2)); +}); + +When('I attempt to grant a token specifying those permissions', async function() { + const pubnub = await this.getPubnub({ + publishKey: this.keyset.publishKey, + subscribeKey: this.keyset.subscribeKey, + secretKey: this.keyset.secretKey + }); + + try { + this.token = await pubnub.grantToken(this.grantPayload); + // console.log('not expected token', this.token) + } catch (e: any) { + // console.log('expected error', e) + this.expectedError = e?.status?.errorData; + } + expect(this.expectedError).not.to.be.undefined; +}); + +Then('the token contains the TTL {int}', function(ttl: number) { + expect(this.parsedToken.ttl).to.equal(ttl); +}); + +Then('the token contains the authorized UUID {string}', function(uuid: string) { + expect(this.parsedToken.authorized_uuid).to.equal(uuid); +}); + +Then('the token has {string} {resource_type} resource access permissions', function(resourceName: string, resourceType: RESOURCE_TYPE) { + this.resourceName = resourceName; + this.resourceType = resourceType; + expect(this.parsedToken.resources[this.resourceType]).to.exist; + expect(this.parsedToken.resources[this.resourceType][this.resourceName]).to.exist; +}); + +Then('the token has {string} {resource_type} pattern access permissions', function(resourceName: string, resourceType: RESOURCE_TYPE) { + this.resourceName = resourceName; + this.resourceType = resourceType; + + expect(this.parsedToken.patterns[this.resourceType]).to.exist; + expect(this.parsedToken.patterns[this.resourceType][this.resourceName]).to.exist; +}); + +Then('token resource permission {access_permission}', function(accessPermission: ACCESS_PERMISSION) { + expect(this.parsedToken.resources[this.resourceType][this.resourceName][accessPermission]).to.be.true; +}); + +Then('token pattern permission {access_permission}', function(accessPermission: ACCESS_PERMISSION) { + expect(this.parsedToken.patterns[this.resourceType][this.resourceName][accessPermission]).to.be.true; +}); + +Then('the token does not contain an authorized uuid', function () { + expect(this.parsedToken.uuid).to.be.undefined; +}); + +Then('an error is returned', function () { + expect(this.expectedError.status).to.be.a('number'); + + expect(this.expectedError.error).to.be.an('object'); + expect(this.expectedError.error).to.have.keys([ 'message', 'source', 'details' ]); + + expect(this.expectedError.error.message).to.be.a('string'); + + expect(this.expectedError.error.source).to.be.a('string'); + + expect(this.expectedError.error.details).to.be.an('array'); + expect(this.expectedError.error.details).to.have.lengthOf.at.least(1); + + let details = this.expectedError.error.details[0]; + + expect(details).to.be.an('object'); + expect(details).to.have.keys([ 'message', 'location', 'locationType' ]); + + expect(details.message).to.be.a('string'); + expect(details.location).to.be.a('string'); + expect(details.locationType).to.be.a('string'); +}); + +Then('the error status code is {int}', function (statusCode: number) { + expect(this.expectedError.status).to.equal(statusCode); +}); + +Then('the error message is {string}', function (errorMessage) { + expect(this.expectedError.error.message).to.equal(errorMessage); +}); + +Then('the error service is {string}', function (errorService) { + expect(this.expectedError.service).to.equal(errorService); +}); + +Then('the error source is {string}', function (errorSource: string) { + expect(this.expectedError.error.source).to.equal(errorSource); +}); + +Then('the error detail message is {string}', function (detailsMessage) { + let details = this.expectedError.error.details[0]; + expect(details.message).to.equal(detailsMessage); +}); + +Then('the error detail message is not empty', function () { + let details = this.expectedError.error.details[0]; + expect(details.message).to.not.to.be.empty; +}); + +Then('the error detail location is {string}', function (errorLocation: string) { + let details = this.expectedError.error.details[0]; + expect(details.location).to.equal(errorLocation); +}); + +Then('the error detail location type is {string}', function (errorLocationType: string) { + let details = this.expectedError.error.details[0]; + expect(details.locationType).to.equal(errorLocationType); +}); + +Given('I have a known token containing an authorized UUID', function() { + this.token = this.fixtures.tokenWithKnownAuthorizedUUID; +}); + +Given('I have a known token containing UUID resource permissions', function() { + this.token = this.fixtures.tokenWithUUIDResourcePermissions; +}); + +Given('I have a known token containing UUID pattern Permissions', function() { + this.token = this.fixtures.tokenWithUUIDPatternPermissions; +}); + +When('I parse the token', function() { + expect(this.token).not.to.be.empty; + let pubnub = this.getPubnub({ + publishKey: this.keyset.publishKey, + subscribeKey: this.keyset.subscribeKey + }); + this.parsedToken = pubnub.parseToken(this.token); +}); + +Then('the parsed token output contains the authorized UUID {string}', function(uuid) { + expect(this.parsedToken).to.exist; + expect(this.parsedToken.authorized_uuid).to.equal(uuid); +}); diff --git a/test/contract/steps/access/revoke_token.ts b/test/contract/steps/access/revoke_token.ts new file mode 100644 index 000000000..5939f50fe --- /dev/null +++ b/test/contract/steps/access/revoke_token.ts @@ -0,0 +1,29 @@ +import { Given, When, Then, Before, After } from '@cucumber/cucumber'; +import { expect } from 'chai'; + +Given('a token', function() { + this.token = `this_represents_valid_token`; +}); + +When('I revoke a token', async function() { + const pubnub = await this.getPubnub({ + publishKey: this.keyset.publishKey, + subscribeKey: this.keyset.subscribeKey, + secretKey: this.keyset.secretKey + }); + + try { + this.revokeTokenResult = await pubnub.revokeToken(this.token); + } catch (e: any) { + this.expectedError = e?.status?.errorData; + } +}); + +Then('I get confirmation that token has been revoked', function() { + expect(this.revokeTokenResult.status).to.equal(200); + expect(this.revokeTokenResult.data.message).to.equal("Success"); +}); + +Given('the token string {string}', function (token) { + this.token = token; +}); \ No newline at end of file diff --git a/test/contract/steps/common.ts b/test/contract/steps/common.ts new file mode 100644 index 000000000..62201fec9 --- /dev/null +++ b/test/contract/steps/common.ts @@ -0,0 +1,6 @@ +import { Given } from '@cucumber/cucumber'; + +Given('the demo keyset', function() { + this.keyset = this.fixtures.demoKeyset; +}); + \ No newline at end of file diff --git a/test/contract/steps/subscribe/simple-subscribe.ts b/test/contract/steps/subscribe/simple-subscribe.ts new file mode 100644 index 000000000..2af52c719 --- /dev/null +++ b/test/contract/steps/subscribe/simple-subscribe.ts @@ -0,0 +1,55 @@ +import { When, Then } from '@cucumber/cucumber'; +import { expect } from 'chai'; + +When('I subscribe to channel {string}', async function(channel) { + // remember the channel we subscribed to + this.channel = channel; + let pubnub = this.getPubnub({ + publishKey: this.keyset.publishKey, + subscribeKey: this.keyset.subscribeKey + }); + + let connectedResponse = new Promise(((resolveConnected) => { + this.subscribeResponse = new Promise(((resolveSubscribe) => { + pubnub.addListener({ + status: function(statusEvent) { console.log('status', statusEvent.category) + // Once the SDK fires this event + if (statusEvent.category === "PNConnectedCategory") { + resolveConnected(); + } + }, + message: (m) => { + // remember the message received to compare and then resolve the promise + this.message = m.message; + resolveSubscribe(); + } + }); + })); + })); + + pubnub.subscribe({ channels: [ this.channel ] }); + + // return the promise so the next cucumber step waits for the sdk to return connected status + return connectedResponse; +}); + +When('I publish the message {string} to channel {string}', async function(message, channel) { + // ensure the channel we subscribed to is the same we publish to + expect(channel).to.equal(this.channel); + + // returning the promise so the next cucumber step will wait for the publish to complete + return this.getPubnub().publish({ + message: message, + channel: channel + }); +}); + +Then('I receive the message in my subscribe response', async function() { + // wait for the message to be received by the subscription and then + // check the expected message matches the message received + await this.subscribeResponse; + expect('hello').to.equal(this.message); + + // allow the subscribe loop to continue and then clean up + return this.delayCleanup(); +}); diff --git a/test/contract/tsconfig.json b/test/contract/tsconfig.json new file mode 100644 index 000000000..40b25e11d --- /dev/null +++ b/test/contract/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@tsconfig/node12/tsconfig.json", + "compilerOptions": { + "preserveConstEnums": true, + "noImplicitAny": false, + "outDir": "../../dist/cucumber/" + }, + "include": ["**/*"], + "exclude": ["node_modules"] + } \ No newline at end of file diff --git a/test/contract/world.ts b/test/contract/world.ts new file mode 100644 index 000000000..3ffa6c2e5 --- /dev/null +++ b/test/contract/world.ts @@ -0,0 +1,131 @@ +import { + setWorldConstructor, + setDefaultTimeout, + World +} from '@cucumber/cucumber'; +import PubNub from '../../lib/node/index.js'; +import * as http from 'http'; + +interface State { + pubnub: PubNub; +} + +const state: State = { + pubnub: undefined, +}; + +setDefaultTimeout(20 * 1000); +class PubnubWorld extends World{ + settings = { + checkContractExpectations: true, + contractServer: 'localhost:8090', + }; + + fixtures = { + // bronze config + // defaultConfig: { + // origin: 'balancer-bronze1.aws-pdx-1.ps.pn', + // ssl: false, + // suppressLeaveEvents: true, + // logVerbosity: true + // }, + // local contract server config + defaultConfig: { + origin: 'localhost:8090', + ssl: false, + suppressLeaveEvents: true, + logVerbosity: false, + uuid: 'myUUID' + }, + demoKeyset: { + publishKey : 'demo', + subscribeKey : 'demo', + }, + accessManagerKeyset: { + publishKey : process.env.PUBLISH_KEY_ACCESS || 'pub-key', + subscribeKey : process.env.SUBSCRIBE_KEY_ACCESS || 'sub-key', + secretKey: process.env.SECRET_KEY_ACCESS || 'secret-key' + }, + accessManagerWithoutSecretKeyKeyset: { + publishKey : process.env.PUBLISH_KEY_ACCESS || 'pub-key', + subscribeKey : process.env.SUBSCRIBE_KEY_ACCESS || 'sub-key', + }, + tokenWithKnownAuthorizedUUID: 'qEF2AkF0GmEI03xDdHRsGDxDcmVzpURjaGFuoWljaGFubmVsLTEY70NncnChb2NoYW5uZWxfZ3JvdXAtMQVDdXNyoENzcGOgRHV1aWShZnV1aWQtMRhoQ3BhdKVEY2hhbqFtXmNoYW5uZWwtXFMqJBjvQ2dycKF0XjpjaGFubmVsX2dyb3VwLVxTKiQFQ3VzcqBDc3BjoER1dWlkoWpedXVpZC1cUyokGGhEbWV0YaBEdXVpZHR0ZXN0LWF1dGhvcml6ZWQtdXVpZENzaWdYIPpU-vCe9rkpYs87YUrFNWkyNq8CVvmKwEjVinnDrJJc', + tokenWithUUIDResourcePermissions: 'qEF2AkF0GmEI03xDdHRsGDxDcmVzpURjaGFuoWljaGFubmVsLTEY70NncnChb2NoYW5uZWxfZ3JvdXAtMQVDdXNyoENzcGOgRHV1aWShZnV1aWQtMRhoQ3BhdKVEY2hhbqFtXmNoYW5uZWwtXFMqJBjvQ2dycKF0XjpjaGFubmVsX2dyb3VwLVxTKiQFQ3VzcqBDc3BjoER1dWlkoWpedXVpZC1cUyokGGhEbWV0YaBEdXVpZHR0ZXN0LWF1dGhvcml6ZWQtdXVpZENzaWdYIPpU-vCe9rkpYs87YUrFNWkyNq8CVvmKwEjVinnDrJJc', + tokenWithUUIDPatternPermissions: 'qEF2AkF0GmEI03xDdHRsGDxDcmVzpURjaGFuoWljaGFubmVsLTEY70NncnChb2NoYW5uZWxfZ3JvdXAtMQVDdXNyoENzcGOgRHV1aWShZnV1aWQtMRhoQ3BhdKVEY2hhbqFtXmNoYW5uZWwtXFMqJBjvQ2dycKF0XjpjaGFubmVsX2dyb3VwLVxTKiQFQ3VzcqBDc3BjoER1dWlkoWpedXVpZC1cUyokGGhEbWV0YaBEdXVpZHR0ZXN0LWF1dGhvcml6ZWQtdXVpZENzaWdYIPpU-vCe9rkpYs87YUrFNWkyNq8CVvmKwEjVinnDrJJc', + }; + + constructor(options) { + super(options); + } + + stopPubnub() { + state?.pubnub?.stop(); + state.pubnub = undefined; + } + + getPubnub(config = undefined) { + if (config) { + // initialize instance of pubnub if config is passed + // otherwise assume it is already initialied + this.stopPubnub(); + state.pubnub = new PubNub(Object.assign({}, this.fixtures.defaultConfig, config)); + } + + return state.pubnub; + } + + async checkContract() { + return new Promise((resolve) => { + http.get(`http://${this.settings.contractServer}/expect`, (response) => { + + let data: any = ''; + + response.on('data', (chunk) => { + data += chunk; + }); + + response.on('end', () => { + let result; + + try { + result = JSON.parse(data); + } catch (e) { + console.log("error fetching expect results", e); + console.log(data); + } + resolve(result); + }); + + }); + }); + } + + /** + * Disconnect pubnub subscribe loop + * + * TODO: fix JS SDK so that we can choose when to end the loop explicitly + * or atleast get a promise to tell us when it is complete. + */ + async cleanup(delayInMilliseconds) { + + if (!delayInMilliseconds) { + this.getPubnub().unsubscribeAll(); + } else { + return new Promise((resolve) => { + // allow a specified delay for subscribe loop before disconnecting + setTimeout(() => { + this.stopPubnub(); + resolve(); + }, delayInMilliseconds); + }); + } + } + + async delayCleanup() { + return this.cleanup(300); + } + +} + +setWorldConstructor(PubnubWorld); \ No newline at end of file diff --git a/test/dist/react-native.test.js b/test/dist/react-native.test.js index efce4e99f..949168e22 100644 --- a/test/dist/react-native.test.js +++ b/test/dist/react-native.test.js @@ -1,13 +1,12 @@ import fetch from 'node-fetch'; import { expect } from 'chai'; import PubNub from '../../src/react_native'; +import nock from "nock"; global.fetch = fetch; let pubnub; -let listener = null; - let channelSuffix = new Date().getTime() + (Math.random()); let myChannel1 = `mychannel1${channelSuffix}`; @@ -15,43 +14,46 @@ let myChannel2 = `mychannel2${channelSuffix}`; // let myChanneGroup1 = `myChannelGroup1${channelSuffix}`; describe('#distribution test (rkt-native)', function () { + after(function () { + pubnub.destroy(); + }); - before(function () { - pubnub = new PubNub({ subscribeKey: 'demo', publishKey: 'demo' }); + beforeEach(() => { + pubnub = new PubNub({ subscribeKey: 'demo', publishKey: 'demo', uuid: 'myUUID' }); }); - after(function () { - pubnub.destroy(); + afterEach(() => { + pubnub.removeAllListeners(); + pubnub.unsubscribeAll(); + pubnub.stop(); }); it('should have to subscribe a channel', (done) => { - listener = { + pubnub.addListener({ status: (st) => { expect(st.operation).to.be.equal('PNSubscribeOperation'); + pubnub.unsubscribeAll() done(); } - }; - - pubnub.addListener(listener); + }); pubnub.subscribe({channels: [myChannel1]}); }); it('should have to receive message from a channel', (done) => { - pubnub.disconnect(); - pubnub.removeListener(listener); - pubnub.reconnect(); - - listener = { + pubnub.addListener({ + status: (st) => { + if (st.operation === 'PNSubscribeOperation') { + pubnub.publish({ channel: myChannel2, message: { text: 'hello React-Native SDK' }}); + } + }, message: (m) => { expect(m.channel).to.be.equal(myChannel2); expect(m.message.text).to.be.equal('hello React-Native SDK'); + pubnub.unsubscribeAll() done(); } - }; - - pubnub.addListener(listener); + }); pubnub.subscribe({channels: [myChannel2]}); - pubnub.publish({ channel: myChannel2, message: { text: 'hello React-Native SDK' }}); }); it('should have to set state', (done) => { @@ -120,24 +122,26 @@ describe('#distribution test (rkt-native)', function () { done(); }); + // TODO: fix test. it shouldn't rely on previous steps outcome. it('should have to unsubscribe', function (done) { - pubnub.disconnect(); - pubnub.removeListener(listener); - pubnub.reconnect(); - let finished = false; pubnub.addListener({ status: function (st) { - expect(st.operation).to.be.equal('PNUnsubscribeOperation'); - - if (!finished) { - // prevent calling done twice - finished = true; - done(); + if (st.operation === 'PNSubscribeOperation') { + pubnub.unsubscribe({channels: [myChannel1]}); + } else { + expect(st.operation).to.be.equal('PNUnsubscribeOperation'); + + if (!finished) { + // prevent calling done twice + finished = true; + pubnub.unsubscribeAll() + done(); + } } } }); - pubnub.unsubscribe({channels: [myChannel1]}); + pubnub.subscribe({channels: [myChannel1]}); }); -}); \ No newline at end of file +}); diff --git a/test/dist/web-titanium.test.js b/test/dist/web-titanium.test.js index a68527049..00d1a8e59 100644 --- a/test/dist/web-titanium.test.js +++ b/test/dist/web-titanium.test.js @@ -15,7 +15,7 @@ var myChanneGroup1 = 'myChannelGroup1' + channelSuffix; describe('#distribution test (titanium)', function () { before(function () { - pubnub = new PubNub({ subscribeKey: 'demo', publishKey: 'demo' }); + pubnub = new PubNub({ subscribeKey: 'demo', publishKey: 'demo', uuid: 'myUUID' }); }); after(function () { diff --git a/test/feature/file_upload.node.test.js b/test/feature/file_upload.node.test.js index ed00621bf..3478d3785 100644 --- a/test/feature/file_upload.node.test.js +++ b/test/feature/file_upload.node.test.js @@ -149,5 +149,40 @@ describe('File Upload API v1 tests', () => { expect(result.status).to.equal(200); }); + it('should handle encryption/decryption with explicit cipherKey', (done) => { + const testContent = `Hello world! ${new Date().toLocaleString()}`; + + pubnub.sendFile( + { + channel: CHANNEL_1, + file: { data: testContent, name: 'someFile.txt', mimeType: 'text/plain' }, + cipherKey: 'cipherKey' + }, + (err, result) => { + expect(err).to.be.null; + + expect(result.name).to.equal('someFile.txt'); + + pubnub.downloadFile( + { + channel: CHANNEL_1, + id: result.id, + name: result.name, + cipherKey: 'cipherKey' + }, + (err2, file) => { + fileId = result.id; + fileName = result.name; + + const output = file.toString('utf8').then((output) => { + expect(output).to.equal(testContent); + + done(); + }); + } + ); + } + ); + }).timeout(10000); } }); diff --git a/test/feature/file_upload.web.test.js b/test/feature/file_upload.web.test.js index 8f44ac194..438c44013 100644 --- a/test/feature/file_upload.web.test.js +++ b/test/feature/file_upload.web.test.js @@ -160,5 +160,30 @@ describe('test', () => { expect(result.status).to.equal(200); }); + it('should handle encryption/decryption with explicit cipherKey', async () => { + const testContent = `Hello world! ${new Date().toLocaleString()}`; + + const result = await pubnub.sendFile({ + channel: CHANNEL_1, + file: { data: testContent, name: 'someFile.txt', mimeType: 'text/plain' }, + cipherKey: 'cipherKey' + }); + + expect(result.name).to.equal('someFile.txt'); + + const file = await pubnub.downloadFile({ + channel: CHANNEL_1, + id: result.id, + name: result.name, + cipherKey: 'cipherKey' + }); + + fileId = result.id; + fileName = result.name; + + const output = await file.toString('utf8'); + + expect(output).to.equal(testContent); + }).timeout(10000); } }); diff --git a/test/integration/components/config.test.js b/test/integration/components/config.test.js index 9648dc78a..1331cb6a9 100644 --- a/test/integration/components/config.test.js +++ b/test/integration/components/config.test.js @@ -2,69 +2,66 @@ /* eslint no-console: 0, object-shorthand: 0 */ import assert from 'assert'; -import sinon from 'sinon'; -import lilUUID from 'lil-uuid'; -import PubNub from '../../../src/core/pubnub-common'; -import Networking from '../../../src/networking'; -import { get, post } from '../../../src/networking/modules/web-node'; -import { keepAlive, proxy } from '../../../src/networking/modules/node'; +import PubNub from '../../../src/node/index'; describe('components/config', () => { - describe('AuthKey Storage', () => { - let networking = new Networking({ keepAlive, get, post, proxy }); - let storageParams = { authKey: 'authKey1', networking: networking }; - const pubnub = new PubNub(storageParams); + describe('AuthKey parameter', () => { + it('get/set', () => { + let pubnub = new PubNub({ + subscribeKey: 'mySubKey', + publishKey: 'myPublishKey', + authKey: 'authKey1', + uuid: 'myUUID' + }); assert.equal(pubnub.getAuthKey(), 'authKey1'); pubnub.setAuthKey('authKey2'); assert.equal(pubnub.getAuthKey(), 'authKey2'); + }); }); - describe('UUID storage', () => { - let database = () => { - let db = {}; - return { - get: (key) => db[key], - set: (key, value) => { db[key] = value; } + describe('uuid Parameter', () => { + it('throws when not provided value', () => { + let config = { + subscribeKey: 'mySubKey', + publishKey: 'myPublishKey', + authKey: 'authKey1' }; - }; - - it('uses the UUID if it is provided in setup', () => { - let networking = new Networking({ keepAlive, get, post, proxy }); - let storageParams = { uuid: 'customUUID', networking: networking }; - const pubnub = new PubNub(storageParams); - assert.equal(pubnub.getUUID(), 'customUUID'); + assert.throws(() => { + new PubNub(config); + }); }); - it('generates the UUID if it is not provided', () => { - let networking = new Networking({ keepAlive, get, post, proxy }); - let storageParams = { networking: networking }; - const pubnub = new PubNub(storageParams); - assert.equal(lilUUID.isUUID(pubnub.getUUID().replace('pn-', '')), true); + it('get/set', () => { + let pubnub = new PubNub({ + subscribeKey: 'mySubKey', + publishKey: 'myPublishKey', + uuid: 'uuid1' + }); + assert.equal(pubnub.getUUID(), 'uuid1'); + pubnub.setUUID('uuid2'); + assert.equal(pubnub.getUUID(), 'uuid2'); }); - it('checks UUID from database if db object is provided', () => { - let dbInstance = database(); - let networking = new Networking({ keepAlive, get, post, proxy }); - sinon.spy(dbInstance, 'get'); - sinon.spy(dbInstance, 'set'); - let storageParams = { subscribeKey: 'mySubKey', db: dbInstance, networking: networking }; - const pubnub = new PubNub(storageParams); - assert.equal(dbInstance.get.callCount, 1); - assert.equal(dbInstance.get.getCall(0).args[0], 'mySubKeyuuid'); - assert.equal(lilUUID.isUUID(pubnub.getUUID().replace('pn-', '')), true); + it('throws when invalid value provided', () => { + let config = { + subscribeKey: 'mySubKey', + publishKey: 'myPublishKey', + uuid: ' ' + }; + assert.throws(() => { + new PubNub(config); + }); }); - it('uses UUID from database if db object is provided', () => { - let dbInstance = database(); - let networking = new Networking({ keepAlive, get, post, proxy }); - dbInstance.set('mySubKeyuuid', 'dbUUID'); - sinon.spy(dbInstance, 'get'); - sinon.spy(dbInstance, 'set'); - let storageParams = { subscribeKey: 'mySubKey', db: dbInstance, networking: networking }; - const pubnub = new PubNub(storageParams); - assert.equal(dbInstance.get.callCount, 2); - assert.equal(dbInstance.get.getCall(0).args[0], 'mySubKeyuuid'); - assert.equal(pubnub.getUUID(), 'dbUUID'); + it('setUUID throws while trying to set invalid uuid', () => { + let pubnub = new PubNub({ + subscribeKey: 'mySubKey', + publishKey: 'myPublishKey', + uuid: 'myUUID' + }); + assert.throws(() => { + pubnub.setUUID(' '); + }); }); }); }); diff --git a/test/integration/components/crypto.test.js b/test/integration/components/crypto.test.js index d0748900d..3e07707ba 100644 --- a/test/integration/components/crypto.test.js +++ b/test/integration/components/crypto.test.js @@ -8,6 +8,7 @@ describe('components/crypto useRandomIVs', () => { publishKey: 'demo-36', useRandomIVs: true, cipherKey: 'abcdef', + uuid: 'myUUID' }); it('should be able to encrypt and decrypt a message', () => { diff --git a/test/integration/components/token_manager.test.js b/test/integration/components/token_manager.test.js index 7beb35407..3dd26f60c 100644 --- a/test/integration/components/token_manager.test.js +++ b/test/integration/components/token_manager.test.js @@ -10,7 +10,8 @@ describe('#components/token_manager', () => { beforeEach(() => { pubnub = new PubNub({ subscribeKey: 'mySubKey', - publishKey: 'myPublishKey' + publishKey: 'myPublishKey', + uuid: 'myUUID' }); }); @@ -22,222 +23,64 @@ describe('#components/token_manager', () => { }); it('contains correct permissions', () => { - let tokenWithAll = 'p0F2AkF0Gl2BgxZDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KhZXVzZXIxAUNzcGOhZnNwYWNlMQFDcGF0pERjaGFuoENncnCgQ3VzcqFiLioBQ3NwY6FiLioBRG1ldGGgQ3NpZ1ggG1j7rl-TpxtWYDIcPFvR-cqFGXVWvm8r5YBaCLhy5-Y='; + let tokenWithAll = 'p0F2AkF0GmEK-4NDdHRsGDxDcmVzpURjaGFuoWhjaGFubmVsMQFDZ3JwoWZncm91cDEBQ3VzcqBDc3BjoER1dWlkoWV1c2VyMQFDcGF0pURjaGFuoWIuKgFDZ3JwoWIuKgFDdXNyoENzcGOgRHV1aWShYi4qAURtZXRhoENzaWdYII5bQpWLi6Z-l5jbShWxZ7QL6o8Dz6_vxluhxrMGzQCN'; let permissions = pubnub.parseToken(tokenWithAll); assert(permissions.version === 2); - assert(permissions.timestamp === 1568768790); - assert(permissions.ttl === 1440); + assert(permissions.timestamp === 1628109699); + assert(permissions.ttl === 60); assert(permissions.meta === undefined); assert(permissions.signature instanceof Buffer); assert(typeof permissions.resources === 'object'); - assert(typeof permissions.resources.users === 'object'); - assert(typeof permissions.resources.spaces === 'object'); + assert(typeof permissions.resources.uuids === 'object'); + assert(typeof permissions.resources.channels === 'object'); + assert(typeof permissions.resources.groups === 'object'); assert(typeof permissions.patterns === 'object'); - assert(typeof permissions.patterns.users === 'object'); - assert(typeof permissions.patterns.spaces === 'object'); + assert(typeof permissions.patterns.uuids === 'object'); + assert(typeof permissions.patterns.channels === 'object'); + assert(typeof permissions.patterns.groups === 'object'); - assert(permissions.resources.users.user1.read === true); - assert(permissions.resources.spaces.space1.read === true); + assert(permissions.resources.uuids.user1.read === true); + assert(permissions.resources.channels.channel1.read === true); + assert(permissions.resources.groups.group1.read === true); - assert(permissions.patterns.users['.*'].read === true); - assert(permissions.patterns.spaces['.*'].read === true); + assert(permissions.patterns.uuids['.*'].read === true); + assert(permissions.patterns.channels['.*'].read === true); + assert(permissions.patterns.groups['.*'].read === true); }); }); - describe('supports resource tokens by resource type and id', () => { - it('support token with user id permissions', () => { - let tokenWithUserId = 'p0F2AkF0Gl2Bd7BDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KhZXVzZXIxAUNzcGOgQ3BhdKREY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEbWV0YaBDc2lnWCABo0jeW03hedEyKmtzJBZZijmt5J7GYJ3X_7VuKbYu7Q=='; + describe('supports token update', () => { + it('support get and set token', () => { + let token = 'p0F2AkF0GmEK8NZDdHRsGDxDcmVzpURjaGFuoENncnCgQ3VzcqBDc3BjoER1dWlkoWV1c2VyMRhoQ3BhdKVEY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEdXVpZKBEbWV0YaBDc2lnWCB6sYaT3ZbNVV6TBxDKGvdOk6TSQRMoRZir4cwoN9-_dA=='; - // has user id 'user1' - pubnub.setToken(tokenWithUserId); + // has uuid id 'user1' + pubnub.setToken(token); - let token = pubnub.getToken('user', 'user1'); + let tokenCheck = pubnub.getToken(); - assert(token === tokenWithUserId); + assert(tokenCheck === token); }); - it('support token with space id permissions', () => { - let tokenWithSpaceId = 'p0F2AkF0Gl2Bd_VDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6Fmc3BhY2UxAUNwYXSkRGNoYW6gQ2dycKBDdXNyoENzcGOgRG1ldGGgQ3NpZ1gg6CscU5C58NHVuuQnW8oFkf8BAZ4VbdCuuWtwZRS6lnY='; + it('adding new token replaces previous', () => { + let token = 'p0F2AkF0GmEK8NZDdHRsGDxDcmVzpURjaGFuoENncnCgQ3VzcqBDc3BjoER1dWlkoWV1c2VyMRhoQ3BhdKVEY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEdXVpZKBEbWV0YaBDc2lnWCB6sYaT3ZbNVV6TBxDKGvdOk6TSQRMoRZir4cwoN9-_dA=='; + let token2 = 'p0F2AkF0GmEK8LFDdHRsGDxDcmVzpURjaGFuoENncnCgQ3VzcqBDc3BjoER1dWlkoWV1c2VyMhhoQ3BhdKVEY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEdXVpZKBEbWV0YaBDc2lnWCDq63hdreA9JbHVnHLDJuHzK-AWSdcVFZKG0nse79JMZw=='; - // has space id 'space1' - pubnub.setToken(tokenWithSpaceId); + // has uuid id 'uuid1' + pubnub.setToken(token); - let token = pubnub.getToken('space', 'space1'); + let tokenCheck = pubnub.getToken(); - assert(token === tokenWithSpaceId); - }); - - it('support token with multiple user id permissions', () => { - let tokenWithMultipleUserId = 'p0F2AkF0Gl2BeDxDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KiZXVzZXIxAWV1c2VyMgFDc3BjoENwYXSkRGNoYW6gQ2dycKBDdXNyoENzcGOgRG1ldGGgQ3NpZ1gg0dPv3aKfKjGcPNBfGHuJLatPoUeEUgOGZhPGu0lVP20='; - - // has user id 'user1' and 'user2' - pubnub.setToken(tokenWithMultipleUserId); - - let token = pubnub.getToken('user', 'user1'); - - assert(token === tokenWithMultipleUserId); - - token = pubnub.getToken('user', 'user2'); - - assert(token === tokenWithMultipleUserId); - }); - - it('support token with multiple space id permissions', () => { - let tokenWithMultipleSpaceId = 'p0F2AkF0Gl2BeLhDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6Jmc3BhY2UxAWZzcGFjZTIBQ3BhdKREY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEbWV0YaBDc2lnWCB8acyHBpil-K7GFp-MOmwlGpl9_6OlWuZa5t8BM4B_CQ=='; - - // has space id 'space1' and 'space2' - pubnub.setToken(tokenWithMultipleSpaceId); - - let token = pubnub.getToken('space', 'space1'); - - assert(token === tokenWithMultipleSpaceId); - - token = pubnub.getToken('space', 'space2'); - - assert(token === tokenWithMultipleSpaceId); - }); - - it('support multiple tokens of one type with resource id permissions', () => { - let tokenWithUserId = 'p0F2AkF0Gl2Bd7BDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KhZXVzZXIxAUNzcGOgQ3BhdKREY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEbWV0YaBDc2lnWCABo0jeW03hedEyKmtzJBZZijmt5J7GYJ3X_7VuKbYu7Q=='; - let tokenWithUserId2 = 'p0F2AkF0Gl2BeUVDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KhZXVzZXIyAUNzcGOgQ3BhdKREY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEbWV0YaBDc2lnWCBJvm-ZwNdKLcS8vaoq2SAcvZ0HOI2OY6G6nGC-xKuzIg=='; - - // has user id 'user1' and 'user2' - pubnub.setTokens([ - tokenWithUserId, - tokenWithUserId2 - ]); - - // should not be the same token - assert(tokenWithUserId !== tokenWithUserId2); - - let token = pubnub.getToken('user', 'user1'); - - assert(token === tokenWithUserId); - - token = pubnub.getToken('user', 'user2'); - - assert(token === tokenWithUserId2); - }); - - it('support multiple tokens of multiple types with resource id permissions', () => { - let tokenWithUserId = 'p0F2AkF0Gl2Bd7BDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KhZXVzZXIxAUNzcGOgQ3BhdKREY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEbWV0YaBDc2lnWCABo0jeW03hedEyKmtzJBZZijmt5J7GYJ3X_7VuKbYu7Q=='; - let tokenWithSpaceId = 'p0F2AkF0Gl2Bd_VDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6Fmc3BhY2UxAUNwYXSkRGNoYW6gQ2dycKBDdXNyoENzcGOgRG1ldGGgQ3NpZ1gg6CscU5C58NHVuuQnW8oFkf8BAZ4VbdCuuWtwZRS6lnY='; - - // has user id 'user1' and 'user2' - pubnub.setTokens([ - tokenWithUserId, - tokenWithSpaceId - ]); - - // should not be the same token - assert(tokenWithUserId !== tokenWithSpaceId); - - let token = pubnub.getToken('user', 'user1'); - - assert(token === tokenWithUserId); - - token = pubnub.getToken('space', 'space1'); - - assert(token === tokenWithSpaceId); - }); - - it('adding new token with permissons for a resource id replaces', () => { - let tokenWithUserId = 'p0F2AkF0Gl2Bd7BDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KhZXVzZXIxAUNzcGOgQ3BhdKREY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEbWV0YaBDc2lnWCABo0jeW03hedEyKmtzJBZZijmt5J7GYJ3X_7VuKbYu7Q=='; - let tokenWithUserIdNewPermissions = 'p0F2AkF0Gl2Bes1DdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KhZXVzZXIxA0NzcGOgQ3BhdKREY2hhbqBDZ3JwoEN1c3KgQ3NwY6BEbWV0YaBDc2lnWCAuW43somfhnQk13sMTvmrPtgSPI_3PUOWBHwf_wnKYAQ=='; - - // has user id 'user1' - pubnub.setToken(tokenWithUserId); - - let token = pubnub.getToken('user', 'user1'); - - assert(token === tokenWithUserId); - - // has user id 'user1' - pubnub.setToken(tokenWithUserIdNewPermissions); - - token = pubnub.getToken('user', 'user1'); - - assert(token === tokenWithUserIdNewPermissions); - }); - }); - - describe('supports pattern tokens by resource type', () => { - it('support token with user permissions', () => { - let tokenWithUserType = 'p0F2AkF0Gl2Be3RDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6BDcGF0pERjaGFuoENncnCgQ3VzcqFiLioBQ3NwY6BEbWV0YaBDc2lnWCCst3N4W6YywI9H-fdvfkYxBOu10wz4CvS6qhfIgaS0fg=='; - - // has user id 'user1' - pubnub.setToken(tokenWithUserType); - - let token = pubnub.getToken('user'); - - assert(token === tokenWithUserType); - }); - - it('support token with space permissions', () => { - let tokenWithSpaceType = 'p0F2AkF0Gl2Be8FDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6BDcGF0pERjaGFuoENncnCgQ3VzcqBDc3BjoWIuKgFEbWV0YaBDc2lnWCDEwcYp_h7o-XYI8yuX1Eoqmt97pdbKoTjzbBxe6-NIBA=='; - - // has space id 'space1' - pubnub.setToken(tokenWithSpaceType); - - let token = pubnub.getToken('space'); - - assert(token === tokenWithSpaceType); - }); - - it('support token with user and space permissions', () => { - let tokenWithUserAndSpaceType = 'p0F2AkF0Gl2Be_hDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6BDcGF0pERjaGFuoENncnCgQ3VzcqFiLioBQ3NwY6FiLioBRG1ldGGgQ3NpZ1ggF985UuGyc1TXUaEK3pPBNaPc642ynEFHB4hNDUJ3dBs='; - - // has user id 'user1' and 'user2' - pubnub.setToken(tokenWithUserAndSpaceType); - - let token = pubnub.getToken('user'); - - assert(token === tokenWithUserAndSpaceType); - - token = pubnub.getToken('space'); - - assert(token === tokenWithUserAndSpaceType); - }); - - it('support multiple tokens with resource type permissions', () => { - let tokenWithUserType = 'p0F2AkF0Gl2Be3RDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6BDcGF0pERjaGFuoENncnCgQ3VzcqFiLioBQ3NwY6BEbWV0YaBDc2lnWCCst3N4W6YywI9H-fdvfkYxBOu10wz4CvS6qhfIgaS0fg=='; - let tokenWithSpaceType = 'p0F2AkF0Gl2Be8FDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6BDcGF0pERjaGFuoENncnCgQ3VzcqBDc3BjoWIuKgFEbWV0YaBDc2lnWCDEwcYp_h7o-XYI8yuX1Eoqmt97pdbKoTjzbBxe6-NIBA=='; - - // has user id 'user1' and 'user2' - pubnub.setTokens([ - tokenWithUserType, - tokenWithSpaceType - ]); - - let token = pubnub.getToken('user'); - - assert(token === tokenWithUserType); - - token = pubnub.getToken('space'); - - assert(token === tokenWithSpaceType); - }); - - it('adding new token with permissons for a resource type replaces', () => { - let tokenWithUserType = 'p0F2AkF0Gl2Be3RDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6BDcGF0pERjaGFuoENncnCgQ3VzcqFiLioBQ3NwY6BEbWV0YaBDc2lnWCCst3N4W6YywI9H-fdvfkYxBOu10wz4CvS6qhfIgaS0fg=='; - let tokenWithUserType2 = 'p0F2AkF0Gl2BfPhDdHRsGQWgQ3Jlc6REY2hhbqBDZ3JwoEN1c3KgQ3NwY6BDcGF0pERjaGFuoENncnCgQ3VzcqFiLioDQ3NwY6BEbWV0YaBDc2lnWCA7lCpBefZe76rK5fppuqIRqXxcGnANS8KM26klBdf14A=='; - - // has user id 'user1' - pubnub.setToken(tokenWithUserType); - - let token = pubnub.getToken('user'); - - assert(token === tokenWithUserType); + assert(tokenCheck === token); - // has user id 'user1' - pubnub.setToken(tokenWithUserType2); + // has uuid id 'uuid2' + pubnub.setToken(token2); - token = pubnub.getToken('user'); + tokenCheck = pubnub.getToken(); - assert(token === tokenWithUserType2); + assert(tokenCheck === token2); }); }); }); diff --git a/test/integration/endpoints/get_file_url.test.js b/test/integration/endpoints/get_file_url.test.js new file mode 100644 index 000000000..c4ddd7a0f --- /dev/null +++ b/test/integration/endpoints/get_file_url.test.js @@ -0,0 +1,38 @@ +/* global describe, beforeEach, it, before, after */ +/* eslint no-console: 0 */ + +import assert from 'assert'; +import nock from 'nock'; +import utils from '../../utils'; +import PubNub from '../../../src/node/index'; + +describe('getFileUrl', () => { + it('constructs proper url with custom origin string', () => { + const pubnub = new PubNub({ + subscribeKey: 'demo', + publishKey: 'demo', + uuid: 'myUUID', + origin: 'example.com' + }); + + const url = pubnub.getFileUrl({ channel: 'channel', id: 'id', name: 'name' }); + const pnsdk = `PubNub-JS-${pubnub._config.sdkFamily}%2F${pubnub._config.getVersion()}`; + + assert.equal(url, `https://example.com/v1/files/demo/channels/channel/files/id/name?uuid=myUUID&pnsdk=${pnsdk}`); + }); + + it('constructs proper url with custom origin array', () => { + const pubnub = new PubNub({ + subscribeKey: 'demo', + publishKey: 'demo', + uuid: 'myUUID', + origin: ['test1.example.com', 'test2.example.com'] + }); + + const url = pubnub.getFileUrl({ channel: 'channel', id: 'id', name: 'name' }); + const pnsdk = `PubNub-JS-${pubnub._config.sdkFamily}%2F${pubnub._config.getVersion()}`; + + assert(url === `https://test1.example.com/v1/files/demo/channels/channel/files/id/name?uuid=myUUID&pnsdk=${pnsdk}` + || url === `https://test2.example.com/v1/files/demo/channels/channel/files/id/name?uuid=myUUID&pnsdk=${pnsdk}`); + }); +}); diff --git a/test/integration/endpoints/grant_token.test.js b/test/integration/endpoints/grant_token.test.js index a7f1c6347..0eb707f13 100644 --- a/test/integration/endpoints/grant_token.test.js +++ b/test/integration/endpoints/grant_token.test.js @@ -74,7 +74,7 @@ describe('grant token endpoint', () => { }); }); - it('fail on resources without any user resource permissions', (done) => { + it('fail on resources without any resource permissions', (done) => { const scope = utils .createNock() .post('/v3/pam/mySubscribeKey/grant') @@ -98,43 +98,13 @@ describe('grant token endpoint', () => { { ttl: 1440, resources: { - users: { + channels: { - } - }, - } - ).catch((err) => { - assert.equal(scope.isDone(), false); - assert.equal(err.status.message, 'Missing values for either Resources or Patterns.'); - done(); - }); - }); - - it('fail on resources without any user pattern permissions', (done) => { - const scope = utils - .createNock() - .post('/v3/pam/mySubscribeKey/grant') - .query({ - uuid: 'myUUID', - pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, - timestamp: 1571360790, - signature: 'v2.pJobOYLaDTsauQo8UZa-4Eu4JKYYRuaeyPS8IHpNN-E', - }) - .reply( - 200, - { - message: 'Success', - data: { - token: 'token' - } - } - ); + }, + groups: { - pubnub.grantToken( - { - ttl: 1440, - patterns: { - users: { + }, + uuids: { } }, @@ -146,7 +116,7 @@ describe('grant token endpoint', () => { }); }); - it('fail on resources without any space resource permissions', (done) => { + it('fail on resources without any pattern permissions', (done) => { const scope = utils .createNock() .post('/v3/pam/mySubscribeKey/grant') @@ -169,44 +139,14 @@ describe('grant token endpoint', () => { pubnub.grantToken( { ttl: 1440, - resources: { - spaces: { - - } - }, - } - ).catch((err) => { - assert.equal(scope.isDone(), false); - assert.equal(err.status.message, 'Missing values for either Resources or Patterns.'); - done(); - }); - }); + patterns: { + channels: { - it('fail on resources without any space pattern permissions', (done) => { - const scope = utils - .createNock() - .post('/v3/pam/mySubscribeKey/grant') - .query({ - uuid: 'myUUID', - pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, - timestamp: 1571360790, - signature: 'v2.pJobOYLaDTsauQo8UZa-4Eu4JKYYRuaeyPS8IHpNN-E', - }) - .reply( - 200, - { - message: 'Success', - data: { - token: 'token' - } - } - ); + }, + groups: { - pubnub.grantToken( - { - ttl: 1440, - patterns: { - spaces: { + }, + uuids: { } }, @@ -218,62 +158,6 @@ describe('grant token endpoint', () => { }); }); }); - - it('issues the correct RESTful request for users and spaces', (done) => { - const scope = utils - .createNock() - .post('/v3/pam/mySubscribeKey/grant', '{"ttl":1440,"permissions":{"resources":{"channels":{},"groups":{},"users":{"user1":1},"spaces":{"space1":1}},"patterns":{"channels":{},"groups":{},"users":{".*":1},"spaces":{".*":1}},"meta":{}}}') - .query({ - uuid: 'myUUID', - pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, - timestamp: 1571360790, - signature: 'v2.pJobOYLaDTsauQo8UZa-4Eu4JKYYRuaeyPS8IHpNN-E', - }) - .reply( - 200, - { - message: 'Success', - data: { - token: 'token' - } - } - ); - - pubnub.grantToken( - { - ttl: 1440, - resources: { - users: { - user1: { - read: true - }, - }, - spaces: { - space1: { - read: true - }, - }, - }, - patterns: { - users: { - '.*': { - read: true - }, - }, - spaces: { - '.*': { - read: true - }, - }, - } - }, - (status) => { - assert.equal(scope.isDone(), true); - assert.equal(status.error, false); - done(); - } - ); - }); }); }); @@ -308,7 +192,7 @@ describe('grant token endpoint telemetry', () => { describe('#grantToken', () => { it('should add PAM grant token API telemetry information', (done) => { - let scope = utils.createNock().post('/v3/pam/mySubscribeKey/grant', '{"ttl":1440,"permissions":{"resources":{"channels":{},"groups":{},"users":{"user1":1},"spaces":{"space1":1}},"patterns":{"channels":{},"groups":{},"users":{".*":1},"spaces":{".*":1}},"meta":{}}}').query(true); + let scope = utils.createNock().post('/v3/pam/mySubscribeKey/grant', '{"ttl":1440,"permissions":{"resources":{"channels":{},"groups":{},"uuids":{"user1":1},"users":{},"spaces":{}},"patterns":{"channels":{},"groups":{},"uuids":{".*":1},"users":{},"spaces":{}},"meta":{}}}').query(true); const delays = [100, 200, 300, 400]; const countedDelays = delays.slice(0, delays.length - 1); const average = Math.floor(countedDelays.reduce((acc, delay) => acc + delay, 0) / countedDelays.length); @@ -323,19 +207,21 @@ describe('grant token endpoint telemetry', () => { { ttl: 1440, resources: { - users: { user1: { read: true }, }, - spaces: { space1: { read: true }, }, + channels: {}, + groups: {}, + uuids: { user1: { read: true }, }, }, patterns: { - users: { '.*': { read: true }, }, - spaces: { '.*': { read: true }, }, + channels: {}, + groups: {}, + uuids: { '.*': { read: true }, }, } }, () => { completion(); } ); }) .then((lastRequest) => { - utils.verifyRequestTelemetry(lastRequest.path, 'l_pam3', average, leeway); + utils.verifyRequestTelemetry(lastRequest.path, 'l_pamv3', average, leeway); done(); }); }).timeout(60000); diff --git a/test/integration/endpoints/message_actions.test.js b/test/integration/endpoints/message_actions.test.js index cd910e4ea..e81b9ab1f 100644 --- a/test/integration/endpoints/message_actions.test.js +++ b/test/integration/endpoints/message_actions.test.js @@ -340,6 +340,7 @@ describe('message actions endpoints', () => { assert.equal(messageActionEvent.data.messageTimetoken, messageTimetoken); assert(messageActionEvent.data.actionTimetoken); assert.equal(messageActionEvent.event, 'added'); + pubnub.unsubscribeAll() done(); } @@ -489,6 +490,7 @@ describe('message actions endpoints', () => { assert.equal(messageActionEvent.data.messageTimetoken, messageTimetokens[0]); assert.equal(messageActionEvent.data.actionTimetoken, actionTimetokens[0]); assert.equal(messageActionEvent.event, 'removed'); + pubnub.unsubscribeAll() done(); } diff --git a/test/integration/operations/unsubscribe.test.js b/test/integration/operations/unsubscribe.test.js index 2fe195c81..f866096f9 100644 --- a/test/integration/operations/unsubscribe.test.js +++ b/test/integration/operations/unsubscribe.test.js @@ -36,6 +36,16 @@ describe('unsubscribe', () => { it('supports leaving for one channel', (done) => { const scope = utils .createNock() + .get('/v2/subscribe/mySubscribeKey/ch1/0') + .query({ + pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, + uuid: 'myUUID', + heartbeat: 300, + }) + .reply( + 200, + '{"t":{"t":"14607577960932487","r":1},"m":[{"a":"4","f":0,"i":"Client-g5d4g","p":{"t":"14607577960925503","r":1},"k":"sub-c-4cec9f8e-01fa-11e6-8180-0619f8945a4f","c":"coolChannel","d":{"text":"Enter Message Here"},"b":"coolChan-bnel"}]}' + ) .get('/v2/presence/sub-key/mySubscribeKey/channel/ch1/leave') .query({ pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, @@ -45,11 +55,14 @@ describe('unsubscribe', () => { pubnub.addListener({ status(status) { - assert.equal(status.error, false); - assert.equal(scope.isDone(), true); - assert.deepEqual(status.affectedChannels, ['ch1']); - assert.deepEqual(status.affectedChannelGroups, []); - done(); + if (status.category !== 'PNConnectedCategory') { + console.log('status', JSON.stringify(status )) + assert.equal(status.error, false); + assert.equal(scope.isDone(), true); + assert.deepEqual(status.affectedChannels, ['ch1']); + assert.deepEqual(status.affectedChannelGroups, []); + done(); + } }, }); @@ -60,6 +73,16 @@ describe('unsubscribe', () => { it('supports leaving for multiple channels', (done) => { const scope = utils .createNock() + .get('/v2/subscribe/mySubscribeKey/ch1%2Cch2/0') + .query({ + pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, + uuid: 'myUUID', + heartbeat: 300, + }) + .reply( + 200, + '{"t":{"t":"14607577960932487","r":1},"m":[{"a":"4","f":0,"i":"Client-g5d4g","p":{"t":"14607577960925503","r":1},"k":"sub-c-4cec9f8e-01fa-11e6-8180-0619f8945a4f","c":"coolChannel","d":{"text":"Enter Message Here"},"b":"coolChan-bnel"}]}' + ) .get('/v2/presence/sub-key/mySubscribeKey/channel/ch1%2Cch2/leave') .query({ pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, @@ -69,11 +92,13 @@ describe('unsubscribe', () => { pubnub.addListener({ status(status) { - assert.equal(status.error, false); - assert.equal(scope.isDone(), true); - assert.deepEqual(status.affectedChannels, ['ch1', 'ch2']); - assert.deepEqual(status.affectedChannelGroups, []); - done(); + if (status.category !== 'PNConnectedCategory') { + assert.equal(status.error, false); + assert.equal(scope.isDone(), true); + assert.deepEqual(status.affectedChannels, ['ch1', 'ch2']); + assert.deepEqual(status.affectedChannelGroups, []); + done(); + } }, }); @@ -84,6 +109,17 @@ describe('unsubscribe', () => { it('supports leaving for one channel group', (done) => { const scope = utils .createNock() + .get('/v2/subscribe/mySubscribeKey/%2C/0') + .query({ + 'channel-group': 'cg1', + pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, + uuid: 'myUUID', + heartbeat: 300, + }) + .reply( + 200, + '{"t":{"t":"14607577960932487","r":1},"m":[{"a":"4","f":0,"i":"Client-g5d4g","p":{"t":"14607577960925503","r":1},"k":"sub-c-4cec9f8e-01fa-11e6-8180-0619f8945a4f","c":"coolChannel","d":{"text":"Enter Message Here"},"b":"coolChan-bnel"}]}' + ) .get('/v2/presence/sub-key/mySubscribeKey/channel/%2C/leave') .query({ pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, @@ -94,11 +130,13 @@ describe('unsubscribe', () => { pubnub.addListener({ status(status) { - assert.equal(status.error, false); - assert.equal(scope.isDone(), true); - assert.deepEqual(status.affectedChannels, []); - assert.deepEqual(status.affectedChannelGroups, ['cg1']); - done(); + if (status.category !== 'PNConnectedCategory') { + assert.equal(status.error, false); + assert.equal(scope.isDone(), true); + assert.deepEqual(status.affectedChannels, []); + assert.deepEqual(status.affectedChannelGroups, ['cg1']); + done(); + } }, }); @@ -109,6 +147,17 @@ describe('unsubscribe', () => { it('supports leaving for multiple channel group', (done) => { const scope = utils .createNock() + .get('/v2/subscribe/mySubscribeKey/%2C/0') + .query({ + 'channel-group': 'cg1,cg2', + pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, + uuid: 'myUUID', + heartbeat: 300, + }) + .reply( + 200, + '{"t":{"t":"14607577960932487","r":1},"m":[{"a":"4","f":0,"i":"Client-g5d4g","p":{"t":"14607577960925503","r":1},"k":"sub-c-4cec9f8e-01fa-11e6-8180-0619f8945a4f","c":"coolChannel","d":{"text":"Enter Message Here"},"b":"coolChan-bnel"}]}' + ) .get('/v2/presence/sub-key/mySubscribeKey/channel/%2C/leave') .query({ pnsdk: `PubNub-JS-Nodejs/${pubnub.getVersion()}`, @@ -119,11 +168,13 @@ describe('unsubscribe', () => { pubnub.addListener({ status(status) { - assert.equal(status.error, false); - assert.equal(scope.isDone(), true); - assert.deepEqual(status.affectedChannels, []); - assert.deepEqual(status.affectedChannelGroups, ['cg1', 'cg2']); - done(); + if (status.category !== 'PNConnectedCategory') { + assert.equal(status.error, false); + assert.equal(scope.isDone(), true); + assert.deepEqual(status.affectedChannels, []); + assert.deepEqual(status.affectedChannelGroups, ['cg1', 'cg2']); + done(); + } }, }); diff --git a/test/release/release.test.js b/test/release/release.test.js index 98f92fddb..c7620dbc8 100755 --- a/test/release/release.test.js +++ b/test/release/release.test.js @@ -24,7 +24,7 @@ describe('release should be consistent', () => { }); it('with correct version in code', () => { - assert.equal(packageJSON.version, new PubNub({}).getVersion()); + assert.equal(packageJSON.version, new PubNub({uuid: 'myUUID'}).getVersion()); }); it('with updated readme', () => { diff --git a/test/unit/common.test.js b/test/unit/common.test.js index 83c67c68e..f8dcb0eb3 100644 --- a/test/unit/common.test.js +++ b/test/unit/common.test.js @@ -7,12 +7,12 @@ import CryptoJS from '../../src/core/components/cryptography/hmac-sha256'; describe('#core / mounting point', () => { it('should have default heartbeat interval undefined', () => { - let pn = new PubNub({}); + let pn = new PubNub({ uuid: 'myUUID' }); assert(pn._config.getHeartbeatInterval() === undefined); }); it('should have correct heartbeat interval set when reducing presence timeout', () => { - let pn = new PubNub({}); + let pn = new PubNub({ uuid: 'myUUID' }); let presenceTimeout = 200; let expectedHeartBeat = presenceTimeout / 2 - 1; pn._config.setPresenceTimeout(presenceTimeout); @@ -20,7 +20,7 @@ describe('#core / mounting point', () => { }); it('should support multiple pnsdk suffix', () => { - let pn = new PubNub({}); + let pn = new PubNub({ uuid: 'myUUID' }); let suffix1 = 'suffix1/0.1'; let suffix2 = 'suffix2/0.2'; @@ -31,7 +31,7 @@ describe('#core / mounting point', () => { }); it('should replace duplicate pnsdk suffix by name', () => { - let pn = new PubNub({}); + let pn = new PubNub({ uuid: 'myUUID' }); let suffix1 = 'suffix1/0.1'; let suffix2 = 'suffix2/0.2'; let suffix3 = 'suffix3/0.3'; @@ -44,7 +44,7 @@ describe('#core / mounting point', () => { }); it('should default to empty pnsdk suffix', () => { - let pn = new PubNub({}); + let pn = new PubNub({ uuid: 'myUUID' }); assert(pn._config._getPnsdkSuffix(' ') === ''); }); @@ -53,7 +53,7 @@ describe('#core / mounting point', () => { }); it('supports encryption with static IV', () => { - let pn = new PubNub({ cipherKey: 'customKey', useRandomIVs: false }); + let pn = new PubNub({ cipherKey: 'customKey', useRandomIVs: false, uuid: 'myUUID' }); assert.equal( pn.encrypt(JSON.stringify({ hi: 'there' })), 'TejX6F2JNqH/gIiGHWN4Cw==' @@ -61,7 +61,7 @@ describe('#core / mounting point', () => { }); it('supports encryption with random IV', () => { - let pn = new PubNub({ cipherKey: 'customKey' }); + let pn = new PubNub({ cipherKey: 'customKey', uuid: 'myUUID' }); const data1 = pn.encrypt(JSON.stringify({ hi: 'there' })); const data2 = pn.encrypt(JSON.stringify({ hi: 'there' })); @@ -73,7 +73,7 @@ describe('#core / mounting point', () => { }); it('supports encryption with custom key and static IV', () => { - let pn = new PubNub({ useRandomIVs: false }); + let pn = new PubNub({ useRandomIVs: false, uuid: 'myUUID' }); assert.equal( pn.encrypt(JSON.stringify({ hi: 'there' }), 'customKey'), 'TejX6F2JNqH/gIiGHWN4Cw==' @@ -81,7 +81,7 @@ describe('#core / mounting point', () => { }); it('supports encryption with custom key and random IV', () => { - let pn = new PubNub({}); + let pn = new PubNub({ uuid: 'myUUID' }); const data1 = pn.encrypt(JSON.stringify({ hi: 'there' }), 'customKey'); const data2 = pn.encrypt(JSON.stringify({ hi: 'there' }), 'customKey'); @@ -93,12 +93,12 @@ describe('#core / mounting point', () => { }); it('supports decryption with static IV', () => { - let pn = new PubNub({ cipherKey: 'customKey', useRandomIVs: false }); + let pn = new PubNub({ cipherKey: 'customKey', useRandomIVs: false, uuid: 'myUUID' }); assert.deepEqual(pn.decrypt('TejX6F2JNqH/gIiGHWN4Cw=='), { hi: 'there' }); }); it('supports decryption with random IV', () => { - let pn = new PubNub({ cipherKey: 'customKey' }); + let pn = new PubNub({ cipherKey: 'customKey', uuid: 'myUUID' }); const data = pn.encrypt(JSON.stringify({ hi: 'there2' })); assert.notDeepEqual(pn.decrypt('TejX6F2JNqH/gIiGHWN4Cw=='), { hi: 'there' }); @@ -106,14 +106,14 @@ describe('#core / mounting point', () => { }); it('supports decryption with custom key and static IV', () => { - let pn = new PubNub({ useRandomIVs: false }); + let pn = new PubNub({ useRandomIVs: false, uuid: 'myUUID' }); assert.deepEqual(pn.decrypt('TejX6F2JNqH/gIiGHWN4Cw==', 'customKey'), { hi: 'there', }); }); it('supports decryption with custom key and random IV', () => { - let pn = new PubNub({}); + let pn = new PubNub({ uuid: 'myUUID' }); const data = pn.encrypt(JSON.stringify({ hi: 'there2' }), 'customKey'); assert.notDeepEqual(pn.decrypt('TejX6F2JNqH/gIiGHWN4Cw==', 'customKey'), { @@ -133,7 +133,7 @@ describe('#core / mounting point', () => { return JSON.parse(bytes.toString(CryptoJS.enc.Utf8)); }; - let pn = new PubNub({ customEncrypt, customDecrypt }); + let pn = new PubNub({ customEncrypt, customDecrypt, uuid: 'myUUID' }); let ciphertext = pn.encrypt({ hi: 'there' }); diff --git a/test/unit/networking.test.js b/test/unit/networking.test.js index 7847987a9..1ab2654f6 100644 --- a/test/unit/networking.test.js +++ b/test/unit/networking.test.js @@ -5,16 +5,73 @@ import sinon from 'sinon'; import nock from 'nock'; import assert from 'assert'; +import Config from '../../src/core/components/config'; import Networking from '../../src/networking'; import { del, get, post } from '../../src/networking/modules/web-node'; import { keepAlive, proxy } from '../../src/networking/modules/node'; +describe('multiple origins', () => { + before(() => nock.disableNetConnect()); + after(() => nock.enableNetConnect()); + + it('should use a random origin from a supplied array of origins', () => { + const origins = ['test1.example.com', 'test2.example.com']; + const config = new Config({ setup: { ssl: true, origin: origins, uuid: 'myUUID' } }) + const networking = new Networking({}); + networking.init(config); + + const origin = networking.getStandardOrigin(); + + assert(origins.some((e) => `https://${e}` === origin), `Supplied origins do not contain "${origin}"`); + }); + + it('should use string origin if a string is supplied', () => { + const config = new Config({ setup: { ssl: true, origin: 'example.com', uuid: 'myUUID' } }) + const networking = new Networking({}); + networking.init(config); + + const origin = networking.getStandardOrigin(); + + assert.equal(origin, 'https://example.com'); + }); + + describe('shiftStandardOrigin', () => { + it('should use all origins if array is supplied', () => { + const origins = ['test1.example.com', 'test2.example.com']; + const config = new Config({ setup: { ssl: true, origin: origins, uuid: 'myUUID' } }) + const networking = new Networking({}); + networking.init(config); + + const firstOrigin = networking.getStandardOrigin(); + const secondOrigin = networking.shiftStandardOrigin(); + const thirdOrigin = networking.shiftStandardOrigin(); + + assert.equal(firstOrigin, thirdOrigin); + assert.notEqual(firstOrigin, secondOrigin); + }); + + it('should do nothing if string is supplied', () => { + const config = new Config({ setup: { ssl: true, origin: 'example.com', uuid: 'myUUID' } }) + const networking = new Networking({}); + networking.init(config); + + const firstOrigin = networking.getStandardOrigin(); + const secondOrigin = networking.shiftStandardOrigin(); + const thirdOrigin = networking.shiftStandardOrigin(); + + assert.equal(firstOrigin, secondOrigin); + assert.equal(secondOrigin, thirdOrigin); + assert.equal(thirdOrigin, firstOrigin); + }); + }); +}); + describe('keep-alive agent', () => { before(() => nock.disableNetConnect()); after(() => nock.enableNetConnect()); const setupNetwork = (shouldSecure, enableKeepAlive) => { - const config = { origin: 'ps.pndsn.com', secure: shouldSecure, keepAlive: enableKeepAlive, logVerbosity: false }; + const config = new Config({ setup: { origin: 'ps.pndsn.com', ssl: shouldSecure, keepAlive: enableKeepAlive, logVerbosity: false, uuid: 'myUUID' } }); const networking = new Networking({ keepAlive, del, get, post, proxy }); networking.init(config);