From 89c12fa161989257cb30e29d97d97d805deda923 Mon Sep 17 00:00:00 2001 From: Elisha Nuchi <31550519+enuchi@users.noreply.github.com> Date: Sat, 12 Mar 2022 22:51:30 -0500 Subject: [PATCH] Set up end to end tests (#121) * initial e2e test setup with jest and puppeteer * Update package-lock.json * WIP e2e setup * finish setting up end to end tests * extend open addon time * build local version and change background color * update pink image snapshot * hide no "done" callback jest lint error * first draft of integration test CI automation * add .env file during CI * add puppeteer and update .env * try mac-os * try separate build step * add local deploy step * extend time * print body text * set user agent * rearrange console logs * remove console logs * console page * try loading in own window * install mkcert in CI * fix indentation * test local body text * bump time * revert to loading in add on * bump time * print page body * add stealth plugin and update puppeteer * update jest and jest-puppeteer versions to latest * use custom jest-puppeteer environment allows connecting to Google account using stealth plugin * update threshold * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * test console * switch to clasp 2.3.1 * increase timeout * Update integration-tests.yaml * Update integration-tests.yaml * Update package.json * try mac os 10.15 * Update integration-tests.yaml * run node 12,14 * Update global-teardown.js * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * sudo mkcert * Update integration-tests.yaml * try running not in bash * try windows 2016 * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update open-addon.js * Update open-addon.js * Update open-addon.js * Update open-addon.js * Update open-addon.js * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * add timeout * test recovery email * bypass account recovery page * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * test New-SelfSignedCertificate * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * add powershell script * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * Update integration-tests.yaml * test script * Update integration-tests.yaml * add generate-cert.ps1 * restructure test files * Update generate-cert.ps1 * bump failure threshold * fix install mkcert * remove consoles * Update package.json * Update integration-tests.yaml * try forceExit flag * test exec in global setup * restructure * Update integration-tests.yaml * remove ?. null check * add 4 OSs: macos-10.15, macos-latest, windows-2019, windows-latest * test mac 10.15 * Update integration-tests.yaml * use all OSs * -Keyexportpolicy Exportable * Update generate-cert.ps1 * Update integration-tests.yaml * update os * -KeyExportPolicy 'Exportable' * Update integration-tests.yaml * update test readme * Update integration-tests.yaml * add non-extended integration test * add non-extended snapshots * update snapshot names * change name * add basic integration tests pipeline file * Update local-development.test.js * update os's * test s3 image reporter * allowSizeMismatch: true * update test local url to localhost:3000/dialog-demo-bootstrap.html * try medium font render hinting * Update jest-puppeteer.config.js * update screenshots * check resolution * open page when wds is ready * change screen resolution * change to 2560 1440 resolution * test 790 width * change back to 800 * test all mac versions * rename container * skip s3 image reporting if missing env variables * try windows * add OS specific tests * fix image names * Update image-reporter.js * Update package.json * upload windows * Update image-reporter.js * test new font * try all OSs * remove OS-specific test setup * update extended snapshots * rename tests * Update integration-tests-extended.yaml * Update integration-tests-basic.yaml * extend timeout * Update jest.config.js * Update README.md * Update local-development.test.js * revert to 0.04 threshold * add comment * remove push trigger for basic test * extend timeout --- .../workflows/integration-tests-basic.yaml | 43 + .../workflows/integration-tests-extended.yaml | 72 + .gitignore | 3 + jest.config.js | 6 + package-lock.json | 17042 ++++++++++++---- package.json | 15 +- src/client/dialog-demo-bootstrap/styles.css | 5 + test/.eslintrc.json | 36 + test/README.md | 49 + ...d-should-load-bootstrap-example-1-snap.png | Bin 0 -> 57558 bytes ...-modify-bootstrap-title-example-1-snap.png | Bin 0 -> 57439 bytes ...-title-example-back-to-original-1-snap.png | Bin 0 -> 57558 bytes ...p-should-load-bootstrap-example-1-snap.png | Bin 0 -> 41655 bytes ...-modify-bootstrap-title-example-1-snap.png | Bin 0 -> 39595 bytes ...-title-example-back-to-original-1-snap.png | Bin 0 -> 41655 bytes test/generate-cert.ps1 | 40 + test/global-setup.js | 26 + test/global-teardown.js | 16 + test/jest-puppeteer.config.js | 14 + test/local-development.test.js | 105 + test/puppeteer-environment.js | 41 + test/utils/image-reporter.js | 74 + test/utils/open-addon.js | 74 + webpack.config.js | 11 + 24 files changed, 13377 insertions(+), 4295 deletions(-) create mode 100644 .github/workflows/integration-tests-basic.yaml create mode 100644 .github/workflows/integration-tests-extended.yaml create mode 100644 jest.config.js create mode 100644 test/.eslintrc.json create mode 100644 test/README.md create mode 100644 test/__image_snapshots__/local-development-test-js-local-setup-extended-should-load-bootstrap-example-1-snap.png create mode 100644 test/__image_snapshots__/local-development-test-js-local-setup-extended-should-modify-bootstrap-title-example-1-snap.png create mode 100644 test/__image_snapshots__/local-development-test-js-local-setup-extended-should-modify-bootstrap-title-example-back-to-original-1-snap.png create mode 100644 test/__image_snapshots__/local-development-test-js-local-setup-should-load-bootstrap-example-1-snap.png create mode 100644 test/__image_snapshots__/local-development-test-js-local-setup-should-modify-bootstrap-title-example-1-snap.png create mode 100644 test/__image_snapshots__/local-development-test-js-local-setup-should-modify-bootstrap-title-example-back-to-original-1-snap.png create mode 100644 test/generate-cert.ps1 create mode 100644 test/global-setup.js create mode 100644 test/global-teardown.js create mode 100644 test/jest-puppeteer.config.js create mode 100644 test/local-development.test.js create mode 100644 test/puppeteer-environment.js create mode 100644 test/utils/image-reporter.js create mode 100644 test/utils/open-addon.js diff --git a/.github/workflows/integration-tests-basic.yaml b/.github/workflows/integration-tests-basic.yaml new file mode 100644 index 0000000..1950c68 --- /dev/null +++ b/.github/workflows/integration-tests-basic.yaml @@ -0,0 +1,43 @@ +name: Local integration tests - Basic Version + +on: + pull_request: + branches: [master] + +jobs: + basic-integration-test: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [macos-10.15, macos-latest, windows-latest] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + node-version: [12, 14, 16] + timeout-minutes: 8 + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + - name: Install packages [npm ci] + run: npm ci + - name: Allow installing cert in Mac OS Big Sur + run: sudo security authorizationdb write com.apple.trust-settings.admin allow + if: matrix.os == 'macOS-latest' + - name: Install mkcert + run: brew install mkcert + if: runner.os == 'MacOS' + - name: Run mkcert setup [mkcert -install] + run: mkcert -install + if: runner.os == 'MacOS' + - name: Install https cert [npm setup:https] + run: npm run setup:https + if: runner.os == 'MacOS' + - run: | + mkdir certs + .\test\generate-cert.ps1 + shell: pwsh + if: runner.os == 'Windows' + - name: Run integration tests + run: npm run test:integration + shell: bash \ No newline at end of file diff --git a/.github/workflows/integration-tests-extended.yaml b/.github/workflows/integration-tests-extended.yaml new file mode 100644 index 0000000..cea8340 --- /dev/null +++ b/.github/workflows/integration-tests-extended.yaml @@ -0,0 +1,72 @@ +name: Local integration tests - Extended Version + +on: + push: + +jobs: + extended-integration-test: + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [macos-10.15, macos-latest, windows-latest] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + node-version: [12, 14, 16] + timeout-minutes: 10 + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + - name: Install packages [npm ci] + run: npm ci + - name: Allow installing cert in Mac OS Big Sur + run: sudo security authorizationdb write com.apple.trust-settings.admin allow + if: matrix.os == 'macOS-latest' + - name: Install mkcert + run: brew install mkcert + if: runner.os == 'MacOS' + - name: Run mkcert setup [mkcert -install] + run: mkcert -install + if: runner.os == 'MacOS' + - name: Install https cert [npm setup:https] + run: npm run setup:https + if: runner.os == 'MacOS' + - run: | + mkdir certs + .\test\generate-cert.ps1 + shell: pwsh + if: runner.os == 'Windows' + - name: Add .clasprc.json to home folder + run: echo "$DOT_CLASPRC" > $HOME/.clasprc.json + shell: bash + env: + DOT_CLASPRC: ${{ secrets.DOT_CLASPRC }} + - name: Add .clasp.json to project directory + run: echo "$DOT_CLASP" > .clasp.json + shell: bash + env: + DOT_CLASP: ${{ secrets.DOT_CLASP }} + - name: Add environment variables to .env file + run: | + echo "EMAIL=$TEST_ACCOUNT_EMAIL" > .env + echo "TEST_RECOVERY_EMAIL=$TEST_RECOVERY_EMAIL" >> .env + echo "PASSWORD=$TEST_ACCOUNT_PASSWORD" >> .env + echo "SHEET_URL=$TEST_SPREADSHEET_URL" >> .env + echo "S3_BUCKET_NAME=$S3_BUCKET_NAME" >> .env + echo "AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY" >> .env + echo "AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID" >> .env + shell: bash + env: + TEST_ACCOUNT_EMAIL: ${{ secrets.TEST_ACCOUNT_EMAIL }} + TEST_RECOVERY_EMAIL: ${{ secrets.TEST_RECOVERY_EMAIL }} + TEST_ACCOUNT_PASSWORD: ${{ secrets.TEST_ACCOUNT_PASSWORD }} + TEST_SPREADSHEET_URL: ${{ secrets.TEST_SPREADSHEET_URL }} + S3_BUCKET_NAME: ${{ secrets.S3_BUCKET_NAME }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + - name: Build and deploy dev setup [npm run deploy:dev] + run: npm run deploy:dev + - name: Run integration tests + run: npm run test:integration:extended + shell: bash diff --git a/.gitignore b/.gitignore index 0b3aece..d270dba 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,6 @@ dist/ # mac .DS_Store + +#secret +.env \ No newline at end of file diff --git a/jest.config.js b/jest.config.js new file mode 100644 index 0000000..be2321e --- /dev/null +++ b/jest.config.js @@ -0,0 +1,6 @@ +module.exports = { + globalSetup: './test/global-setup.js', + globalTeardown: './test/global-teardown.js', + testEnvironment: './test/puppeteer-environment.js', + reporters: ['default', '/test/utils/image-reporter.js'], +}; diff --git a/package-lock.json b/package-lock.json index 8362b51..3b54b68 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,11 @@ "@babel/polyfill": "^7.10.4", "@babel/preset-env": "^7.11.0", "@babel/preset-react": "^7.10.4", - "@google/clasp": "^2.4.0", + "@google/clasp": "^2.3.1", + "@types/expect-puppeteer": "^4.4.6", + "@types/jest-environment-puppeteer": "^4.4.1", + "@types/puppeteer": "^5.4.4", + "aws-sdk": "^2.1092.0", "babel-eslint": "^10.1.0", "babel-loader": "^8.1.0", "babel-plugin-add-module-exports": "^1.0.2", @@ -45,6 +49,7 @@ "eslint-plugin-babel": "^5.3.1", "eslint-plugin-googleappsscript": "^1.0.3", "eslint-plugin-import": "^2.22.0", + "eslint-plugin-jest": "^24.3.6", "eslint-plugin-jsx-a11y": "^6.3.1", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^3.1.4", @@ -57,9 +62,14 @@ "google-apps-script-webpack-dev-server": "^1.0.0", "html-webpack-inline-source-plugin": "0.0.10", "html-webpack-plugin": "^3.2.0", + "jest": "^27.5.1", + "jest-image-snapshot": "^4.5.1", "mkdirp": "^1.0.4", "module-to-cdn": "^3.1.5", "prettier": "^1.19.1", + "puppeteer": "^13.4.1", + "puppeteer-extra": "^3.2.3", + "puppeteer-extra-plugin-stealth": "^2.9.0", "rimraf": "^3.0.2", "style-loader": "^1.2.1", "tern": "^0.24.3", @@ -74,6 +84,18 @@ "npm": ">=6.0.0" } }, + "node_modules/@ampproject/remapping": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", + "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/cli": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.14.5.tgz", @@ -252,47 +274,47 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", "dev": true, "dependencies": { - "@babel/highlight": "^7.8.3" + "@babel/highlight": "^7.16.7" + }, + "engines": { + "node": ">=6.9.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==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz", + "integrity": "sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==", "dev": true, - "dependencies": { - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "semver": "^5.5.0" + "engines": { + "node": ">=6.9.0" } }, "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==", + "version": "7.17.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz", + "integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==", "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", + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.3", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helpers": "^7.17.2", + "@babel/parser": "^7.17.3", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.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", - "source-map": "^0.5.0" + "semver": "^6.3.0" }, "engines": { "node": ">=6.9.0" @@ -302,125 +324,21 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/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==", + "node_modules/@babel/core/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/core/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "node_modules/@babel/core/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/core/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/core/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" - } - }, - "node_modules/@babel/core/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/core/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" + "ms": "2.1.2" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/core/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/core/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", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "node_modules/@babel/core/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.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==", - "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", - "dev": true, - "dependencies": { - "ms": "^2.1.1" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, "node_modules/@babel/core/node_modules/ms": { @@ -429,16 +347,27 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, + "node_modules/@babel/core/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/@babel/generator": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.7.tgz", - "integrity": "sha512-DQwjiKJqH4C3qGiyQCAExJHoZssn49JTMJgZ8SANGgVFdkupcUhLOdkAeoC6kmHZCPfoDG5M0b6cFlSN5wW7Ew==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz", + "integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==", "dev": true, "dependencies": { - "@babel/types": "^7.8.7", + "@babel/types": "^7.17.0", "jsesc": "^2.5.1", - "lodash": "^4.17.13", "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-annotate-as-pure": { @@ -450,17 +379,6 @@ "@babel/types": "^7.10.4" } }, - "node_modules/@babel/helper-annotate-as-pure/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.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", @@ -471,17 +389,6 @@ "@babel/types": "^7.10.4" } }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, "node_modules/@babel/helper-builder-react-jsx": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.10.4.tgz", @@ -503,44 +410,33 @@ "@babel/types": "^7.10.5" } }, - "node_modules/@babel/helper-builder-react-jsx-experimental/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "node_modules/@babel/helper-builder-react-jsx/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", + "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.10.4", - "browserslist": "^4.12.0", - "invariant": "^2.2.4", - "levenary": "^1.1.1", - "semver": "^5.5.0" + "@babel/compat-data": "^7.16.4", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.17.5", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-compilation-targets/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/@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", @@ -558,89 +454,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-create-class-features-plugin/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/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" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.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", @@ -666,78 +479,16 @@ "lodash": "^4.17.19" } }, - "node_modules/@babel/helper-define-map/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==", + "node_modules/@babel/helper-environment-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", + "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", "dev": true, "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-define-map/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-define-map/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-define-map/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helper-define-map/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" + "@babel/types": "^7.16.7" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-define-map/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-define-map/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" + "node": ">=6.9.0" } }, "node_modules/@babel/helper-explode-assignable-expression": { @@ -750,171 +501,42 @@ "@babel/types": "^7.10.4" } }, - "node_modules/@babel/helper-explode-assignable-expression/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==", + "node_modules/@babel/helper-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", + "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", "dev": true, "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/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" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" + "@babel/helper-get-function-arity": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/types": "^7.16.7" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/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", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/@babel/helper-explode-assignable-expression/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==", - "dev": true - }, - "node_modules/@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "node": ">=6.9.0" } }, "node_modules/@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", + "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", "dev": true, "dependencies": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", "dev": true, "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-hoist-variables/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/helper-member-expression-to-functions": { @@ -926,113 +548,35 @@ "@babel/types": "^7.11.0" } }, - "node_modules/@babel/helper-member-expression-to-functions/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", "dev": true, "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-module-imports/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.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==", + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz", + "integrity": "sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==", "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" - } - }, - "node_modules/@babel/helper-module-transforms/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-module-transforms/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" - } - }, - "node_modules/@babel/helper-module-transforms/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helper-module-transforms/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-module-transforms/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-module-transforms/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" + "node": ">=6.9.0" } }, "node_modules/@babel/helper-optimise-call-expression": { @@ -1044,22 +588,14 @@ "@babel/types": "^7.10.4" } }, - "node_modules/@babel/helper-optimise-call-expression/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.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==", - "dev": true + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz", + "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } }, "node_modules/@babel/helper-regex": { "version": "7.10.5", @@ -1083,133 +619,6 @@ "@babel/types": "^7.10.4" } }, - "node_modules/@babel/helper-remap-async-to-generator/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/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" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/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", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/@babel/helper-remap-async-to-generator/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==", - "dev": true - }, "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", @@ -1222,195 +631,16 @@ "@babel/types": "^7.10.4" } }, - "node_modules/@babel/helper-replace-supers/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-replace-supers/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "node_modules/@babel/helper-replace-supers/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-replace-supers/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-replace-supers/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" - } - }, - "node_modules/@babel/helper-replace-supers/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helper-replace-supers/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-replace-supers/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-replace-supers/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", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "node_modules/@babel/helper-replace-supers/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "node_modules/@babel/helper-replace-supers/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/@babel/helper-replace-supers/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==", - "dev": true - }, "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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", + "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", "dev": true, "dependencies": { - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-simple-access/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-simple-access/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helper-simple-access/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" + "@babel/types": "^7.16.7" }, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-simple-access/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-simple-access/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" + "node": ">=6.9.0" } }, "node_modules/@babel/helper-skip-transparent-expression-wrappers": { @@ -1422,31 +652,35 @@ "@babel/types": "^7.11.0" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", "dev": true, "dependencies": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" } }, "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==", - "dev": true + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } }, "node_modules/@babel/helper-wrap-function": { "version": "7.10.4", @@ -1460,286 +694,38 @@ "@babel/types": "^7.10.4" } }, - "node_modules/@babel/helper-wrap-function/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helper-wrap-function/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "node_modules/@babel/helper-wrap-function/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-wrap-function/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-wrap-function/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" - } - }, - "node_modules/@babel/helper-wrap-function/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/helper-wrap-function/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helper-wrap-function/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", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "node_modules/@babel/helper-wrap-function/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/@babel/helper-wrap-function/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==", - "dev": true - }, "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==", + "version": "7.17.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz", + "integrity": "sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==", "dev": true, "dependencies": { - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helpers/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/helpers/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.11.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "node_modules/@babel/helpers/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helpers/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helpers/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" - } - }, - "node_modules/@babel/helpers/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/helpers/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.0", + "@babel/types": "^7.17.0" }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" } }, - "node_modules/@babel/helpers/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/helpers/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", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "node_modules/@babel/helpers/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "node_modules/@babel/helpers/node_modules/debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/@babel/helpers/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==", - "dev": true - }, "node_modules/@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", + "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", "dev": true, "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/parser": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.7.tgz", - "integrity": "sha512-9JWls8WilDXFGxs0phaXAZgpxTZhSk/yOYH2hTHC0X1yC7Z78IJfvR1vJ+rmJKq3I35td2XzXzN6ZLYlna+r/A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", + "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -1894,12 +880,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-optional-chaining/node_modules/@babel/helper-plugin-utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz", - "integrity": "sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ==", - "dev": true - }, "node_modules/@babel/plugin-proposal-optional-chaining/node_modules/@babel/helper-skip-transparent-expression-wrappers": { "version": "7.12.1", "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz", @@ -1909,22 +889,6 @@ "@babel/types": "^7.12.1" } }, - "node_modules/@babel/plugin-proposal-optional-chaining/node_modules/@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", - "dev": true - }, - "node_modules/@babel/plugin-proposal-optional-chaining/node_modules/@babel/types": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.0.tgz", - "integrity": "sha512-O2LVLdcnWplaGxiPBz12d0HcdN8QdxdsWYhz5LSeuukV/5mn2xUUc3gBeU4QBYPJ18g/UToe8F532XJ608prmg==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.14.0", - "to-fast-properties": "^2.0.0" - } - }, "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", @@ -1966,6 +930,18 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-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", @@ -2002,6 +978,18 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@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", @@ -2110,6 +1098,21 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz", + "integrity": "sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "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", @@ -2179,89 +1182,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-classes/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-classes/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-classes/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-classes/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" - } - }, - "node_modules/@babel/plugin-transform-classes/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/plugin-transform-classes/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-transform-classes/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-classes/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.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", @@ -2349,80 +1269,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-function-name/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==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-function-name/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==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-function-name/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-function-name/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==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "node_modules/@babel/plugin-transform-function-name/node_modules/@babel/parser": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-transform-function-name/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==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-function-name/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, "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", @@ -2566,26 +1412,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-parameters/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==", - "dev": true, - "dependencies": { - "@babel/types": "^7.10.4" - } - }, - "node_modules/@babel/plugin-transform-parameters/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, "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", @@ -2880,17 +1706,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/preset-env/node_modules/@babel/types": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.0.tgz", - "integrity": "sha512-O53yME4ZZI0jO1EVGtF1ePGl0LHirG4P1ibcD80XyzZcKhcMFeCXmh4Xb1ifGBIV233Qg12x4rBfQgA+tmOukA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, "node_modules/@babel/preset-modules": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", @@ -2944,31 +1759,38 @@ } }, "node_modules/@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz", - "integrity": "sha512-2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", + "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.6", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.3", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.17.3", + "@babel/types": "^7.17.0", "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" } }, "node_modules/@babel/traverse/node_modules/debug": { @@ -2988,72 +1810,62 @@ "dev": true }, "node_modules/@babel/types": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz", - "integrity": "sha512-k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", "dev": true, "dependencies": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", + "@babel/helper-validator-identifier": "^7.16.7", "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, "node_modules/@google/clasp": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@google/clasp/-/clasp-2.4.0.tgz", - "integrity": "sha512-ormTvr95Y28xp0G0+i78HnxL47n1MANESOB/3GJgUVP5zO9GgmYXH4uNfq8xLwQzmGAhLpKJp73gJIdk7+IOwg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@google/clasp/-/clasp-2.3.1.tgz", + "integrity": "sha512-rBZ0VTfcDmQEzER0WR50BAqwm/x3+ubMzhzvYMUDC+1niViByU+PwmpONp4YCHTGvhhJjWa9OZ3GnILkEAqq9A==", "dev": true, "dependencies": { - "chalk": "^4.1.1", - "chokidar": "^3.5.1", + "chalk": "^4.1.0", "cli-truncate": "^2.1.0", "commander": "^7.2.0", - "debounce": "^1.2.1", - "dotf": "^2.0.0", - "fs-extra": "^10.0.0", + "dotf": "^1.5.3", + "find-up": "^5.0.0", + "fs-extra": "^9.1.0", "fuzzy": "^0.1.3", - "google-auth-library": "^7.1.2", - "googleapis": "^76.0.0", - "inquirer": "^8.1.0", + "gaxios": "^4.2.0", + "google-auth-library": "^6.1.6", + "googleapis": "^66.0.0", + "inquirer": "^7.3.3", "inquirer-autocomplete-prompt-ipt": "^2.0.0", - "is-reachable": "^5.0.0", - "log-symbols": "^5.0.0", + "is-online": "^9.0.0", "loud-rejection": "^2.2.0", "make-dir": "^3.1.0", "multimatch": "^5.0.0", - "normalize-newline": "^4.1.0", - "open": "^8.2.0", - "ora": "^5.4.1", - "p-map": "^5.0.0", - "read-pkg-up": "^8.0.0", + "normalize-newline": "^3.0.0", + "open": "^8.0.2", + "ora": "^5.3.0", + "read-pkg-up": "^7.0.1", "recursive-readdir": "^2.2.2", - "split-lines": "^3.0.0", - "strip-bom": "^5.0.0", - "ts2gas": "^4.0.0", - "typescript": "^4.3.2", - "wtfnode": "^0.8.4" + "split-lines": "^2.0.0", + "strip-bom": "^4.0.0", + "ts2gas": "^3.6.4", + "typescript": "^4.2.3", + "watch": "^1.0.2" }, "bin": { "clasp": "build/src/index.js" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/@google/clasp/node_modules/aggregate-error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.0.tgz", - "integrity": "sha512-8DGp7zUt1E9k0NE2q4jlXHk+V3ORErmwolEdRz9iV+LKJ40WhMHh92cxAvhqV2I+zEn/gotIoqoMs0NjF3xofg==", - "dev": true, - "dependencies": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 10.3.0" } }, "node_modules/@google/clasp/node_modules/ansi-styles": { @@ -3071,44 +1883,10 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@google/clasp/node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@google/clasp/node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@google/clasp/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/@google/clasp/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { "ansi-styles": "^4.1.0", @@ -3121,51 +1899,6 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@google/clasp/node_modules/chokidar": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", - "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/@google/clasp/node_modules/clean-stack": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.1.0.tgz", - "integrity": "sha512-dxXQYI7mfQVcaF12s6sjNFoZ6ZPDQuBBLp3QJ5156k9EvUFClUoZ11fo8HnLQO241DDVntHEug8MOuFO5PSfRg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@google/clasp/node_modules/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" - } - }, "node_modules/@google/clasp/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -3193,30 +1926,6 @@ "node": ">= 10" } }, - "node_modules/@google/clasp/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@google/clasp/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/@google/clasp/node_modules/find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -3234,43 +1943,18 @@ } }, "node_modules/@google/clasp/node_modules/fs-extra": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", - "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "dependencies": { + "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^2.0.0" }, "engines": { - "node": ">=12" - } - }, - "node_modules/@google/clasp/node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/@google/clasp/node_modules/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, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" + "node": ">=10" } }, "node_modules/@google/clasp/node_modules/has-flag": { @@ -3282,76 +1966,6 @@ "node": ">=8" } }, - "node_modules/@google/clasp/node_modules/hosted-git-info": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", - "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@google/clasp/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@google/clasp/node_modules/inquirer": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.1.2.tgz", - "integrity": "sha512-DHLKJwLPNgkfwNmsuEUKSejJFbkv0FMO9SMiQbjI3n5NQuCrSIBqP66ggqyz2a6t2qEolKrMjhQ3+W/xXgUQ+Q==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.3.0", - "run-async": "^2.4.0", - "rxjs": "^7.2.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@google/clasp/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/@google/clasp/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/@google/clasp/node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -3367,18 +1981,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@google/clasp/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@google/clasp/node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -3394,36 +1996,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@google/clasp/node_modules/normalize-package-data": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.2.tgz", - "integrity": "sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==", - "dev": true, - "dependencies": { - "hosted-git-info": "^4.0.1", - "resolve": "^1.20.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@google/clasp/node_modules/normalize-package-data/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@google/clasp/node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -3454,21 +2026,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@google/clasp/node_modules/p-map": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.0.0.tgz", - "integrity": "sha512-FeQNuFp/ecZidgaTXc65qXdTGD7mniwgzZNq5czwcJSy6ClETr2v3y4ZQESGe8C1038XhO/fjfKOyiTNH3d0/g==", - "dev": true, - "dependencies": { - "aggregate-error": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@google/clasp/node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -3488,59 +2045,96 @@ } }, "node_modules/@google/clasp/node_modules/read-pkg": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", - "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, "dependencies": { "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^1.0.1" + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, "node_modules/@google/clasp/node_modules/read-pkg-up": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", - "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, "dependencies": { - "find-up": "^5.0.0", - "read-pkg": "^6.0.0", - "type-fest": "^1.0.1" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" }, "engines": { - "node": ">=12" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@google/clasp/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/@google/clasp/node_modules/read-pkg-up/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": { - "picomatch": "^2.2.1" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=8.10.0" + "node": ">=8" } }, - "node_modules/@google/clasp/node_modules/rxjs": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.2.0.tgz", - "integrity": "sha512-aX8w9OpKrQmiPKfT1bqETtUr9JygIz6GZ+gql8v7CijClsP0laoFUdKzxFAoWuRdSlOdU2+crss+cMf+cqMTnw==", + "node_modules/@google/clasp/node_modules/read-pkg-up/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": { - "tslib": "~2.1.0" + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@google/clasp/node_modules/read-pkg-up/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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@google/clasp/node_modules/read-pkg-up/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/@google/clasp/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "engines": { + "node": ">=8" } }, "node_modules/@google/clasp/node_modules/semver": { @@ -3564,7 +2158,318 @@ "node": ">=8" } }, - "node_modules/@google/clasp/node_modules/to-regex-range": { + "node_modules/@google/clasp/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/@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/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/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/console/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/console/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/@jest/console/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/@jest/console/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/@jest/console/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/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/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/core/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/@jest/core/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/@jest/core/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/@jest/core/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/@jest/core/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/@jest/core/node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@jest/core/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/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==", @@ -3576,28 +2481,553 @@ "node": ">=8.0" } }, - "node_modules/@google/clasp/node_modules/tslib": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", - "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==", - "dev": true - }, - "node_modules/@google/clasp/node_modules/type-fest": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.2.2.tgz", - "integrity": "sha512-pfkPYCcuV0TJoo/jlsUeWNV8rk7uMU6ocnYNvca1Vu+pyKi8Rl8Zo2scPt9O72gCsXIm+dMxOOWuA3VFDSdzWA==", + "node_modules/@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", "dev": true, + "dependencies": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@google/clasp/node_modules/yallist": { + "node_modules/@jest/reporters/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/@jest/reporters/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/@jest/reporters/node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "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/@jest/reporters/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/@jest/reporters/node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/@jest/reporters/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/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==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/reporters/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/source-map/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==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/transform/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/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/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/transform/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/@jest/transform/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/@jest/transform/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/@jest/transform/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/@jest/transform/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/@jest/transform/node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@jest/transform/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/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==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@jest/transform/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/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/@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types/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/@jest/types/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/@jest/types/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/@jest/types/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", + "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.11", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", + "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", + "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.3.tgz", + "integrity": "sha512-nkalE/f1RvRGChwBnEIoBfSEYOXnCRdleKuv6+lePbMDrMZXeDQnqak5XDOeBgrPPyPfAdcCu/B5z+v3VhplGg==", "dev": true }, "node_modules/@nicolo-ribaudo/chokidar-2": { @@ -3710,9 +3140,9 @@ } }, "node_modules/@sindresorhus/is": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", - "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", "dev": true, "engines": { "node": ">=10" @@ -3721,6 +3151,24 @@ "url": "https://github.com/sindresorhus/is?sponsor=1" } }, + "node_modules/@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": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, "node_modules/@szmarczak/http-timer": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", @@ -3733,6 +3181,56 @@ "node": ">=10" } }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/babel__core": { + "version": "7.1.18", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz", + "integrity": "sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz", + "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.3.0" + } + }, "node_modules/@types/cacheable-request": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", @@ -3750,11 +3248,24 @@ "resolved": "https://registry.npmjs.org/@types/classnames/-/classnames-2.2.10.tgz", "integrity": "sha512-1UzDldn9GfYYEsWWnn/P4wkTlkZDH7lDb0wBMGbtIQc9zXEQq7FlKBdZUn6OBqD8sKZZ2RQO2mAjGpXiDGoRmQ==" }, - "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 + "node_modules/@types/debug": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", + "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "dev": true, + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/expect-puppeteer": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/@types/expect-puppeteer/-/expect-puppeteer-4.4.6.tgz", + "integrity": "sha512-RgQND/7RvcJm4NL2qoQbvVHTcfDh3h3yYe0Em0roczXY+MOIBkcgv5WRzVKeQJKO1nyhc4bEAbxpwykjDUMdqg==", + "dev": true, + "dependencies": { + "@types/jest": "*", + "@types/puppeteer": "*" + } }, "node_modules/@types/glob": { "version": "7.1.3", @@ -3766,6 +3277,15 @@ "@types/node": "*" } }, + "node_modules/@types/graceful-fs": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", + "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/http-cache-semantics": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", @@ -3777,10 +3297,513 @@ "resolved": "https://registry.npmjs.org/@types/invariant/-/invariant-2.2.33.tgz", "integrity": "sha512-/jUNmS8d4bCKdqslfxW6dg/9Gksfzxz67IYfqApHn+HvHlMVXwYv2zpTDnS/yaK9BB0i0GlBTaYci0EFE62Hmw==" }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "26.0.24", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", + "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", + "dev": true, + "dependencies": { + "jest-diff": "^26.0.0", + "pretty-format": "^26.0.0" + } + }, + "node_modules/@types/jest-environment-puppeteer": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@types/jest-environment-puppeteer/-/jest-environment-puppeteer-4.4.1.tgz", + "integrity": "sha512-LiZTD6i63le6QMnxi7pJB0SFv/fWtss6VVEEDm/UaeowBgjduf8txyE//j3WEeDPxngTvioUjbzA7Rc6Wc3cBA==", + "dev": true, + "dependencies": { + "@jest/types": ">=24 <=26", + "@types/puppeteer": "*", + "jest-environment-node": ">=24 <=26" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/@jest/environment": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", + "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/@jest/fake-timers": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", + "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/@sinonjs/fake-timers": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@types/jest-environment-puppeteer/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/@types/jest-environment-puppeteer/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "node_modules/@types/jest-environment-puppeteer/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/@types/jest-environment-puppeteer/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/@types/jest-environment-puppeteer/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/@types/jest-environment-puppeteer/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/@types/jest-environment-puppeteer/node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/@types/jest-environment-puppeteer/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/@types/jest-environment-puppeteer/node_modules/jest-environment-node": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz", + "integrity": "sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==", + "dev": true, + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/jest-mock": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", + "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@types/jest-environment-puppeteer/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@types/jest-environment-puppeteer/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/@types/jest/node_modules/@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest/node_modules/@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@types/jest/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@types/jest/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/@types/jest/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/@types/jest/node_modules/diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest/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/@types/jest/node_modules/jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest/node_modules/jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "dev": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@types/jest/node_modules/pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dev": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/jest/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/@types/jest/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "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==", + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", + "integrity": "sha512-YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==", "dev": true }, "node_modules/@types/json5": { @@ -3790,9 +3813,9 @@ "dev": true }, "node_modules/@types/keyv": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.2.tgz", - "integrity": "sha512-/FvAK2p4jQOaJ6CGDHJTqZcUtbZe820qIeTg7o0Shg7drB4JHeL+V/dhSaly7NXx6u8eSee+r7coT+yuJEvDLg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.3.tgz", + "integrity": "sha512-FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg==", "dev": true, "dependencies": { "@types/node": "*" @@ -3804,6 +3827,12 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", "dev": true }, + "node_modules/@types/ms": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", + "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==", + "dev": true + }, "node_modules/@types/node": { "version": "14.0.24", "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.24.tgz", @@ -3816,11 +3845,26 @@ "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", "dev": true }, + "node_modules/@types/prettier": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.4.tgz", + "integrity": "sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==", + "dev": true + }, "node_modules/@types/prop-types": { "version": "15.7.3", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" }, + "node_modules/@types/puppeteer": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.4.tgz", + "integrity": "sha512-3Nau+qi69CN55VwZb0ATtdUAlYlqOOQ3OfQfq0Hqgc4JMFXiQT/XInlwQ9g6LbicDslE6loIFsXFklGh5XmI6Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/react": { "version": "16.9.44", "resolved": "https://registry.npmjs.org/@types/react/-/react-16.9.44.tgz", @@ -3852,11 +3896,261 @@ "@types/node": "*" } }, + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "dev": true + }, "node_modules/@types/warning": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.0.tgz", "integrity": "sha1-DSUBJorY+ZYrdA04fEZU9fjiPlI=" }, + "node_modules/@types/yargs": { + "version": "16.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", + "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "20.2.1", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz", + "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==", + "dev": true + }, + "node_modules/@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": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/experimental-utils": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.4.tgz", + "integrity": "sha512-OglKWOQRWTCoqMSy6pm/kpinEIgdcXYceIcH3EKWUl4S8xhFtN34GQRaAvTIZB9DD94rW7d/U7tUg3SYeDFNHA==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.28.4", + "@typescript-eslint/types": "4.28.4", + "@typescript-eslint/typescript-estree": "4.28.4", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/@typescript-eslint/experimental-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.4.tgz", + "integrity": "sha512-ZJBNs4usViOmlyFMt9X9l+X0WAFcDH7EdSArGqpldXu7aeZxDAuAzHiMAeI+JpSefY2INHrXeqnha39FVqXb8w==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.28.4", + "@typescript-eslint/visitor-keys": "4.28.4" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.4.tgz", + "integrity": "sha512-3eap4QWxGqkYuEmVebUGULMskR6Cuoc/Wii0oSOddleP4EGx1tjLnZQ0ZP33YRoMDCs5O3j56RBV4g14T4jvww==", + "dev": true, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.4.tgz", + "integrity": "sha512-z7d8HK8XvCRyN2SNp+OXC2iZaF+O2BTquGhEYLKLx5k6p0r05ureUtgEfo5f6anLkhCxdHtCf6rPM1p4efHYDQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.28.4", + "@typescript-eslint/visitor-keys": "4.28.4", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/globby": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/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==", + "dev": true + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.4.tgz", + "integrity": "sha512-NIAXAdbz1XdOuzqkJHjNKXKj8QQ4cv5cxR/g0uQhCYf/6//XrmfpaYsM7PnBcNbfvTDLUkqQ5TPNm1sozDdTWg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "4.28.4", + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/@webassemblyjs/ast": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", @@ -4044,6 +4338,12 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "node_modules/abab": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "dev": true + }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -4081,6 +4381,25 @@ "node": ">=0.4.0" } }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/acorn-jsx": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", @@ -4238,9 +4557,9 @@ } }, "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==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "engines": { "node": ">=8" @@ -4541,6 +4860,21 @@ "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", "dev": true }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", @@ -4553,6 +4887,61 @@ "node": ">= 4.5.0" } }, + "node_modules/aws-sdk": { + "version": "2.1092.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1092.0.tgz", + "integrity": "sha512-8PH2rOgZazGT3VfGPkKcvzz2K9ylVfDniJH4WfJXHEBGxu0+XEMDbjuYpe8k/L1C7w0UTP6CuChjqCxgJznrxg==", + "dev": true, + "dependencies": { + "buffer": "4.9.2", + "events": "1.1.1", + "ieee754": "1.1.13", + "jmespath": "0.16.0", + "querystring": "0.2.0", + "sax": "1.2.1", + "url": "0.10.3", + "uuid": "3.3.2", + "xml2js": "0.4.19" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/aws-sdk/node_modules/events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", + "dev": true, + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/aws-sdk/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/aws-sdk/node_modules/url": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/url/-/url-0.10.3.tgz", + "integrity": "sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ=", + "dev": true, + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "node_modules/aws-sdk/node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, "node_modules/axe-core": { "version": "3.5.5", "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-3.5.5.tgz", @@ -4589,6 +4978,107 @@ "eslint": ">= 4.12.1" } }, + "node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "dependencies": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/babel-jest/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/babel-jest/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/babel-jest/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/babel-jest/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/babel-loader": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", @@ -4670,6 +5160,37 @@ "object.assign": "^4.1.0" } }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, "node_modules/babel-plugin-transform-es3-member-expression-literals": { "version": "6.22.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es3-member-expression-literals/-/babel-plugin-transform-es3-member-expression-literals-6.22.0.tgz", @@ -4688,6 +5209,45 @@ "babel-runtime": "^6.22.0" } }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@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-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, "node_modules/babel-runtime": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", @@ -4800,9 +5360,9 @@ } }, "node_modules/bignumber.js": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz", - "integrity": "sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", + "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==", "dev": true, "engines": { "node": "*" @@ -4996,6 +5556,12 @@ "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", "dev": true }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, "node_modules/browserify-aes": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", @@ -5110,16 +5676,16 @@ } }, "node_modules/browserslist": { - "version": "4.16.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", - "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", + "version": "4.19.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz", + "integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==", "dev": true, "dependencies": { - "caniuse-lite": "^1.0.30001219", - "colorette": "^1.2.2", - "electron-to-chromium": "^1.3.723", + "caniuse-lite": "^1.0.30001312", + "electron-to-chromium": "^1.4.71", "escalade": "^3.1.1", - "node-releases": "^1.1.71" + "node-releases": "^2.0.2", + "picocolors": "^1.0.0" }, "bin": { "browserslist": "cli.js" @@ -5132,6 +5698,15 @@ "url": "https://opencollective.com/browserslist" } }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, "node_modules/buffer": { "version": "4.9.2", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", @@ -5143,6 +5718,15 @@ "isarray": "^1.0.0" } }, + "node_modules/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": "*" + } + }, "node_modules/buffer-equal-constant-time": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", @@ -5342,9 +5926,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001245", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz", - "integrity": "sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==", + "version": "1.0.30001312", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz", + "integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==", "dev": true, "funding": { "type": "opencollective", @@ -5365,6 +5949,15 @@ "node": ">=4" } }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", @@ -5412,6 +6005,12 @@ "node": ">=6.0" } }, + "node_modules/ci-info": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz", + "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==", + "dev": true + }, "node_modules/cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", @@ -5422,6 +6021,12 @@ "safe-buffer": "^5.0.1" } }, + "node_modules/cjs-module-lexer": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", + "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", + "dev": true + }, "node_modules/class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", @@ -5497,9 +6102,9 @@ } }, "node_modules/cli-spinners": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.0.tgz", - "integrity": "sha512-t+4/y50K/+4xcCRosKkA7W4gTr1MySvLV0q+PxmG7FJ5g+66ChKurYjxBCjHggHH3HA5Hh9cy+lcUGWDqVH+4Q==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", "dev": true, "engines": { "node": ">=6" @@ -5581,10 +6186,13 @@ } }, "node_modules/cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true + "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" + } }, "node_modules/cliui": { "version": "5.0.0", @@ -5656,6 +6264,34 @@ "node": ">=0.8" } }, + "node_modules/clone-deep": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz", + "integrity": "sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY=", + "dev": true, + "dependencies": { + "for-own": "^0.1.3", + "is-plain-object": "^2.0.1", + "kind-of": "^3.0.2", + "lazy-cache": "^1.0.3", + "shallow-clone": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clone-deep/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/clone-response": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", @@ -5665,6 +6301,22 @@ "mimic-response": "^1.0.0" } }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "dev": true + }, "node_modules/collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", @@ -5693,11 +6345,17 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, - "node_modules/colorette": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", - "dev": true + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } }, "node_modules/commander": { "version": "4.1.1", @@ -6323,6 +6981,15 @@ "node": ">= 8" } }, + "node_modules/cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dev": true, + "dependencies": { + "node-fetch": "2.6.7" + } + }, "node_modules/cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -6468,6 +7135,30 @@ "node": ">=4" } }, + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, "node_modules/csstype": { "version": "2.6.10", "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.10.tgz", @@ -6497,11 +7188,19 @@ "integrity": "sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==", "dev": true }, - "node_modules/debounce": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", - "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", - "dev": true + "node_modules/data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } }, "node_modules/debug": { "version": "2.6.9", @@ -6521,6 +7220,12 @@ "node": ">=0.10.0" } }, + "node_modules/decimal.js": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", + "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==", + "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", @@ -6557,6 +7262,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", + "dev": true + }, "node_modules/deep-equal": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", @@ -6580,6 +7291,15 @@ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/default-gateway": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", @@ -6722,6 +7442,15 @@ "rimraf": "bin.js" } }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -6756,12 +7485,36 @@ "node": ">=0.10.0" } }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/detect-node": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", "dev": true }, + "node_modules/devtools-protocol": { + "version": "0.0.960912", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.960912.tgz", + "integrity": "sha512-I3hWmV9rWHbdnUdmMKHF2NuYutIM2kXz2mdXW8ha7TbRlGTVs+PF+PsB5QWvpCek4Fy9B+msiispCfwlhG5Sqg==", + "dev": true + }, + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, "node_modules/diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", @@ -6816,6 +7569,30 @@ "safe-buffer": "^5.0.1" } }, + "node_modules/dns-socket": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/dns-socket/-/dns-socket-4.2.2.tgz", + "integrity": "sha512-BDeBd8najI4/lS00HSKpdFia+OvUMytaVjfzR9n5Lq8MlZRSvtbI+uLtx1+XmQFls5wFU9dssccTmQQ6nfpjdg==", + "dev": true, + "dependencies": { + "dns-packet": "^5.2.4" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dns-socket/node_modules/dns-packet": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.3.1.tgz", + "integrity": "sha512-spBwIj0TK0Ey3666GwIdWVfUpLyubpU53BTCu8iPn4r4oXd9O14Hjg3EHw3ts2oed77/SeckunUYCyRlSngqHw==", + "dev": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/dns-txt": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", @@ -6887,6 +7664,27 @@ "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", "dev": true }, + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "dev": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/domhandler": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", @@ -6916,18 +7714,24 @@ } }, "node_modules/dotf": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dotf/-/dotf-2.0.0.tgz", - "integrity": "sha512-TKCWsUEZ2t6Nt6Sb7m48PWdNt8ciQsdJ9q+1bVxTZU2wRGs4hj8SKJXnrlm6LJJEb2UnGwYeJ98ZojD+KEqXIQ==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/dotf/-/dotf-1.5.5.tgz", + "integrity": "sha512-XGZoGvOC4Im1TmRYCchjrJ578ponvFjxx+ZeMMLsyHeAT6E9uLzstqP6RAfFLTAM/wNL0Ol/FCxNihly1GNhew==", "dev": true, "dependencies": { "graceful-fs": "^4.2.6", "jsonfile": "^6.1.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">= 10.3.0" } }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, "node_modules/duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", @@ -6974,9 +7778,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.3.779", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.779.tgz", - "integrity": "sha512-nreave0y/1Qhmo8XtO6C/LpawNyC6U26+q7d814/e+tIqUK073pM+4xW7WUXyqCRa5K4wdxHmNMBAi8ap9nEew==", + "version": "1.4.75", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.75.tgz", + "integrity": "sha512-LxgUNeu3BVU7sXaKjUDD9xivocQLxFtq6wgERrutdY/yIOps3ODOZExK1jg8DTEg4U8TUCb5MLGeWFOYuxjF3Q==", "dev": true }, "node_modules/elliptic": { @@ -7000,6 +7804,18 @@ "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true }, + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -7703,6 +8519,27 @@ "node": ">=4" } }, + "node_modules/eslint-plugin-jest": { + "version": "24.3.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-24.3.6.tgz", + "integrity": "sha512-WOVH4TIaBLIeCX576rLcOgjNXqP+jNlCiEmRgFTfQtJ52DpwnIQKAVGlGPAN7CZ33bW6eNfHD6s8ZbEUTQubJg==", + "dev": true, + "dependencies": { + "@typescript-eslint/experimental-utils": "^4.0.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": ">= 4", + "eslint": ">=5" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + } + } + }, "node_modules/eslint-plugin-jsx-a11y": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.3.1.tgz", @@ -7868,12 +8705,12 @@ } }, "node_modules/eslint-scope": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", - "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", + "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", + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" }, "engines": { @@ -8041,17 +8878,26 @@ } }, "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==", + "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" + "estraverse": "^5.2.0" }, "engines": { "node": ">=4.0" } }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, "node_modules/estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", @@ -8125,6 +8971,15 @@ "safe-buffer": "^5.1.1" } }, + "node_modules/exec-sh": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.2.tgz", + "integrity": "sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw==", + "dev": true, + "dependencies": { + "merge": "^1.2.0" + } + }, "node_modules/execa": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", @@ -8152,6 +9007,15 @@ "node": ">=0.10.0" } }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, "node_modules/expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", @@ -8206,6 +9070,21 @@ "node": ">=0.10.0" } }, + "node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, "node_modules/express": { "version": "4.17.1", "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", @@ -8388,6 +9267,64 @@ "node": ">=0.10.0" } }, + "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/extract-zip/node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/extract-zip/node_modules/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": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/extract-zip/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==", + "dev": true + }, "node_modules/fast-deep-equal": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", @@ -8526,6 +9463,24 @@ "node": ">=0.8.0" } }, + "node_modules/fb-watchman": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", + "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/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": { + "pend": "~1.2.0" + } + }, "node_modules/figgy-pudding": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", @@ -8696,9 +9651,9 @@ } }, "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==", + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", "dev": true, "funding": [ { @@ -8708,6 +9663,11 @@ ], "engines": { "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, "node_modules/for-in": { @@ -8719,6 +9679,32 @@ "node": ">=0.10.0" } }, + "node_modules/for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "dependencies": { + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", @@ -8759,6 +9745,12 @@ "readable-stream": "^2.0.0" } }, + "node_modules/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": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -8852,34 +9844,30 @@ }, "node_modules/fsevents/node_modules/abbrev": { "version": "1.1.1", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/ansi-regex": { "version": "2.1.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/fsevents/node_modules/aproba": { "version": "1.2.0", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/are-we-there-yet": { "version": "1.1.5", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" @@ -8887,17 +9875,15 @@ }, "node_modules/fsevents/node_modules/balanced-match": { "version": "1.0.0", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/brace-expansion": { "version": "1.1.11", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -8905,75 +9891,66 @@ }, "node_modules/fsevents/node_modules/chownr": { "version": "1.1.3", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/code-point-at": { "version": "1.1.0", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/fsevents/node_modules/concat-map": { "version": "0.0.1", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/console-control-strings": { "version": "1.1.0", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/core-util-is": { "version": "1.0.2", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/debug": { "version": "3.2.6", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "ms": "^2.1.1" } }, "node_modules/fsevents/node_modules/deep-extend": { "version": "0.6.0", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=4.0.0" } }, "node_modules/fsevents/node_modules/delegates": { "version": "1.0.0", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/detect-libc": { "version": "1.0.3", - "dev": true, + "extraneous": true, "inBundle": true, "license": "Apache-2.0", - "optional": true, "bin": { "detect-libc": "bin/detect-libc.js" }, @@ -8983,27 +9960,24 @@ }, "node_modules/fsevents/node_modules/fs-minipass": { "version": "1.2.7", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "minipass": "^2.6.0" } }, "node_modules/fsevents/node_modules/fs.realpath": { "version": "1.0.0", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/gauge": { "version": "2.7.4", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "aproba": "^1.0.3", "console-control-strings": "^1.0.0", @@ -9017,10 +9991,9 @@ }, "node_modules/fsevents/node_modules/glob": { "version": "7.1.6", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -9038,17 +10011,15 @@ }, "node_modules/fsevents/node_modules/has-unicode": { "version": "2.0.1", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/iconv-lite": { "version": "0.4.24", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -9058,20 +10029,18 @@ }, "node_modules/fsevents/node_modules/ignore-walk": { "version": "3.0.3", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "minimatch": "^3.0.4" } }, "node_modules/fsevents/node_modules/inflight": { "version": "1.0.6", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -9079,27 +10048,24 @@ }, "node_modules/fsevents/node_modules/inherits": { "version": "2.0.4", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/ini": { "version": "1.3.5", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "engines": { "node": "*" } }, "node_modules/fsevents/node_modules/is-fullwidth-code-point": { "version": "1.0.0", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "number-is-nan": "^1.0.0" }, @@ -9109,17 +10075,15 @@ }, "node_modules/fsevents/node_modules/isarray": { "version": "1.0.0", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/minimatch": { "version": "3.0.4", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "brace-expansion": "^1.1.7" }, @@ -9129,17 +10093,15 @@ }, "node_modules/fsevents/node_modules/minimist": { "version": "0.0.8", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/minipass": { "version": "2.9.0", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -9147,20 +10109,18 @@ }, "node_modules/fsevents/node_modules/minizlib": { "version": "1.3.3", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "minipass": "^2.9.0" } }, "node_modules/fsevents/node_modules/mkdirp": { "version": "0.5.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "minimist": "0.0.8" }, @@ -9170,17 +10130,15 @@ }, "node_modules/fsevents/node_modules/ms": { "version": "2.1.2", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/needle": { "version": "2.4.0", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "debug": "^3.2.6", "iconv-lite": "^0.4.4", @@ -9195,10 +10153,9 @@ }, "node_modules/fsevents/node_modules/node-pre-gyp": { "version": "0.14.0", - "dev": true, + "extraneous": true, "inBundle": true, "license": "BSD-3-Clause", - "optional": true, "dependencies": { "detect-libc": "^1.0.2", "mkdirp": "^0.5.1", @@ -9217,10 +10174,9 @@ }, "node_modules/fsevents/node_modules/nopt": { "version": "4.0.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "abbrev": "1", "osenv": "^0.1.4" @@ -9231,27 +10187,24 @@ }, "node_modules/fsevents/node_modules/npm-bundled": { "version": "1.1.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "npm-normalize-package-bin": "^1.0.1" } }, "node_modules/fsevents/node_modules/npm-normalize-package-bin": { "version": "1.0.1", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/npm-packlist": { "version": "1.4.7", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "ignore-walk": "^3.0.1", "npm-bundled": "^1.0.1" @@ -9259,10 +10212,9 @@ }, "node_modules/fsevents/node_modules/npmlog": { "version": "4.1.2", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "are-we-there-yet": "~1.1.2", "console-control-strings": "~1.1.0", @@ -9272,60 +10224,54 @@ }, "node_modules/fsevents/node_modules/number-is-nan": { "version": "1.0.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/fsevents/node_modules/object-assign": { "version": "4.1.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/fsevents/node_modules/once": { "version": "1.4.0", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "wrappy": "1" } }, "node_modules/fsevents/node_modules/os-homedir": { "version": "1.0.2", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/fsevents/node_modules/os-tmpdir": { "version": "1.0.2", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/fsevents/node_modules/osenv": { "version": "0.1.5", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "os-homedir": "^1.0.0", "os-tmpdir": "^1.0.0" @@ -9333,27 +10279,24 @@ }, "node_modules/fsevents/node_modules/path-is-absolute": { "version": "1.0.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/fsevents/node_modules/process-nextick-args": { "version": "2.0.1", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/rc": { "version": "1.2.8", - "dev": true, + "extraneous": true, "inBundle": true, "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", - "optional": true, "dependencies": { "deep-extend": "^0.6.0", "ini": "~1.3.0", @@ -9366,17 +10309,15 @@ }, "node_modules/fsevents/node_modules/rc/node_modules/minimist": { "version": "1.2.0", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/readable-stream": { "version": "2.3.6", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -9389,10 +10330,9 @@ }, "node_modules/fsevents/node_modules/rimraf": { "version": "2.7.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "glob": "^7.1.3" }, @@ -9402,65 +10342,57 @@ }, "node_modules/fsevents/node_modules/safe-buffer": { "version": "5.1.2", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/safer-buffer": { "version": "2.1.2", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/sax": { "version": "1.2.4", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/semver": { "version": "5.7.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "bin": { "semver": "bin/semver" } }, "node_modules/fsevents/node_modules/set-blocking": { "version": "2.0.0", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/signal-exit": { "version": "3.0.2", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/string_decoder": { "version": "1.1.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "safe-buffer": "~5.1.0" } }, "node_modules/fsevents/node_modules/string-width": { "version": "1.0.2", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -9472,10 +10404,9 @@ }, "node_modules/fsevents/node_modules/strip-ansi": { "version": "3.0.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "dependencies": { "ansi-regex": "^2.0.0" }, @@ -9485,20 +10416,18 @@ }, "node_modules/fsevents/node_modules/strip-json-comments": { "version": "2.0.1", - "dev": true, + "extraneous": true, "inBundle": true, "license": "MIT", - "optional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/fsevents/node_modules/tar": { "version": "4.4.13", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "chownr": "^1.1.1", "fs-minipass": "^1.2.5", @@ -9514,34 +10443,30 @@ }, "node_modules/fsevents/node_modules/util-deprecate": { "version": "1.0.2", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "MIT", - "optional": true + "license": "MIT" }, "node_modules/fsevents/node_modules/wide-align": { "version": "1.1.3", - "dev": true, + "extraneous": true, "inBundle": true, "license": "ISC", - "optional": true, "dependencies": { "string-width": "^1.0.2 || 2" } }, "node_modules/fsevents/node_modules/wrappy": { "version": "1.0.2", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/fsevents/node_modules/yallist": { "version": "3.1.1", - "dev": true, + "extraneous": true, "inBundle": true, - "license": "ISC", - "optional": true + "license": "ISC" }, "node_modules/function-bind": { "version": "1.1.1", @@ -9614,25 +10539,25 @@ } }, "node_modules/gaxios": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.0.tgz", - "integrity": "sha512-pHplNbslpwCLMyII/lHPWFQbJWOX0B3R1hwBEOvzYi1GmdKZruuEHK4N9V6f7tf1EaPYyF80mui1+344p6SmLg==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.2.tgz", + "integrity": "sha512-T+ap6GM6UZ0c4E6yb1y/hy2UB6hTrqhglp3XfmU9qbLCGRYhLVV5aRPpC4EmoG8N8zOnkYCgoBz+ScvGAARY6Q==", "dev": true, "dependencies": { "abort-controller": "^3.0.0", "extend": "^3.0.2", "https-proxy-agent": "^5.0.0", "is-stream": "^2.0.0", - "node-fetch": "^2.3.0" + "node-fetch": "^2.6.1" }, "engines": { "node": ">=10" } }, "node_modules/gcp-metadata": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.0.tgz", - "integrity": "sha512-L9XQUpvKJCM76YRSmcxrR4mFPzPGsgZUH+GgHMxAET8qc6+BhRJq63RLhWakgEO2KKVgeSDVfyiNjkGSADwNTA==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz", + "integrity": "sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==", "dev": true, "dependencies": { "gaxios": "^4.0.0", @@ -9643,9 +10568,9 @@ } }, "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==", + "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, "engines": { "node": ">=6.9.0" @@ -9674,6 +10599,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "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" + } + }, "node_modules/get-stdin": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", @@ -9834,6 +10768,12 @@ "node": ">=0.10.0" } }, + "node_modules/glur": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/glur/-/glur-1.1.2.tgz", + "integrity": "sha1-8g6jbbEDv8KSNDkh8fkeg8NGdok=", + "dev": true + }, "node_modules/google-apps-script-webpack-dev-server": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/google-apps-script-webpack-dev-server/-/google-apps-script-webpack-dev-server-1.0.0.tgz", @@ -9846,9 +10786,9 @@ } }, "node_modules/google-auth-library": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.3.0.tgz", - "integrity": "sha512-MPeeMlnsYnoiiVFMwX3hgaS684aiXrSqKoDP+xL4Ejg4Z0qLvIeg4XsaChemyFI8ZUO7ApwDAzNtgmhWSDNh5w==", + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.6.tgz", + "integrity": "sha512-Q+ZjUEvLQj/lrVHF/IQwRo6p3s8Nc44Zk/DALsN+ac3T4HY/g/3rrufkgtl+nZ1TW7DNAw5cTChdVp4apUXVgQ==", "dev": true, "dependencies": { "arrify": "^2.0.0", @@ -9884,12 +10824,12 @@ "dev": true }, "node_modules/google-p12-pem": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.0.tgz", - "integrity": "sha512-JUtEHXL4DY/N+xhlm7TC3qL797RPAtk0ZGXNs3/gWyiDHYoA/8Rjes0pztkda+sZv4ej1EoO2KhWgW5V9KTrSQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.3.tgz", + "integrity": "sha512-MC0jISvzymxePDVembypNefkAQp+DRP7dBE+zNUPaIjEspIlYg0++OrsNr248V9tPbz6iqtZ7rX1hxWA5B8qBQ==", "dev": true, "dependencies": { - "node-forge": "^0.10.0" + "node-forge": "^1.0.0" }, "bin": { "gp12-pem": "build/src/bin/gp12-pem.js" @@ -9898,28 +10838,37 @@ "node": ">=10" } }, + "node_modules/google-p12-pem/node_modules/node-forge": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz", + "integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==", + "dev": true, + "engines": { + "node": ">= 6.13.0" + } + }, "node_modules/googleapis": { - "version": "76.0.0", - "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-76.0.0.tgz", - "integrity": "sha512-l/TFSW7IRFcb7wF641BlmuP8Ox1ncuzJk5Fcs2947otlGBm5ktDxFhPkmrcNDaG+LWPQsuDwP1ojL0xV39cpmw==", + "version": "66.0.0", + "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-66.0.0.tgz", + "integrity": "sha512-jdEleRoyo/AeJZjKGC7Z2mHgochn2vR2JKqey6kydRkIBmCZxoQKLisRR4H8CRYZeEd6+c8Ns/LzS1S7qUjoFw==", "dev": true, "dependencies": { - "google-auth-library": "^7.0.2", - "googleapis-common": "^5.0.2" + "google-auth-library": "^6.0.0", + "googleapis-common": "^4.4.1" }, "engines": { "node": ">=10" } }, "node_modules/googleapis-common": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.0.3.tgz", - "integrity": "sha512-8khlXblLyT9UpB+NTZzrWfKQUW6U7gO6WnfJp51WrLgpzP7zkO+OshwtdArq8z2afj37jdrhbIT8eAxZLdwvwA==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-4.4.3.tgz", + "integrity": "sha512-W46WKCk3QtlCCfmZyQIH5zxmDOyeV5Qj+qs7nr2ox08eRkEJMWp6iwv542R/PsokXaGUSrmif4vCC4+rGzRSsQ==", "dev": true, "dependencies": { "extend": "^3.0.2", "gaxios": "^4.0.0", - "google-auth-library": "^7.0.2", + "google-auth-library": "^6.0.0", "qs": "^6.7.0", "url-template": "^2.0.8", "uuid": "^8.0.0" @@ -9929,9 +10878,9 @@ } }, "node_modules/got": { - "version": "11.8.2", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.2.tgz", - "integrity": "sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ==", + "version": "11.8.3", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.3.tgz", + "integrity": "sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg==", "dev": true, "dependencies": { "@sindresorhus/is": "^4.0.0", @@ -9939,7 +10888,7 @@ "@types/cacheable-request": "^6.0.1", "@types/responselike": "^1.0.0", "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.1", + "cacheable-request": "^7.0.2", "decompress-response": "^6.0.0", "http2-wrapper": "^1.0.0-beta.5.2", "lowercase-keys": "^2.0.0", @@ -9954,19 +10903,19 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "version": "4.2.9", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", "dev": true }, "node_modules/gtoken": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.0.tgz", - "integrity": "sha512-mCcISYiaRZrJpfqOs0QWa6lfEM/C1V9ASkzFmuz43XBb5s1Vynh+CZy1ECeeJXVGx2PRByjYzb4Y4/zr1byr0w==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz", + "integrity": "sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ==", "dev": true, "dependencies": { "gaxios": "^4.0.0", - "google-p12-pem": "^3.0.3", + "google-p12-pem": "^3.1.3", "jws": "^4.0.0" }, "engines": { @@ -9991,6 +10940,27 @@ "node": ">= 0.4.0" } }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-ansi/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" + } + }, "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -10159,12 +11129,30 @@ "wbuf": "^1.1.0" } }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/html-entities": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.3.1.tgz", "integrity": "sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==", "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/html-minifier": { "version": "3.5.21", "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", @@ -10372,6 +11360,43 @@ "node": ">=8.0.0" } }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/http-proxy-agent/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==", + "dev": true + }, "node_modules/http-proxy-middleware": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", @@ -10442,6 +11467,15 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -10578,27 +11612,27 @@ "dev": true }, "node_modules/inquirer": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.6.tgz", - "integrity": "sha512-7SVO4h+QIdMq6XcqIqrNte3gS5MzCCKZdsq9DO4PJziBFNYzP3PGFbDjgadDb//MCahzgjCxvQ/O2wa7kx9o4w==", + "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": "^3.0.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", + "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", - "lodash": "^4.17.15", + "lodash": "^4.17.19", "mute-stream": "0.0.8", "run-async": "^2.4.0", - "rxjs": "^6.5.3", + "rxjs": "^6.6.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0", "through": "^2.3.6" }, "engines": { - "node": ">=6.0.0" + "node": ">=8.0.0" } }, "node_modules/inquirer-autocomplete-prompt-ipt": { @@ -10621,12 +11655,11 @@ } }, "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==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" }, "engines": { @@ -10637,16 +11670,19 @@ } }, "node_modules/inquirer/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, "node_modules/inquirer/node_modules/color-convert": { @@ -10677,9 +11713,9 @@ } }, "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==", + "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, "dependencies": { "has-flag": "^4.0.0" @@ -10738,6 +11774,15 @@ "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", "dev": true }, + "node_modules/ip-regex": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz", + "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", @@ -10938,6 +11983,15 @@ "node": ">=8" } }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/is-glob": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", @@ -10959,6 +12013,18 @@ "node": ">=8" } }, + "node_modules/is-ip": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-3.1.0.tgz", + "integrity": "sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==", + "dev": true, + "dependencies": { + "ip-regex": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -10983,6 +12049,24 @@ "node": ">=0.10.0" } }, + "node_modules/is-online": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/is-online/-/is-online-9.0.1.tgz", + "integrity": "sha512-+08dRW0dcFOtleR2N3rHRVxDyZtQitUp9cC+KpKTds0mXibbQyW5js7xX0UGyQXkaLUJObe0w6uQ4ex34lX9LA==", + "dev": true, + "dependencies": { + "got": "^11.8.0", + "p-any": "^3.0.0", + "p-timeout": "^3.2.0", + "public-ip": "^4.0.4" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", @@ -11028,14 +12112,11 @@ "node": ">=0.10.0" } }, - "node_modules/is-port-reachable": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-port-reachable/-/is-port-reachable-3.0.0.tgz", - "integrity": "sha512-056IzLiWHdgVd6Eq1F9HtJl+cIkvi5X2MJ/A1fjQtByHkzQE1wGardnPhqrarOGDF88BOW+297X7PDvZ2vcyVg==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true }, "node_modules/is-promise": { "version": "2.1.0", @@ -11043,28 +12124,6 @@ "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", "dev": true }, - "node_modules/is-reachable": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-reachable/-/is-reachable-5.0.0.tgz", - "integrity": "sha512-frRPbdrQWEqbnF1il9Dyrf52Q40exkHdo4/grWMjHrBn4G1DKC9sbuQihgANkJPNi2eosU4AXBsrITdXmc3IQg==", - "dev": true, - "dependencies": { - "arrify": "^2.0.1", - "got": "^11.7.0", - "is-port-reachable": "^3.0.0", - "p-any": "^3.0.0", - "p-timeout": "^3.2.0", - "prepend-http": "^3.0.1", - "router-ips": "^1.0.0", - "url-parse": "^1.4.7" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-regex": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", @@ -11116,13 +12175,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "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-unicode-supported": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.1.0.tgz", - "integrity": "sha512-lDcxivp8TJpLG75/DpatAqNzOpDPSpED8XNtrpBHTdQ2InQ1PbW78jhwSxyxhhu+xbVSast2X38bwj8atwoUQA==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -11167,6 +12232,2595 @@ "node": ">=0.10.0" } }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", + "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.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-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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/istanbul-lib-source-maps/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==", + "dev": true + }, + "node_modules/istanbul-lib-source-maps/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==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-changed-files/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/jest-changed-files/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/jest-changed-files/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-changed-files/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-changed-files/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/jest-changed-files/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/jest-changed-files/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/jest-changed-files/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/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/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/jest-circus/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/jest-circus/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/jest-circus/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-circus/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/jest-cli/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/jest-cli/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/jest-cli/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/jest-cli/node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-cli/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/jest-cli/node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/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/jest-cli/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/jest-cli/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-cli/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-cli/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/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/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config/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/jest-config/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/jest-config/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/jest-config/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/jest-config/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/jest-config/node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-config/node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-config/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/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/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff/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/jest-diff/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/jest-diff/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/jest-diff/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/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/jest-each/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/jest-each/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/jest-each/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-haste-map/node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/jest-haste-map/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/jest-haste-map/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/jest-haste-map/node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/jest-haste-map/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/jest-haste-map/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/jest-haste-map/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-haste-map/node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-haste-map/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jest-haste-map/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/jest-image-snapshot": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/jest-image-snapshot/-/jest-image-snapshot-4.5.1.tgz", + "integrity": "sha512-0YkgupgkkCx0wIZkxvqs/oNiUT0X0d2WTpUhaAp+Dy6CpqBUZMRTIZo4KR1f+dqmx6WXrLCvecjnHLIsLkI+gQ==", + "dev": true, + "dependencies": { + "chalk": "^1.1.3", + "get-stdin": "^5.0.1", + "glur": "^1.1.2", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "pixelmatch": "^5.1.0", + "pngjs": "^3.4.0", + "rimraf": "^2.6.2", + "ssim.js": "^3.1.1" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "jest": ">=20 <=27" + } + }, + "node_modules/jest-image-snapshot/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" + } + }, + "node_modules/jest-image-snapshot/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-image-snapshot/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-image-snapshot/node_modules/get-stdin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz", + "integrity": "sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g=", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-image-snapshot/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/jest-image-snapshot/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/jest-image-snapshot/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/jest-image-snapshot/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-jasmine2/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-jasmine2/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-jasmine2/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/jest-jasmine2/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/jest-jasmine2/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/jest-jasmine2/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "dependencies": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/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/jest-matcher-utils/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/jest-matcher-utils/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/jest-matcher-utils/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/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/jest-message-util/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util/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/jest-message-util/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/jest-message-util/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/jest-message-util/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/jest-message-util/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/jest-message-util/node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-message-util/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/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/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", + "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-resolve/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-resolve/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/jest-resolve/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/jest-resolve/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/jest-resolve/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-resolve/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "dependencies": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runner/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/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/jest-runner/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/jest-runner/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/jest-runner/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-runner/node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-runtime/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runtime/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/jest-runtime/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/jest-runtime/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/jest-runtime/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/jest-runtime/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-runtime/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/jest-runtime/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/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/jest-runtime/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/jest-runtime/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/jest-runtime/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runtime/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/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot/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/jest-snapshot/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/jest-snapshot/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/jest-snapshot/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util/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/jest-util/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/jest-util/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/jest-util/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/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/jest-validate/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/jest-validate/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/jest-validate/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-watcher/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher/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/jest-watcher/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/jest-watcher/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/jest-watcher/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-worker": { "version": "25.5.0", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", @@ -11201,6 +14855,64 @@ "node": ">=8" } }, + "node_modules/jest/node_modules/import-local": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", + "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/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/jest/node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest/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/jmespath": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.16.0.tgz", + "integrity": "sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/jquery": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", @@ -11225,6 +14937,126 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsdom/node_modules/acorn": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", + "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/jsdom/node_modules/escodegen": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", + "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "dev": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/jsdom/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/jsdom/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==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jsdom/node_modules/ws": { + "version": "7.5.7", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz", + "integrity": "sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -11344,9 +15176,9 @@ } }, "node_modules/keyv": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.3.tgz", - "integrity": "sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.1.1.tgz", + "integrity": "sha512-tGv1yP6snQVDSM4X6yxrv2zzq/EvpW+oYiUz6aueW1u9CtS8RzUQYxxmFwgZlO2jSgCxQbchhxaqXXp2hnKGpQ==", "dev": true, "dependencies": { "json-buffer": "3.0.1" @@ -11367,6 +15199,15 @@ "node": ">=0.10.0" } }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/language-subtag-registry": { "version": "0.3.20", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.20.tgz", @@ -11382,6 +15223,15 @@ "language-subtag-registry": "~0.3.2" } }, + "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/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -11586,16 +15436,16 @@ "integrity": "sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ==" }, "node_modules/log-symbols": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-5.0.0.tgz", - "integrity": "sha512-zBsSKauX7sM0kcqrf8VpMRPqcWzU6a/Wi7iEl0QlVSCiIZ4CctaLdfVdiZUn6q2/nenyt392qJqpw9FhNAwqxQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "dependencies": { "chalk": "^4.1.0", - "is-unicode-supported": "^1.0.0" + "is-unicode-supported": "^0.1.0" }, "engines": { - "node": ">=12" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -11617,9 +15467,9 @@ } }, "node_modules/log-symbols/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { "ansi-styles": "^4.1.0", @@ -11745,6 +15595,15 @@ "node": ">=6" } }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, "node_modules/map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -11796,6 +15655,38 @@ "readable-stream": "^2.0.1" } }, + "node_modules/merge": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz", + "integrity": "sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==", + "dev": true + }, + "node_modules/merge-deep": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/merge-deep/-/merge-deep-3.0.3.tgz", + "integrity": "sha512-qtmzAS6t6grwEkNrunqTBdn0qKwFgNWvlxUbAV8es9M7Ot1EbyApytCnvE0jALPa46ZpKDUo527kKiaWplmlFA==", + "dev": true, + "dependencies": { + "arr-union": "^3.1.0", + "clone-deep": "^0.2.4", + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/merge-deep/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/merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -12069,6 +15960,28 @@ "node": ">=0.10.0" } }, + "node_modules/mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dev": true, + "dependencies": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-object/node_modules/for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -12081,6 +15994,12 @@ "node": ">=10" } }, + "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/module-to-cdn": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/module-to-cdn/-/module-to-cdn-3.1.5.tgz", @@ -12256,12 +16175,45 @@ } }, "node_modules/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", "dev": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, "engines": { "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", + "dev": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dev": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "node_modules/node-forge": { @@ -12273,6 +16225,12 @@ "node": ">= 6.0.0" } }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "dev": true + }, "node_modules/node-libs-browser": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", @@ -12311,24 +16269,18 @@ "dev": true }, "node_modules/node-releases": { - "version": "1.1.73", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", - "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", + "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==", "dev": true }, "node_modules/normalize-newline": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/normalize-newline/-/normalize-newline-4.1.0.tgz", - "integrity": "sha512-ff4jKqMI8Xl50/4Mms/9jPobzAV/UK+kXG2XJ/7AqOmxIx8mqfqTIHYxuAnEgJ2AQeBbLnlbmZ5+38Y9A0w/YA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-newline/-/normalize-newline-3.0.0.tgz", + "integrity": "sha1-HL6oBKukNgAfg5OKsh7AOdaa6dM=", "dev": true, - "dependencies": { - "replace-buffer": "^1.2.1" - }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, "node_modules/normalize-package-data": { @@ -12385,6 +16337,12 @@ "boolbase": "~1.0.0" } }, + "node_modules/nwsapi": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", + "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "dev": true + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -12720,15 +16678,18 @@ } }, "node_modules/onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "dependencies": { "mimic-fn": "^2.1.0" }, "engines": { "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/open": { @@ -12828,9 +16789,9 @@ } }, "node_modules/ora/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { "ansi-styles": "^4.1.0", @@ -12870,34 +16831,6 @@ "node": ">=8" } }, - "node_modules/ora/node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora/node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/ora/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -13127,6 +17060,12 @@ "node": ">=0.10.0" } }, + "node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -13239,10 +17178,22 @@ "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/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, "node_modules/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, "engines": { "node": ">=8.6" @@ -13281,6 +17232,36 @@ "node": ">=0.10.0" } }, + "node_modules/pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pixelmatch": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-5.2.1.tgz", + "integrity": "sha512-WjcAdYSnKrrdDdqTcVEY7aB7UhhwjYQKYhHiBXdJef0MOaQeYpUdQ+iVyBLa5YBKS8MPVPPMX7rpOByISLpeEQ==", + "dev": true, + "dependencies": { + "pngjs": "^4.0.1" + }, + "bin": { + "pixelmatch": "bin/pixelmatch" + } + }, + "node_modules/pixelmatch/node_modules/pngjs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-4.0.1.tgz", + "integrity": "sha512-rf5+2/ioHeQxR6IxuYNYGFytUyG3lma/WW1nsmjeHlWwtb2aByla6dkVc8pmJ9nplzkTA0q2xx7mMWrOTqT4Gg==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, "node_modules/pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -13339,6 +17320,15 @@ "node": ">=4" } }, + "node_modules/pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/portfinder": { "version": "1.0.28", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", @@ -13509,12 +17499,12 @@ } }, "node_modules/prepend-http": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-3.0.1.tgz", - "integrity": "sha512-BLxfZh+m6UiAiCPZFJ4+vYoL7NrRs5XgCTRrjseATAggXhdZKKxn+JUNmuVYWY23bDHgaEHodxw8mnmtVEDtHw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/prettier": { @@ -13551,6 +17541,38 @@ "utila": "~0.4" } }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/pretty-format/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -13581,6 +17603,19 @@ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", "dev": true }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/prop-types": { "version": "15.7.2", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", @@ -13616,12 +17651,24 @@ "node": ">= 0.10" } }, + "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==", + "dev": true + }, "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", @@ -13642,6 +17689,177 @@ "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", "dev": true }, + "node_modules/public-ip": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/public-ip/-/public-ip-4.0.4.tgz", + "integrity": "sha512-EJ0VMV2vF6Cu7BIPo3IMW1Maq6ME+fbR0NcPmqDfpfNGIRPue1X8QrGjrg/rfjDkOsIkKHIf2S5FlEa48hFMTA==", + "dev": true, + "dependencies": { + "dns-socket": "^4.2.2", + "got": "^9.6.0", + "is-ip": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/public-ip/node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/public-ip/node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/public-ip/node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/public-ip/node_modules/cacheable-request/node_modules/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": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/public-ip/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/public-ip/node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "node_modules/public-ip/node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/public-ip/node_modules/got/node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/public-ip/node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, + "node_modules/public-ip/node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/public-ip/node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/public-ip/node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/public-ip/node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/public-ip/node_modules/responselike/node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -13682,10 +17900,297 @@ "node": ">=6" } }, + "node_modules/puppeteer": { + "version": "13.4.1", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.4.1.tgz", + "integrity": "sha512-2arcYPEGvLV9HvOw01Zv1b1IAXrMWHqsFJn0Hn00qe9HtCmaF0b8FlrbdLjCIbkaFc6icH5+GqcG8R5KxlJSRg==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "cross-fetch": "3.1.5", + "debug": "4.3.3", + "devtools-protocol": "0.0.960912", + "extract-zip": "2.0.1", + "https-proxy-agent": "5.0.0", + "pkg-dir": "4.2.0", + "progress": "2.0.3", + "proxy-from-env": "1.1.0", + "rimraf": "3.0.2", + "tar-fs": "2.1.1", + "unbzip2-stream": "1.4.3", + "ws": "8.5.0" + }, + "engines": { + "node": ">=10.18.1" + } + }, + "node_modules/puppeteer-extra": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/puppeteer-extra/-/puppeteer-extra-3.2.3.tgz", + "integrity": "sha512-CnSN9yIedbAbS8WmRybaDHJLf6goRk+VYM/kbH6i/+EMadCaAeh2O+1/mFUMN2LbkbDNAp2Vd/UwrTVCHjTxyg==", + "dev": true, + "dependencies": { + "@types/debug": "^4.1.0", + "@types/puppeteer": "*", + "debug": "^4.1.1", + "deepmerge": "^4.2.2" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "puppeteer": "*" + } + }, + "node_modules/puppeteer-extra-plugin": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin/-/puppeteer-extra-plugin-3.2.0.tgz", + "integrity": "sha512-wbiw12USE3b+maMk/IMaroYsz7rusVI9G+ml6pCFCnFFh91Z9BAEiVzhCpOHuquVXEiCCsDTWhDUgvdNxQHOyw==", + "dev": true, + "dependencies": { + "@types/debug": "^4.1.0", + "debug": "^4.1.1", + "merge-deep": "^3.0.1" + }, + "engines": { + "node": ">=9.11.2" + }, + "peerDependencies": { + "puppeteer-extra": "*" + } + }, + "node_modules/puppeteer-extra-plugin-stealth": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-stealth/-/puppeteer-extra-plugin-stealth-2.9.0.tgz", + "integrity": "sha512-erZ9lkIcOkfYmLPP2jv2AiqvNBFhQJinWJhcm40pqSjwJTsZXHsTARUyRCsBYEEBvNIs3Wz3E0zVlTRc4IJ6Hg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "puppeteer-extra-plugin": "^3.2.0", + "puppeteer-extra-plugin-user-preferences": "^2.3.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/puppeteer-extra-plugin-stealth/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-stealth/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==", + "dev": true + }, + "node_modules/puppeteer-extra-plugin-user-data-dir": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-user-data-dir/-/puppeteer-extra-plugin-user-data-dir-2.3.1.tgz", + "integrity": "sha512-yhaYMaNFdfQ1LbA94ZElW1zU8rh+MFmO+GZA0gtQ8BXc+UZ6aRrWS9flIZvlXDzk+ZsXhCbTEohEwZ8lEDLRVA==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^10.0.0", + "puppeteer-extra-plugin": "^3.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/puppeteer-extra-plugin-user-data-dir/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-user-data-dir/node_modules/fs-extra": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.1.tgz", + "integrity": "sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/puppeteer-extra-plugin-user-data-dir/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==", + "dev": true + }, + "node_modules/puppeteer-extra-plugin-user-preferences": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-user-preferences/-/puppeteer-extra-plugin-user-preferences-2.3.1.tgz", + "integrity": "sha512-t/FyGQj2aqtHOROqL02z+k2kNQe0cjT0Hd9pG5FJ7x0JXx1722PhOuK7FeJLQMJ+BLl2YvCUgaWSC8Zohjts5A==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "deepmerge": "^4.2.2", + "puppeteer-extra-plugin": "^3.2.0", + "puppeteer-extra-plugin-user-data-dir": "^2.3.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/puppeteer-extra-plugin-user-preferences/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin-user-preferences/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==", + "dev": true + }, + "node_modules/puppeteer-extra-plugin/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra-plugin/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==", + "dev": true + }, + "node_modules/puppeteer-extra/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/puppeteer-extra/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==", + "dev": true + }, + "node_modules/puppeteer/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/puppeteer/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==", + "dev": true + }, + "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/puppeteer/node_modules/ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/qs": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", - "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", "dev": true, "dependencies": { "side-channel": "^1.0.4" @@ -14179,15 +18684,6 @@ "node": ">=0.10" } }, - "node_modules/replace-buffer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/replace-buffer/-/replace-buffer-1.2.1.tgz", - "integrity": "sha512-ly3OKwKu+3T55DjP5PjIMzxgz9lFx6dQnBmAIxryZyRKl8f22juy12ShOyuq8WrQE5UlFOseZgQZDua0iF9DHw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -14232,9 +18728,9 @@ } }, "node_modules/resolve-alpn": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.1.2.tgz", - "integrity": "sha512-8OyfzhAtA32LVUsJSke3auIyINcwdh5l3cvYKdKO0nvsYSKuiLfTM5i78PJswFPT8y6cPW+L1v6/hE95chcpDA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", "dev": true }, "node_modules/resolve-cwd": { @@ -14313,6 +18809,15 @@ "deprecated": "https://github.com/lydell/resolve-url#deprecated", "dev": true }, + "node_modules/resolve.exports": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz", + "integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/responselike": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", @@ -14388,15 +18893,6 @@ "inherits": "^2.0.1" } }, - "node_modules/router-ips": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/router-ips/-/router-ips-1.0.0.tgz", - "integrity": "sha1-ROAIWOvrwBM9WOQLLNih+7BCA/U=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/run-async": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", @@ -14425,9 +18921,9 @@ } }, "node_modules/rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "dependencies": { "tslib": "^1.9.0" @@ -14457,6 +18953,24 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "node_modules/sax": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", + "integrity": "sha1-e45lYZCyKOgaZq6nSEgNgozS03o=", + "dev": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/scheduler": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", @@ -14673,6 +19187,42 @@ "sha.js": "bin.js" } }, + "node_modules/shallow-clone": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/kind-of": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "dev": true, + "dependencies": { + "is-buffer": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -14709,9 +19259,15 @@ } }, "node_modules/signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true }, "node_modules/slash": { @@ -15090,12 +19646,12 @@ "dev": true }, "node_modules/split-lines": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/split-lines/-/split-lines-3.0.0.tgz", - "integrity": "sha512-d0TpRBL/VfKDXsk8JxPF7zgF5pCUDdBMSlEL36xBgVeaX448t+yGXcJaikUyzkoKOJ0l6KpMfygzJU9naIuivw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/split-lines/-/split-lines-2.1.0.tgz", + "integrity": "sha512-8dv+1zKgTpfTkOy8XZLFyWrfxO0NV/bj/3EaQ+hBrBxGv2DwiroljPjU8NlCr+59nLnsVm9WYT7lXKwe4TC6bw==", "dev": true, "engines": { - "node": ">=12" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -15119,6 +19675,12 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, + "node_modules/ssim.js": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/ssim.js/-/ssim.js-3.5.0.tgz", + "integrity": "sha512-Aj6Jl2z6oDmgYFFbQqK7fght19bXdOxY7Tj03nF+03M9gCBAjeIiO8/PlEGMfKDwYpw4q6iBqVq2YuREorGg/g==", + "dev": true + }, "node_modules/ssri": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", @@ -15131,6 +19693,27 @@ "node": ">= 8" } }, + "node_modules/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -15213,6 +19796,19 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/string-width": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", @@ -15419,15 +20015,12 @@ } }, "node_modules/strip-bom": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-5.0.0.tgz", - "integrity": "sha512-p+byADHF7SzEcVnLvc/r3uognM1hUhObuHXxJcgLCfD194XAkaLbjq3Wzb0N5G2tgIjH0dgT708Z51QxMeu60A==", + "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": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, "node_modules/strip-eof": { @@ -15439,13 +20032,25 @@ "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.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/style-loader": { @@ -15528,6 +20133,46 @@ "node": ">=4" } }, + "node_modules/supports-hyperlinks": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", + "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/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/supports-hyperlinks/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, "node_modules/table": { "version": "5.4.6", "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", @@ -15619,6 +20264,48 @@ "node": ">= 10" } }, + "node_modules/tar-fs": { + "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, + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dev": true, + "dependencies": { + "bl": "^4.0.3", + "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/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/tar/node_modules/chownr": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", @@ -15634,6 +20321,22 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, + "node_modules/terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/tern": { "version": "0.24.3", "resolved": "https://registry.npmjs.org/tern/-/tern-0.24.3.tgz", @@ -15921,12 +20624,32 @@ "node": ">=0.10.0" } }, + "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/throat": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", + "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==", + "dev": true + }, "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -15973,6 +20696,12 @@ "node": ">=0.6.0" } }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, "node_modules/to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", @@ -16012,6 +20741,15 @@ "node": ">=0.10.0" } }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", @@ -16055,6 +20793,41 @@ "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", "dev": true }, + "node_modules/tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "dev": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/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/tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/ts-loader": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-8.0.2.tgz", @@ -16169,28 +20942,15 @@ } }, "node_modules/ts2gas": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ts2gas/-/ts2gas-4.0.0.tgz", - "integrity": "sha512-2ybnGMatN7mxw9Rgm18m42g7TD8+lgYNscgO1x3G8BQJsqAuPRYGquy27B7XGMh1MU5/DWghLIlLSlQx7x4CPg==", + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/ts2gas/-/ts2gas-3.6.5.tgz", + "integrity": "sha512-YXAH+ua1lJRSR0/juXkkYXOIkkjcvM0q7mMdSc6DY62u201TqBb8kGiDAeHaQTMxo6tJ5mFXBzjPDLbIyH/m1w==", "dev": true, "dependencies": { - "type-fest": "^1.1.3", "typescript": "^4.2.4" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "node_modules/ts2gas/node_modules/type-fest": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.2.2.tgz", - "integrity": "sha512-pfkPYCcuV0TJoo/jlsUeWNV8rk7uMU6ocnYNvca1Vu+pyKi8Rl8Zo2scPt9O72gCsXIm+dMxOOWuA3VFDSdzWA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 10.3.0" } }, "node_modules/tsconfig-paths": { @@ -16232,6 +20992,21 @@ "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", "dev": true }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, "node_modules/tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", @@ -16250,6 +21025,15 @@ "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.11.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", @@ -16281,6 +21065,15 @@ "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/typescript": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", @@ -16325,6 +21118,40 @@ "node": ">=0.10.0" } }, + "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/unbzip2-stream/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/uncontrollable": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-7.1.1.tgz", @@ -16536,6 +21363,18 @@ "requires-port": "^1.0.0" } }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/url-template": { "version": "2.0.8", "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", @@ -16617,6 +21456,29 @@ "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", "dev": true }, + "node_modules/v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/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/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", @@ -16642,6 +21504,36 @@ "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", "dev": true }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "dev": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, "node_modules/warning": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", @@ -16650,6 +21542,22 @@ "loose-envify": "^1.0.0" } }, + "node_modules/watch": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/watch/-/watch-1.0.2.tgz", + "integrity": "sha1-NApxe952Vyb6CqB9ch4BR6VR3ww=", + "dev": true, + "dependencies": { + "exec-sh": "^0.2.0", + "minimist": "^1.2.0" + }, + "bin": { + "watch": "cli.js" + }, + "engines": { + "node": ">=0.1.95" + } + }, "node_modules/watchpack": { "version": "1.7.5", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", @@ -16841,6 +21749,15 @@ "defaults": "^1.0.3" } }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true, + "engines": { + "node": ">=10.4" + } + }, "node_modules/webpack": { "version": "4.46.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", @@ -17297,6 +22214,35 @@ "node": ">=0.8.0" } }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -17415,6 +22361,18 @@ "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/write/node_modules/mkdirp": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", @@ -17436,15 +22394,37 @@ "async-limiter": "~1.0.0" } }, - "node_modules/wtfnode": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", - "integrity": "sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==", + "node_modules/xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "node_modules/xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", "dev": true, - "bin": { - "wtfnode": "proxy.js" + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" } }, + "node_modules/xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", @@ -17590,6 +22570,16 @@ "node": ">=6" } }, + "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/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", @@ -17604,6 +22594,15 @@ } }, "dependencies": { + "@ampproject/remapping": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", + "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.0" + } + }, "@babel/cli": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.14.5.tgz", @@ -17733,161 +22732,50 @@ } }, "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", + "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", "dev": true, "requires": { - "@babel/highlight": "^7.8.3" + "@babel/highlight": "^7.16.7" } }, "@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" - } + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.0.tgz", + "integrity": "sha512-392byTlpGWXMv4FbyWw3sAZ/FrW/DrwqLGXpy0mbyNe9Taqv1mg9yON5/o0cnr8XYCkFTZbC1eV+c+LAROgrng==", + "dev": true }, "@babel/core": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.11.1.tgz", - "integrity": "sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ==", + "version": "7.17.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.5.tgz", + "integrity": "sha512-/BBMw4EvjmyquN5O+t5eh0+YqB3XXJkYD2cjKpYtWOfFy4lQ4UozNSmxAcWT8r2XtZs0ewG+zrfsqeR15i1ajA==", "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", + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.3", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helpers": "^7.17.2", + "@babel/parser": "^7.17.3", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.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", - "source-map": "^0.5.0" + "semver": "^6.3.0" }, "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/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" - } - }, - "@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-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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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" - } - }, - "@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" - } - }, "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -17895,18 +22783,23 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "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 } } }, "@babel/generator": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.7.tgz", - "integrity": "sha512-DQwjiKJqH4C3qGiyQCAExJHoZssn49JTMJgZ8SANGgVFdkupcUhLOdkAeoC6kmHZCPfoDG5M0b6cFlSN5wW7Ew==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.3.tgz", + "integrity": "sha512-+R6Dctil/MgUsZsZAkYgK+ADNSZzJRRy0TvY65T71z/CR854xHQ1EweBYXdfT+HNeN7w0cSJJEzgxZMv40pxsg==", "dev": true, "requires": { - "@babel/types": "^7.8.7", + "@babel/types": "^7.17.0", "jsesc": "^2.5.1", - "lodash": "^4.17.13", "source-map": "^0.5.0" } }, @@ -17917,19 +22810,6 @@ "dev": true, "requires": { "@babel/types": "^7.10.4" - }, - "dependencies": { - "@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" - } - } } }, "@babel/helper-builder-binary-assignment-operator-visitor": { @@ -17940,19 +22820,6 @@ "requires": { "@babel/helper-explode-assignable-expression": "^7.10.4", "@babel/types": "^7.10.4" - }, - "dependencies": { - "@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" - } - } } }, "@babel/helper-builder-react-jsx": { @@ -17963,19 +22830,6 @@ "requires": { "@babel/helper-annotate-as-pure": "^7.10.4", "@babel/types": "^7.10.4" - }, - "dependencies": { - "@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" - } - } } }, "@babel/helper-builder-react-jsx-experimental": { @@ -17987,32 +22841,26 @@ "@babel/helper-annotate-as-pure": "^7.10.4", "@babel/helper-module-imports": "^7.10.4", "@babel/types": "^7.10.5" - }, - "dependencies": { - "@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" - } - } } }, "@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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", + "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", "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/compat-data": "^7.16.4", + "@babel/helper-validator-option": "^7.16.7", + "browserslist": "^4.17.5", + "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 + } } }, "@babel/helper-create-class-features-plugin": { @@ -18027,85 +22875,6 @@ "@babel/helper-plugin-utils": "^7.10.4", "@babel/helper-replace-supers": "^7.10.4", "@babel/helper-split-export-declaration": "^7.10.4" - }, - "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/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-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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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/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" - } - } } }, "@babel/helper-create-regexp-features-plugin": { @@ -18128,76 +22897,15 @@ "@babel/helper-function-name": "^7.10.4", "@babel/types": "^7.10.5", "lodash": "^4.17.19" - }, - "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/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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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/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" - } - } + } + }, + "@babel/helper-environment-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", + "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "dev": true, + "requires": { + "@babel/types": "^7.16.7" } }, "@babel/helper-explode-assignable-expression": { @@ -18208,170 +22916,35 @@ "requires": { "@babel/traverse": "^7.10.4", "@babel/types": "^7.10.4" - }, - "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/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" - } - }, - "@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-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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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" - } - }, - "@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" - } - }, - "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" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", + "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", "dev": true, "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/helper-get-function-arity": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/types": "^7.16.7" } }, "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", + "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.16.7" } }, "@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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", + "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", "dev": true, "requires": { - "@babel/types": "^7.10.4" - }, - "dependencies": { - "@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" - } - } + "@babel/types": "^7.16.7" } }, "@babel/helper-member-expression-to-functions": { @@ -18381,115 +22954,31 @@ "dev": true, "requires": { "@babel/types": "^7.11.0" - }, - "dependencies": { - "@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" - } - } } }, "@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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", + "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", "dev": true, "requires": { - "@babel/types": "^7.10.4" - }, - "dependencies": { - "@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" - } - } + "@babel/types": "^7.16.7" } }, "@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==", + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.6.tgz", + "integrity": "sha512-2ULmRdqoOMpdvkbT8jONrZML/XALfzxlb052bldftkicAUy8AxSCkD5trDPQcwHNmolcl7wP6ehNqMlyUw6AaA==", "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" - }, - "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/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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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/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" - } - } + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.3", + "@babel/types": "^7.17.0" } }, "@babel/helper-optimise-call-expression": { @@ -18499,25 +22988,12 @@ "dev": true, "requires": { "@babel/types": "^7.10.4" - }, - "dependencies": { - "@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" - } - } } }, "@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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz", + "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==", "dev": true }, "@babel/helper-regex": { @@ -18540,128 +23016,6 @@ "@babel/template": "^7.10.4", "@babel/traverse": "^7.10.4", "@babel/types": "^7.10.4" - }, - "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/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" - } - }, - "@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-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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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" - } - }, - "@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" - } - }, - "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" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "@babel/helper-replace-supers": { @@ -18674,188 +23028,15 @@ "@babel/helper-optimise-call-expression": "^7.10.4", "@babel/traverse": "^7.10.4", "@babel/types": "^7.10.4" - }, - "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/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" - } - }, - "@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-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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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" - } - }, - "@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" - } - }, - "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" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "@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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", + "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", "dev": true, "requires": { - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - }, - "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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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/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" - } - } + "@babel/types": "^7.16.7" } }, "@babel/helper-skip-transparent-expression-wrappers": { @@ -18865,34 +23046,27 @@ "dev": true, "requires": { "@babel/types": "^7.11.0" - }, - "dependencies": { - "@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" - } - } } }, "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", + "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.16.7" } }, "@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==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", + "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", + "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", "dev": true }, "@babel/helper-wrap-function": { @@ -18905,278 +23079,34 @@ "@babel/template": "^7.10.4", "@babel/traverse": "^7.10.4", "@babel/types": "^7.10.4" - }, - "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/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" - } - }, - "@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-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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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" - } - }, - "@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" - } - }, - "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" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } } }, "@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==", + "version": "7.17.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.2.tgz", + "integrity": "sha512-0Qu7RLR1dILozr/6M0xgj+DFPmi6Bnulgm9M8BVa9ZCWxDqlSnqt3cf8IDPB5m45sVXUZ0kuQAgUrdSFFH79fQ==", "dev": true, "requires": { - "@babel/template": "^7.10.4", - "@babel/traverse": "^7.10.4", - "@babel/types": "^7.10.4" - }, - "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/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" - } - }, - "@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-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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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" - } - }, - "@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" - } - }, - "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" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - } + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.0", + "@babel/types": "^7.17.0" } }, "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", + "version": "7.16.10", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", + "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", "dev": true, "requires": { + "@babel/helper-validator-identifier": "^7.16.7", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" } }, "@babel/parser": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.7.tgz", - "integrity": "sha512-9JWls8WilDXFGxs0phaXAZgpxTZhSk/yOYH2hTHC0X1yC7Z78IJfvR1vJ+rmJKq3I35td2XzXzN6ZLYlna+r/A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.3.tgz", + "integrity": "sha512-7yJPvPV+ESz2IUTPbOL+YkIGyCqOyNIzdguKQuJGnH7bg1WTIifuM21YqokFt/THWh1AkCRn9IgoykTRCBVpzA==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -19292,12 +23222,6 @@ "@babel/plugin-syntax-optional-chaining": "^7.8.3" }, "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz", - "integrity": "sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ==", - "dev": true - }, "@babel/helper-skip-transparent-expression-wrappers": { "version": "7.12.1", "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz", @@ -19306,22 +23230,6 @@ "requires": { "@babel/types": "^7.12.1" } - }, - "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==", - "dev": true - }, - "@babel/types": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.0.tgz", - "integrity": "sha512-O2LVLdcnWplaGxiPBz12d0HcdN8QdxdsWYhz5LSeuukV/5mn2xUUc3gBeU4QBYPJ18g/UToe8F532XJ608prmg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.14.0", - "to-fast-properties": "^2.0.0" - } } } }, @@ -19354,6 +23262,15 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "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", @@ -19381,6 +23298,15 @@ "@babel/helper-plugin-utils": "^7.8.3" } }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "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", @@ -19462,6 +23388,15 @@ "@babel/helper-plugin-utils": "^7.10.4" } }, + "@babel/plugin-syntax-typescript": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz", + "integrity": "sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.16.7" + } + }, "@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", @@ -19514,85 +23449,6 @@ "@babel/helper-replace-supers": "^7.10.4", "@babel/helper-split-export-declaration": "^7.10.4", "globals": "^11.1.0" - }, - "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/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-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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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/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" - } - } } }, "@babel/plugin-transform-computed-properties": { @@ -19659,76 +23515,6 @@ "requires": { "@babel/helper-function-name": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" - }, - "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/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/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.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.2.tgz", - "integrity": "sha512-Vuj/+7vLo6l1Vi7uuO+1ngCDNeVmNbTngcJFKCR/oEtz8tKz0CJxZEGmPt9KcIloZhOZ3Zit6xbpXT2MDlS9Vw==", - "dev": true - }, - "@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/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" - } - } } }, "@babel/plugin-transform-literals": { @@ -19839,28 +23625,6 @@ "requires": { "@babel/helper-get-function-arity": "^7.10.4", "@babel/helper-plugin-utils": "^7.10.4" - }, - "dependencies": { - "@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/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" - } - } } }, "@babel/plugin-transform-property-literals": { @@ -20103,19 +23867,6 @@ "invariant": "^2.2.2", "levenary": "^1.1.1", "semver": "^5.5.0" - }, - "dependencies": { - "@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" - } - } } }, "@babel/preset-modules": { @@ -20165,31 +23916,32 @@ } }, "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", + "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/code-frame": "^7.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" } }, "@babel/traverse": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz", - "integrity": "sha512-2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==", + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz", + "integrity": "sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.6", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.3", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.17.3", + "@babel/types": "^7.17.0", "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" + "globals": "^11.1.0" }, "dependencies": { "debug": { @@ -20210,62 +23962,55 @@ } }, "@babel/types": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz", - "integrity": "sha512-k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==", + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", "dev": true, "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", + "@babel/helper-validator-identifier": "^7.16.7", "to-fast-properties": "^2.0.0" } }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, "@google/clasp": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@google/clasp/-/clasp-2.4.0.tgz", - "integrity": "sha512-ormTvr95Y28xp0G0+i78HnxL47n1MANESOB/3GJgUVP5zO9GgmYXH4uNfq8xLwQzmGAhLpKJp73gJIdk7+IOwg==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@google/clasp/-/clasp-2.3.1.tgz", + "integrity": "sha512-rBZ0VTfcDmQEzER0WR50BAqwm/x3+ubMzhzvYMUDC+1niViByU+PwmpONp4YCHTGvhhJjWa9OZ3GnILkEAqq9A==", "dev": true, "requires": { - "chalk": "^4.1.1", - "chokidar": "^3.5.1", + "chalk": "^4.1.0", "cli-truncate": "^2.1.0", "commander": "^7.2.0", - "debounce": "^1.2.1", - "dotf": "^2.0.0", - "fs-extra": "^10.0.0", + "dotf": "^1.5.3", + "find-up": "^5.0.0", + "fs-extra": "^9.1.0", "fuzzy": "^0.1.3", - "google-auth-library": "^7.1.2", - "googleapis": "^76.0.0", - "inquirer": "^8.1.0", + "gaxios": "^4.2.0", + "google-auth-library": "^6.1.6", + "googleapis": "^66.0.0", + "inquirer": "^7.3.3", "inquirer-autocomplete-prompt-ipt": "^2.0.0", - "is-reachable": "^5.0.0", - "log-symbols": "^5.0.0", + "is-online": "^9.0.0", "loud-rejection": "^2.2.0", "make-dir": "^3.1.0", "multimatch": "^5.0.0", - "normalize-newline": "^4.1.0", - "open": "^8.2.0", - "ora": "^5.4.1", - "p-map": "^5.0.0", - "read-pkg-up": "^8.0.0", + "normalize-newline": "^3.0.0", + "open": "^8.0.2", + "ora": "^5.3.0", + "read-pkg-up": "^7.0.1", "recursive-readdir": "^2.2.2", - "split-lines": "^3.0.0", - "strip-bom": "^5.0.0", - "ts2gas": "^4.0.0", - "typescript": "^4.3.2", - "wtfnode": "^0.8.4" + "split-lines": "^2.0.0", + "strip-bom": "^4.0.0", + "ts2gas": "^3.6.4", + "typescript": "^4.2.3", + "watch": "^1.0.2" }, "dependencies": { - "aggregate-error": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.0.tgz", - "integrity": "sha512-8DGp7zUt1E9k0NE2q4jlXHk+V3ORErmwolEdRz9iV+LKJ40WhMHh92cxAvhqV2I+zEn/gotIoqoMs0NjF3xofg==", - "dev": true, - "requires": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - } - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -20275,72 +24020,16 @@ "color-convert": "^2.0.1" } }, - "anymatch": { - "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", - "picomatch": "^2.0.4" - } - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "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", "supports-color": "^7.1.0" } }, - "chokidar": { - "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.2", - "braces": "~3.0.2", - "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.6.0" - } - }, - "clean-stack": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.1.0.tgz", - "integrity": "sha512-dxXQYI7mfQVcaF12s6sjNFoZ6ZPDQuBBLp3QJ5156k9EvUFClUoZ11fo8HnLQO241DDVntHEug8MOuFO5PSfRg==", - "dev": true, - "requires": { - "escape-string-regexp": "5.0.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 - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -20362,21 +24051,6 @@ "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", "dev": true }, - "escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true - }, - "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, - "requires": { - "to-regex-range": "^5.0.1" - } - }, "find-up": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", @@ -20388,90 +24062,23 @@ } }, "fs-extra": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", - "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "requires": { + "at-least-node": "^1.0.0", "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^2.0.0" } }, - "fsevents": { - "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.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" - } - }, "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 }, - "hosted-git-info": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", - "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true - }, - "inquirer": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.1.2.tgz", - "integrity": "sha512-DHLKJwLPNgkfwNmsuEUKSejJFbkv0FMO9SMiQbjI3n5NQuCrSIBqP66ggqyz2a6t2qEolKrMjhQ3+W/xXgUQ+Q==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.3.0", - "run-async": "^2.4.0", - "rxjs": "^7.2.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - } - }, - "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, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "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 - }, "locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -20481,15 +24088,6 @@ "p-locate": "^5.0.0" } }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -20499,29 +24097,6 @@ "semver": "^6.0.0" } }, - "normalize-package-data": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.2.tgz", - "integrity": "sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "resolve": "^1.20.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, "p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -20540,15 +24115,6 @@ "p-limit": "^3.0.2" } }, - "p-map": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.0.0.tgz", - "integrity": "sha512-FeQNuFp/ecZidgaTXc65qXdTGD7mniwgzZNq5czwcJSy6ClETr2v3y4ZQESGe8C1038XhO/fjfKOyiTNH3d0/g==", - "dev": true, - "requires": { - "aggregate-error": "^4.0.0" - } - }, "parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -20562,44 +24128,73 @@ } }, "read-pkg": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", - "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, "requires": { "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^1.0.1" + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true + } } }, "read-pkg-up": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", - "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, "requires": { - "find-up": "^5.0.0", - "read-pkg": "^6.0.0", - "type-fest": "^1.0.1" - } - }, - "readdirp": { - "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" - } - }, - "rxjs": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.2.0.tgz", - "integrity": "sha512-aX8w9OpKrQmiPKfT1bqETtUr9JygIz6GZ+gql8v7CijClsP0laoFUdKzxFAoWuRdSlOdU2+crss+cMf+cqMTnw==", - "dev": true, - "requires": { - "tslib": "~2.1.0" + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "dependencies": { + "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-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.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" + } + } } }, "semver": { @@ -20617,6 +24212,237 @@ "has-flag": "^4.0.0" } }, + "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 + } + } + }, + "@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": { + "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.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true + }, + "@jest/console": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", + "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + } + } + }, + "@jest/core": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", + "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/reporters": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^27.5.1", + "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-resolve-dependencies": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "jest-watcher": "^27.5.1", + "micromatch": "^4.0.4", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "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 + }, + "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 + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -20625,27 +24451,428 @@ "requires": { "is-number": "^7.0.0" } + } + } + }, + "@jest/environment": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", + "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "dev": true, + "requires": { + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1" + } + }, + "@jest/fake-timers": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", + "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@sinonjs/fake-timers": "^8.0.1", + "@types/node": "*", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + } + }, + "@jest/globals": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", + "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/types": "^27.5.1", + "expect": "^27.5.1" + } + }, + "@jest/reporters": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", + "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-haste-map": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^8.1.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } }, - "tslib": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", - "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==", + "chalk": { + "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", + "supports-color": "^7.1.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 }, - "type-fest": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.2.2.tgz", - "integrity": "sha512-pfkPYCcuV0TJoo/jlsUeWNV8rk7uMU6ocnYNvca1Vu+pyKi8Rl8Zo2scPt9O72gCsXIm+dMxOOWuA3VFDSdzWA==", - "dev": true - }, - "yallist": { + "has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "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" + } + } + } + }, + "@jest/source-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", + "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "dev": true, + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true } } }, + "@jest/test-result": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", + "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + } + }, + "@jest/test-sequencer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", + "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "dev": true, + "requires": { + "@jest/test-result": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-runtime": "^27.5.1" + } + }, + "@jest/transform": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", + "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.5.1", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-util": "^27.5.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "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 + }, + "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 + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "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" + } + }, + "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, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "@jest/types": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", + "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "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 + }, + "supports-color": { + "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" + } + } + } + }, + "@jridgewell/resolve-uri": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", + "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", + "dev": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.11", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", + "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz", + "integrity": "sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@leichtgewicht/ip-codec": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.3.tgz", + "integrity": "sha512-nkalE/f1RvRGChwBnEIoBfSEYOXnCRdleKuv6+lePbMDrMZXeDQnqak5XDOeBgrPPyPfAdcCu/B5z+v3VhplGg==", + "dev": true + }, "@nicolo-ribaudo/chokidar-2": { "version": "2.1.8-no-fsevents.2", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.2.tgz", @@ -20734,11 +24961,29 @@ } }, "@sindresorhus/is": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", - "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", "dev": true }, + "@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, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, "@szmarczak/http-timer": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", @@ -20748,6 +24993,53 @@ "defer-to-connect": "^2.0.0" } }, + "@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true + }, + "@types/babel__core": { + "version": "7.1.18", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz", + "integrity": "sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.14.2", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz", + "integrity": "sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, "@types/cacheable-request": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", @@ -20765,11 +25057,24 @@ "resolved": "https://registry.npmjs.org/@types/classnames/-/classnames-2.2.10.tgz", "integrity": "sha512-1UzDldn9GfYYEsWWnn/P4wkTlkZDH7lDb0wBMGbtIQc9zXEQq7FlKBdZUn6OBqD8sKZZ2RQO2mAjGpXiDGoRmQ==" }, - "@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/debug": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", + "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "dev": true, + "requires": { + "@types/ms": "*" + } + }, + "@types/expect-puppeteer": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/@types/expect-puppeteer/-/expect-puppeteer-4.4.6.tgz", + "integrity": "sha512-RgQND/7RvcJm4NL2qoQbvVHTcfDh3h3yYe0Em0roczXY+MOIBkcgv5WRzVKeQJKO1nyhc4bEAbxpwykjDUMdqg==", + "dev": true, + "requires": { + "@types/jest": "*", + "@types/puppeteer": "*" + } }, "@types/glob": { "version": "7.1.3", @@ -20781,6 +25086,15 @@ "@types/node": "*" } }, + "@types/graceful-fs": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", + "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/http-cache-semantics": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", @@ -20792,10 +25106,415 @@ "resolved": "https://registry.npmjs.org/@types/invariant/-/invariant-2.2.33.tgz", "integrity": "sha512-/jUNmS8d4bCKdqslfxW6dg/9Gksfzxz67IYfqApHn+HvHlMVXwYv2zpTDnS/yaK9BB0i0GlBTaYci0EFE62Hmw==" }, + "@types/istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", + "dev": true + }, + "@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/jest": { + "version": "26.0.24", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", + "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", + "dev": true, + "requires": { + "jest-diff": "^26.0.0", + "pretty-format": "^26.0.0" + }, + "dependencies": { + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "diff-sequences": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", + "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "dev": true + }, + "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 + }, + "jest-diff": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", + "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-get-type": { + "version": "26.3.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", + "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "dev": true + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "supports-color": { + "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" + } + } + } + }, + "@types/jest-environment-puppeteer": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@types/jest-environment-puppeteer/-/jest-environment-puppeteer-4.4.1.tgz", + "integrity": "sha512-LiZTD6i63le6QMnxi7pJB0SFv/fWtss6VVEEDm/UaeowBgjduf8txyE//j3WEeDPxngTvioUjbzA7Rc6Wc3cBA==", + "dev": true, + "requires": { + "@jest/types": ">=24 <=26", + "@types/puppeteer": "*", + "jest-environment-node": ">=24 <=26" + }, + "dependencies": { + "@jest/environment": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", + "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", + "dev": true, + "requires": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + } + }, + "@jest/fake-timers": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", + "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + } + }, + "@jest/types": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", + "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@sinonjs/fake-timers": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", + "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, + "@types/yargs": { + "version": "15.0.14", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", + "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "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 + }, + "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, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "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 + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "requires": { + "ci-info": "^2.0.0" + } + }, + "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 + }, + "jest-environment-node": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz", + "integrity": "sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==", + "dev": true, + "requires": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + } + }, + "jest-message-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", + "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + } + }, + "jest-mock": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", + "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*" + } + }, + "jest-util": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", + "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + } + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "pretty-format": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", + "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + } + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + }, + "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, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, "@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==", + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", + "integrity": "sha512-YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==", "dev": true }, "@types/json5": { @@ -20805,9 +25524,9 @@ "dev": true }, "@types/keyv": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.2.tgz", - "integrity": "sha512-/FvAK2p4jQOaJ6CGDHJTqZcUtbZe820qIeTg7o0Shg7drB4JHeL+V/dhSaly7NXx6u8eSee+r7coT+yuJEvDLg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.3.tgz", + "integrity": "sha512-FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg==", "dev": true, "requires": { "@types/node": "*" @@ -20819,6 +25538,12 @@ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", "dev": true }, + "@types/ms": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", + "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==", + "dev": true + }, "@types/node": { "version": "14.0.24", "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.24.tgz", @@ -20831,11 +25556,26 @@ "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", "dev": true }, + "@types/prettier": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.4.tgz", + "integrity": "sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==", + "dev": true + }, "@types/prop-types": { "version": "15.7.3", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" }, + "@types/puppeteer": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.4.tgz", + "integrity": "sha512-3Nau+qi69CN55VwZb0ATtdUAlYlqOOQ3OfQfq0Hqgc4JMFXiQT/XInlwQ9g6LbicDslE6loIFsXFklGh5XmI6Q==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/react": { "version": "16.9.44", "resolved": "https://registry.npmjs.org/@types/react/-/react-16.9.44.tgz", @@ -20869,11 +25609,183 @@ "@types/node": "*" } }, + "@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "dev": true + }, "@types/warning": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.0.tgz", "integrity": "sha1-DSUBJorY+ZYrdA04fEZU9fjiPlI=" }, + "@types/yargs": { + "version": "16.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", + "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "20.2.1", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.1.tgz", + "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==", + "dev": true + }, + "@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, + "requires": { + "@types/node": "*" + } + }, + "@typescript-eslint/experimental-utils": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.4.tgz", + "integrity": "sha512-OglKWOQRWTCoqMSy6pm/kpinEIgdcXYceIcH3EKWUl4S8xhFtN34GQRaAvTIZB9DD94rW7d/U7tUg3SYeDFNHA==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.7", + "@typescript-eslint/scope-manager": "4.28.4", + "@typescript-eslint/types": "4.28.4", + "@typescript-eslint/typescript-estree": "4.28.4", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0" + }, + "dependencies": { + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^2.0.0" + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + } + } + }, + "@typescript-eslint/scope-manager": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.4.tgz", + "integrity": "sha512-ZJBNs4usViOmlyFMt9X9l+X0WAFcDH7EdSArGqpldXu7aeZxDAuAzHiMAeI+JpSefY2INHrXeqnha39FVqXb8w==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.28.4", + "@typescript-eslint/visitor-keys": "4.28.4" + } + }, + "@typescript-eslint/types": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.4.tgz", + "integrity": "sha512-3eap4QWxGqkYuEmVebUGULMskR6Cuoc/Wii0oSOddleP4EGx1tjLnZQ0ZP33YRoMDCs5O3j56RBV4g14T4jvww==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.4.tgz", + "integrity": "sha512-z7d8HK8XvCRyN2SNp+OXC2iZaF+O2BTquGhEYLKLx5k6p0r05ureUtgEfo5f6anLkhCxdHtCf6rPM1p4efHYDQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.28.4", + "@typescript-eslint/visitor-keys": "4.28.4", + "debug": "^4.3.1", + "globby": "^11.0.3", + "is-glob": "^4.0.1", + "semver": "^7.3.5", + "tsutils": "^3.21.0" + }, + "dependencies": { + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "globby": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", + "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "@typescript-eslint/visitor-keys": { + "version": "4.28.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.4.tgz", + "integrity": "sha512-NIAXAdbz1XdOuzqkJHjNKXKj8QQ4cv5cxR/g0uQhCYf/6//XrmfpaYsM7PnBcNbfvTDLUkqQ5TPNm1sozDdTWg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "4.28.4", + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true + } + } + }, "@webassemblyjs/ast": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", @@ -21061,6 +25973,12 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "abab": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", + "dev": true + }, "abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -21086,6 +26004,24 @@ "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", "dev": true }, + "acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "dev": true, + "requires": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + }, + "dependencies": { + "acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true + } + } + }, "acorn-jsx": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", @@ -21200,9 +26136,9 @@ "dev": true }, "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "ansi-styles": { @@ -21448,12 +26384,71 @@ "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", "dev": true }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true + }, "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-sdk": { + "version": "2.1092.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1092.0.tgz", + "integrity": "sha512-8PH2rOgZazGT3VfGPkKcvzz2K9ylVfDniJH4WfJXHEBGxu0+XEMDbjuYpe8k/L1C7w0UTP6CuChjqCxgJznrxg==", + "dev": true, + "requires": { + "buffer": "4.9.2", + "events": "1.1.1", + "ieee754": "1.1.13", + "jmespath": "0.16.0", + "querystring": "0.2.0", + "sax": "1.2.1", + "url": "0.10.3", + "uuid": "3.3.2", + "xml2js": "0.4.19" + }, + "dependencies": { + "events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", + "dev": true + }, + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + }, + "url": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/url/-/url-0.10.3.tgz", + "integrity": "sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + } + } + }, "axe-core": { "version": "3.5.5", "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-3.5.5.tgz", @@ -21480,6 +26475,79 @@ "resolve": "^1.12.0" } }, + "babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "dev": true, + "requires": { + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + } + } + }, "babel-loader": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", @@ -21542,6 +26610,31 @@ "object.assign": "^4.1.0" } }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + } + }, "babel-plugin-transform-es3-member-expression-literals": { "version": "6.22.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-es3-member-expression-literals/-/babel-plugin-transform-es3-member-expression-literals-6.22.0.tgz", @@ -21560,6 +26653,36 @@ "babel-runtime": "^6.22.0" } }, + "babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "requires": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@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-top-level-await": "^7.8.3" + } + }, + "babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, "babel-runtime": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", @@ -21658,9 +26781,9 @@ "dev": true }, "bignumber.js": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.1.tgz", - "integrity": "sha512-IdZR9mh6ahOBv/hYGiXyVuyCetmGJhtYkqLBpTStdhEGjegpPlUawydyaF3pbIOFynJTpllEs+NP+CS9jKFLjA==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", + "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==", "dev": true }, "binary-extensions": { @@ -21822,6 +26945,12 @@ "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", "dev": true }, + "browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, "browserify-aes": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", @@ -21923,16 +27052,25 @@ } }, "browserslist": { - "version": "4.16.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", - "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", + "version": "4.19.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.3.tgz", + "integrity": "sha512-XK3X4xtKJ+Txj8G5c30B4gsm71s69lqXlkYui4s6EkKxuv49qjYlY6oVd+IFJ73d4YymtM3+djvvt/R/iJwwDg==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001219", - "colorette": "^1.2.2", - "electron-to-chromium": "^1.3.723", + "caniuse-lite": "^1.0.30001312", + "electron-to-chromium": "^1.4.71", "escalade": "^3.1.1", - "node-releases": "^1.1.71" + "node-releases": "^2.0.2", + "picocolors": "^1.0.0" + } + }, + "bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "requires": { + "node-int64": "^0.4.0" } }, "buffer": { @@ -21946,6 +27084,12 @@ "isarray": "^1.0.0" } }, + "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-constant-time": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", @@ -22116,9 +27260,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001245", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001245.tgz", - "integrity": "sha512-768fM9j1PKXpOCKws6eTo3RHmvTUsG9UrpT4WoREFeZgJBTi4/X9g565azS/rVUGtqb8nt7FjLeF5u4kukERnA==", + "version": "1.0.30001312", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz", + "integrity": "sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ==", "dev": true }, "chalk": { @@ -22132,6 +27276,12 @@ "supports-color": "^5.3.0" } }, + "char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true + }, "chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", @@ -22173,6 +27323,12 @@ "tslib": "^1.9.0" } }, + "ci-info": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz", + "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==", + "dev": true + }, "cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", @@ -22183,6 +27339,12 @@ "safe-buffer": "^5.0.1" } }, + "cjs-module-lexer": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", + "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", + "dev": true + }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", @@ -22244,9 +27406,9 @@ } }, "cli-spinners": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.0.tgz", - "integrity": "sha512-t+4/y50K/+4xcCRosKkA7W4gTr1MySvLV0q+PxmG7FJ5g+66ChKurYjxBCjHggHH3HA5Hh9cy+lcUGWDqVH+4Q==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", + "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", "dev": true }, "cli-truncate": { @@ -22303,9 +27465,9 @@ } }, "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "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": { @@ -22365,6 +27527,30 @@ "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", "dev": true }, + "clone-deep": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz", + "integrity": "sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY=", + "dev": true, + "requires": { + "for-own": "^0.1.3", + "is-plain-object": "^2.0.1", + "kind-of": "^3.0.2", + "lazy-cache": "^1.0.3", + "shallow-clone": "^0.1.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" + } + } + } + }, "clone-response": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", @@ -22374,6 +27560,18 @@ "mimic-response": "^1.0.0" } }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "dev": true + }, "collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", @@ -22399,11 +27597,14 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, - "colorette": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==", - "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==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } }, "commander": { "version": "4.1.1", @@ -22887,6 +28088,15 @@ } } }, + "cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dev": true, + "requires": { + "node-fetch": "2.6.7" + } + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -22995,6 +28205,29 @@ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true }, + "cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "dev": true + }, + "cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "requires": { + "cssom": "~0.3.6" + }, + "dependencies": { + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + } + } + }, "csstype": { "version": "2.6.10", "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.10.tgz", @@ -23021,11 +28254,16 @@ "integrity": "sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==", "dev": true }, - "debounce": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", - "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", - "dev": true + "data-urls": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "dev": true, + "requires": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + } }, "debug": { "version": "2.6.9", @@ -23042,6 +28280,12 @@ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", "dev": true }, + "decimal.js": { + "version": "10.3.1", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", + "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==", + "dev": true + }, "decode-uri-component": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", @@ -23065,6 +28309,12 @@ } } }, + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", + "dev": true + }, "deep-equal": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", @@ -23085,6 +28335,12 @@ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true + }, "default-gateway": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", @@ -23200,6 +28456,12 @@ } } }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", @@ -23228,12 +28490,30 @@ "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", "dev": true }, + "detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true + }, "detect-node": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", "dev": true }, + "devtools-protocol": { + "version": "0.0.960912", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.960912.tgz", + "integrity": "sha512-I3hWmV9rWHbdnUdmMKHF2NuYutIM2kXz2mdXW8ha7TbRlGTVs+PF+PsB5QWvpCek4Fy9B+msiispCfwlhG5Sqg==", + "dev": true + }, + "diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "dev": true + }, "diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", @@ -23286,6 +28566,26 @@ "safe-buffer": "^5.0.1" } }, + "dns-socket": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/dns-socket/-/dns-socket-4.2.2.tgz", + "integrity": "sha512-BDeBd8najI4/lS00HSKpdFia+OvUMytaVjfzR9n5Lq8MlZRSvtbI+uLtx1+XmQFls5wFU9dssccTmQQ6nfpjdg==", + "dev": true, + "requires": { + "dns-packet": "^5.2.4" + }, + "dependencies": { + "dns-packet": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.3.1.tgz", + "integrity": "sha512-spBwIj0TK0Ey3666GwIdWVfUpLyubpU53BTCu8iPn4r4oXd9O14Hjg3EHw3ts2oed77/SeckunUYCyRlSngqHw==", + "dev": true, + "requires": { + "@leichtgewicht/ip-codec": "^2.0.1" + } + } + } + }, "dns-txt": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", @@ -23352,6 +28652,23 @@ "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", "dev": true }, + "domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "dev": true, + "requires": { + "webidl-conversions": "^5.0.0" + }, + "dependencies": { + "webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "dev": true + } + } + }, "domhandler": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", @@ -23378,15 +28695,21 @@ "dev": true }, "dotf": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dotf/-/dotf-2.0.0.tgz", - "integrity": "sha512-TKCWsUEZ2t6Nt6Sb7m48PWdNt8ciQsdJ9q+1bVxTZU2wRGs4hj8SKJXnrlm6LJJEb2UnGwYeJ98ZojD+KEqXIQ==", + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/dotf/-/dotf-1.5.5.tgz", + "integrity": "sha512-XGZoGvOC4Im1TmRYCchjrJ578ponvFjxx+ZeMMLsyHeAT6E9uLzstqP6RAfFLTAM/wNL0Ol/FCxNihly1GNhew==", "dev": true, "requires": { "graceful-fs": "^4.2.6", "jsonfile": "^6.1.0" } }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true + }, "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", @@ -23426,9 +28749,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.3.779", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.779.tgz", - "integrity": "sha512-nreave0y/1Qhmo8XtO6C/LpawNyC6U26+q7d814/e+tIqUK073pM+4xW7WUXyqCRa5K4wdxHmNMBAi8ap9nEew==", + "version": "1.4.75", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.75.tgz", + "integrity": "sha512-LxgUNeu3BVU7sXaKjUDD9xivocQLxFtq6wgERrutdY/yIOps3ODOZExK1jg8DTEg4U8TUCb5MLGeWFOYuxjF3Q==", "dev": true }, "elliptic": { @@ -23454,6 +28777,12 @@ } } }, + "emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true + }, "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -24052,6 +29381,15 @@ } } }, + "eslint-plugin-jest": { + "version": "24.3.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-24.3.6.tgz", + "integrity": "sha512-WOVH4TIaBLIeCX576rLcOgjNXqP+jNlCiEmRgFTfQtJ52DpwnIQKAVGlGPAN7CZ33bW6eNfHD6s8ZbEUTQubJg==", + "dev": true, + "requires": { + "@typescript-eslint/experimental-utils": "^4.0.1" + } + }, "eslint-plugin-jsx-a11y": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.3.1.tgz", @@ -24178,12 +29516,12 @@ "dev": true }, "eslint-scope": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", - "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", + "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, "requires": { - "esrecurse": "^4.1.0", + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" } }, @@ -24229,12 +29567,20 @@ } }, "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "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, "requires": { - "estraverse": "^4.1.0" + "estraverse": "^5.2.0" + }, + "dependencies": { + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + } } }, "estraverse": { @@ -24292,6 +29638,15 @@ "safe-buffer": "^5.1.1" } }, + "exec-sh": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.2.tgz", + "integrity": "sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw==", + "dev": true, + "requires": { + "merge": "^1.2.0" + } + }, "execa": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", @@ -24315,6 +29670,12 @@ } } }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, "expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", @@ -24359,6 +29720,18 @@ "homedir-polyfill": "^1.0.1" } }, + "expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" + } + }, "express": { "version": "4.17.1", "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", @@ -24514,6 +29887,44 @@ } } }, + "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, + "requires": { + "@types/yauzl": "^2.9.1", + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "dependencies": { + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "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, + "requires": { + "pump": "^3.0.0" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, "fast-deep-equal": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", @@ -24630,6 +30041,24 @@ "websocket-driver": ">=0.5.1" } }, + "fb-watchman": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", + "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "dev": true, + "requires": { + "bser": "2.1.1" + } + }, + "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.1", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", @@ -24771,9 +30200,9 @@ } }, "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==", + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", "dev": true }, "for-in": { @@ -24782,6 +30211,26 @@ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", "dev": true }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", @@ -24813,6 +30262,12 @@ "readable-stream": "^2.0.0" } }, + "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", @@ -24889,26 +30344,22 @@ "abbrev": { "version": "1.1.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "aproba": { "version": "1.2.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "are-we-there-yet": { "version": "1.1.5", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "delegates": "^1.0.0", "readable-stream": "^2.0.6" @@ -24917,14 +30368,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -24933,38 +30382,32 @@ "chownr": { "version": "1.1.3", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "core-util-is": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "debug": { "version": "3.2.6", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "ms": "^2.1.1" } @@ -24972,26 +30415,22 @@ "deep-extend": { "version": "0.6.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "delegates": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "detect-libc": { "version": "1.0.3", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "fs-minipass": { "version": "1.2.7", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "minipass": "^2.6.0" } @@ -24999,14 +30438,12 @@ "fs.realpath": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "gauge": { "version": "2.7.4", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "aproba": "^1.0.3", "console-control-strings": "^1.0.0", @@ -25021,8 +30458,7 @@ "glob": { "version": "7.1.6", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -25035,14 +30471,12 @@ "has-unicode": { "version": "2.0.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "iconv-lite": { "version": "0.4.24", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "safer-buffer": ">= 2.1.2 < 3" } @@ -25050,8 +30484,7 @@ "ignore-walk": { "version": "3.0.3", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "minimatch": "^3.0.4" } @@ -25059,8 +30492,7 @@ "inflight": { "version": "1.0.6", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "once": "^1.3.0", "wrappy": "1" @@ -25069,20 +30501,17 @@ "inherits": { "version": "2.0.4", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "ini": { "version": "1.3.5", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "is-fullwidth-code-point": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "number-is-nan": "^1.0.0" } @@ -25090,14 +30519,12 @@ "isarray": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "minimatch": { "version": "3.0.4", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "brace-expansion": "^1.1.7" } @@ -25105,14 +30532,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "minipass": { "version": "2.9.0", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -25121,8 +30546,7 @@ "minizlib": { "version": "1.3.3", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "minipass": "^2.9.0" } @@ -25130,8 +30554,7 @@ "mkdirp": { "version": "0.5.1", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "minimist": "0.0.8" } @@ -25139,14 +30562,12 @@ "ms": { "version": "2.1.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "needle": { "version": "2.4.0", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "debug": "^3.2.6", "iconv-lite": "^0.4.4", @@ -25156,8 +30577,7 @@ "node-pre-gyp": { "version": "0.14.0", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "detect-libc": "^1.0.2", "mkdirp": "^0.5.1", @@ -25174,8 +30594,7 @@ "nopt": { "version": "4.0.1", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "abbrev": "1", "osenv": "^0.1.4" @@ -25184,8 +30603,7 @@ "npm-bundled": { "version": "1.1.1", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "npm-normalize-package-bin": "^1.0.1" } @@ -25193,14 +30611,12 @@ "npm-normalize-package-bin": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "npm-packlist": { "version": "1.4.7", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "ignore-walk": "^3.0.1", "npm-bundled": "^1.0.1" @@ -25209,8 +30625,7 @@ "npmlog": { "version": "4.1.2", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "are-we-there-yet": "~1.1.2", "console-control-strings": "~1.1.0", @@ -25221,20 +30636,17 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "object-assign": { "version": "4.1.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "once": { "version": "1.4.0", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "wrappy": "1" } @@ -25242,20 +30654,17 @@ "os-homedir": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "os-tmpdir": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "osenv": { "version": "0.1.5", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "os-homedir": "^1.0.0", "os-tmpdir": "^1.0.0" @@ -25264,20 +30673,17 @@ "path-is-absolute": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "process-nextick-args": { "version": "2.0.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "rc": { "version": "1.2.8", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "deep-extend": "^0.6.0", "ini": "~1.3.0", @@ -25288,16 +30694,14 @@ "minimist": { "version": "1.2.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true } } }, "readable-stream": { "version": "2.3.6", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -25311,8 +30715,7 @@ "rimraf": { "version": "2.7.1", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "glob": "^7.1.3" } @@ -25320,44 +30723,37 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "safer-buffer": { "version": "2.1.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "sax": { "version": "1.2.4", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "semver": { "version": "5.7.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "set-blocking": { "version": "2.0.0", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "signal-exit": { "version": "3.0.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "string_decoder": { "version": "1.1.1", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "safe-buffer": "~5.1.0" } @@ -25365,8 +30761,7 @@ "string-width": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -25376,8 +30771,7 @@ "strip-ansi": { "version": "3.0.1", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "ansi-regex": "^2.0.0" } @@ -25385,14 +30779,12 @@ "strip-json-comments": { "version": "2.0.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "tar": { "version": "4.4.13", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "chownr": "^1.1.1", "fs-minipass": "^1.2.5", @@ -25406,14 +30798,12 @@ "util-deprecate": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "wide-align": { "version": "1.1.3", "bundled": true, - "dev": true, - "optional": true, + "extraneous": true, "requires": { "string-width": "^1.0.2 || 2" } @@ -25421,14 +30811,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "extraneous": true }, "yallist": { "version": "3.1.1", "bundled": true, - "dev": true, - "optional": true + "extraneous": true } } }, @@ -25499,22 +30887,22 @@ } }, "gaxios": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.0.tgz", - "integrity": "sha512-pHplNbslpwCLMyII/lHPWFQbJWOX0B3R1hwBEOvzYi1GmdKZruuEHK4N9V6f7tf1EaPYyF80mui1+344p6SmLg==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.2.tgz", + "integrity": "sha512-T+ap6GM6UZ0c4E6yb1y/hy2UB6hTrqhglp3XfmU9qbLCGRYhLVV5aRPpC4EmoG8N8zOnkYCgoBz+ScvGAARY6Q==", "dev": true, "requires": { "abort-controller": "^3.0.0", "extend": "^3.0.2", "https-proxy-agent": "^5.0.0", "is-stream": "^2.0.0", - "node-fetch": "^2.3.0" + "node-fetch": "^2.6.1" } }, "gcp-metadata": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.0.tgz", - "integrity": "sha512-L9XQUpvKJCM76YRSmcxrR4mFPzPGsgZUH+GgHMxAET8qc6+BhRJq63RLhWakgEO2KKVgeSDVfyiNjkGSADwNTA==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz", + "integrity": "sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==", "dev": true, "requires": { "gaxios": "^4.0.0", @@ -25522,9 +30910,9 @@ } }, "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==", + "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 }, "get-caller-file": { @@ -25544,6 +30932,12 @@ "has-symbols": "^1.0.1" } }, + "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-stdin": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", @@ -25671,6 +31065,12 @@ } } }, + "glur": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/glur/-/glur-1.1.2.tgz", + "integrity": "sha1-8g6jbbEDv8KSNDkh8fkeg8NGdok=", + "dev": true + }, "google-apps-script-webpack-dev-server": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/google-apps-script-webpack-dev-server/-/google-apps-script-webpack-dev-server-1.0.0.tgz", @@ -25683,9 +31083,9 @@ } }, "google-auth-library": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.3.0.tgz", - "integrity": "sha512-MPeeMlnsYnoiiVFMwX3hgaS684aiXrSqKoDP+xL4Ejg4Z0qLvIeg4XsaChemyFI8ZUO7ApwDAzNtgmhWSDNh5w==", + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.6.tgz", + "integrity": "sha512-Q+ZjUEvLQj/lrVHF/IQwRo6p3s8Nc44Zk/DALsN+ac3T4HY/g/3rrufkgtl+nZ1TW7DNAw5cTChdVp4apUXVgQ==", "dev": true, "requires": { "arrify": "^2.0.0", @@ -25717,42 +31117,50 @@ } }, "google-p12-pem": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.0.tgz", - "integrity": "sha512-JUtEHXL4DY/N+xhlm7TC3qL797RPAtk0ZGXNs3/gWyiDHYoA/8Rjes0pztkda+sZv4ej1EoO2KhWgW5V9KTrSQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.3.tgz", + "integrity": "sha512-MC0jISvzymxePDVembypNefkAQp+DRP7dBE+zNUPaIjEspIlYg0++OrsNr248V9tPbz6iqtZ7rX1hxWA5B8qBQ==", "dev": true, "requires": { - "node-forge": "^0.10.0" + "node-forge": "^1.0.0" + }, + "dependencies": { + "node-forge": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz", + "integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==", + "dev": true + } } }, "googleapis": { - "version": "76.0.0", - "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-76.0.0.tgz", - "integrity": "sha512-l/TFSW7IRFcb7wF641BlmuP8Ox1ncuzJk5Fcs2947otlGBm5ktDxFhPkmrcNDaG+LWPQsuDwP1ojL0xV39cpmw==", + "version": "66.0.0", + "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-66.0.0.tgz", + "integrity": "sha512-jdEleRoyo/AeJZjKGC7Z2mHgochn2vR2JKqey6kydRkIBmCZxoQKLisRR4H8CRYZeEd6+c8Ns/LzS1S7qUjoFw==", "dev": true, "requires": { - "google-auth-library": "^7.0.2", - "googleapis-common": "^5.0.2" + "google-auth-library": "^6.0.0", + "googleapis-common": "^4.4.1" } }, "googleapis-common": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.0.3.tgz", - "integrity": "sha512-8khlXblLyT9UpB+NTZzrWfKQUW6U7gO6WnfJp51WrLgpzP7zkO+OshwtdArq8z2afj37jdrhbIT8eAxZLdwvwA==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-4.4.3.tgz", + "integrity": "sha512-W46WKCk3QtlCCfmZyQIH5zxmDOyeV5Qj+qs7nr2ox08eRkEJMWp6iwv542R/PsokXaGUSrmif4vCC4+rGzRSsQ==", "dev": true, "requires": { "extend": "^3.0.2", "gaxios": "^4.0.0", - "google-auth-library": "^7.0.2", + "google-auth-library": "^6.0.0", "qs": "^6.7.0", "url-template": "^2.0.8", "uuid": "^8.0.0" } }, "got": { - "version": "11.8.2", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.2.tgz", - "integrity": "sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ==", + "version": "11.8.3", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.3.tgz", + "integrity": "sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg==", "dev": true, "requires": { "@sindresorhus/is": "^4.0.0", @@ -25760,7 +31168,7 @@ "@types/cacheable-request": "^6.0.1", "@types/responselike": "^1.0.0", "cacheable-lookup": "^5.0.3", - "cacheable-request": "^7.0.1", + "cacheable-request": "^7.0.2", "decompress-response": "^6.0.0", "http2-wrapper": "^1.0.0-beta.5.2", "lowercase-keys": "^2.0.0", @@ -25769,19 +31177,19 @@ } }, "graceful-fs": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "version": "4.2.9", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", + "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", "dev": true }, "gtoken": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.0.tgz", - "integrity": "sha512-mCcISYiaRZrJpfqOs0QWa6lfEM/C1V9ASkzFmuz43XBb5s1Vynh+CZy1ECeeJXVGx2PRByjYzb4Y4/zr1byr0w==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz", + "integrity": "sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ==", "dev": true, "requires": { "gaxios": "^4.0.0", - "google-p12-pem": "^3.0.3", + "google-p12-pem": "^3.1.3", "jws": "^4.0.0" } }, @@ -25800,6 +31208,23 @@ "function-bind": "^1.1.1" } }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + } + } + }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -25928,12 +31353,27 @@ "wbuf": "^1.1.0" } }, + "html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "dev": true, + "requires": { + "whatwg-encoding": "^1.0.5" + } + }, "html-entities": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.3.1.tgz", "integrity": "sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==", "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==", + "dev": true + }, "html-minifier": { "version": "3.5.21", "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", @@ -26117,6 +31557,34 @@ "requires-port": "^1.0.0" } }, + "http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "requires": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, "http-proxy-middleware": { "version": "0.19.1", "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", @@ -26172,6 +31640,12 @@ } } }, + "human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true + }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -26283,40 +31757,39 @@ "dev": true }, "inquirer": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.6.tgz", - "integrity": "sha512-7SVO4h+QIdMq6XcqIqrNte3gS5MzCCKZdsq9DO4PJziBFNYzP3PGFbDjgadDb//MCahzgjCxvQ/O2wa7kx9o4w==", + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", + "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", - "lodash": "^4.17.15", + "lodash": "^4.17.19", "mute-stream": "0.0.8", "run-async": "^2.4.0", - "rxjs": "^6.5.3", + "rxjs": "^6.6.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0", "through": "^2.3.6" }, "dependencies": { "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": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "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", @@ -26345,9 +31818,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" @@ -26409,6 +31882,12 @@ "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", "dev": true }, + "ip-regex": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz", + "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==", + "dev": true + }, "ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", @@ -26552,6 +32031,12 @@ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, + "is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true + }, "is-glob": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", @@ -26567,6 +32052,15 @@ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true }, + "is-ip": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-3.1.0.tgz", + "integrity": "sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==", + "dev": true, + "requires": { + "ip-regex": "^4.0.0" + } + }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -26587,6 +32081,18 @@ } } }, + "is-online": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/is-online/-/is-online-9.0.1.tgz", + "integrity": "sha512-+08dRW0dcFOtleR2N3rHRVxDyZtQitUp9cC+KpKTds0mXibbQyW5js7xX0UGyQXkaLUJObe0w6uQ4ex34lX9LA==", + "dev": true, + "requires": { + "got": "^11.8.0", + "p-any": "^3.0.0", + "p-timeout": "^3.2.0", + "public-ip": "^4.0.4" + } + }, "is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", @@ -26620,10 +32126,10 @@ "isobject": "^3.0.1" } }, - "is-port-reachable": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-port-reachable/-/is-port-reachable-3.0.0.tgz", - "integrity": "sha512-056IzLiWHdgVd6Eq1F9HtJl+cIkvi5X2MJ/A1fjQtByHkzQE1wGardnPhqrarOGDF88BOW+297X7PDvZ2vcyVg==", + "is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", "dev": true }, "is-promise": { @@ -26632,22 +32138,6 @@ "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", "dev": true }, - "is-reachable": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-reachable/-/is-reachable-5.0.0.tgz", - "integrity": "sha512-frRPbdrQWEqbnF1il9Dyrf52Q40exkHdo4/grWMjHrBn4G1DKC9sbuQihgANkJPNi2eosU4AXBsrITdXmc3IQg==", - "dev": true, - "requires": { - "arrify": "^2.0.1", - "got": "^11.7.0", - "is-port-reachable": "^3.0.0", - "p-any": "^3.0.0", - "p-timeout": "^3.2.0", - "prepend-http": "^3.0.1", - "router-ips": "^1.0.0", - "url-parse": "^1.4.7" - } - }, "is-regex": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", @@ -26678,10 +32168,16 @@ "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-unicode-supported": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.1.0.tgz", - "integrity": "sha512-lDcxivp8TJpLG75/DpatAqNzOpDPSpED8XNtrpBHTdQ2InQ1PbW78jhwSxyxhhu+xbVSast2X38bwj8atwoUQA==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "dev": true }, "is-windows": { @@ -26714,6 +32210,1952 @@ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", "dev": true }, + "istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", + "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", + "dev": true, + "requires": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.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 + } + } + }, + "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, + "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.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" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", + "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "dev": true, + "requires": { + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + }, + "dependencies": { + "import-local": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", + "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "dev": true, + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + } + }, + "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" + } + }, + "resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "requires": { + "resolve-from": "^5.0.0" + } + }, + "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 + } + } + }, + "jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" + }, + "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" + } + }, + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + } + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.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 + }, + "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" + } + } + } + }, + "jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + } + } + }, + "jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "requires": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.0" + } + }, + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.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 + }, + "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 + }, + "import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + } + }, + "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" + } + }, + "resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "requires": { + "resolve-from": "^5.0.0" + } + }, + "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 + }, + "supports-color": { + "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" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + } + } + }, + "jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "dev": true, + "requires": { + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "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 + }, + "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 + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + }, + "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, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "supports-color": { + "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" + } + } + } + }, + "jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "dev": true, + "requires": { + "detect-newline": "^3.0.0" + } + }, + "jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "supports-color": { + "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" + } + } + } + }, + "jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + } + }, + "jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" + } + }, + "jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "dev": true + }, + "jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "dependencies": { + "anymatch": { + "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", + "picomatch": "^2.0.4" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "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, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fsevents": { + "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 + }, + "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 + }, + "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 + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "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, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "jest-image-snapshot": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/jest-image-snapshot/-/jest-image-snapshot-4.5.1.tgz", + "integrity": "sha512-0YkgupgkkCx0wIZkxvqs/oNiUT0X0d2WTpUhaAp+Dy6CpqBUZMRTIZo4KR1f+dqmx6WXrLCvecjnHLIsLkI+gQ==", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "get-stdin": "^5.0.1", + "glur": "^1.1.2", + "lodash": "^4.17.4", + "mkdirp": "^0.5.1", + "pixelmatch": "^5.1.0", + "pngjs": "^3.4.0", + "rimraf": "^2.6.2", + "ssim.js": "^3.1.1" + }, + "dependencies": { + "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": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "get-stdin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz", + "integrity": "sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g=", + "dev": true + }, + "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, + "requires": { + "minimist": "^1.2.5" + } + }, + "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" + } + }, + "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" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "supports-color": { + "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" + } + } + } + }, + "jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "dev": true, + "requires": { + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + } + }, + "jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "supports-color": { + "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" + } + } + } + }, + "jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "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, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "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 + }, + "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 + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + }, + "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, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*" + } + }, + "jest-pnp-resolver": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", + "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "dev": true, + "requires": {} + }, + "jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "dev": true + }, + "jest-resolve": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + } + } + }, + "jest-resolve-dependencies": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" + } + }, + "jest-runner": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "dev": true, + "requires": { + "@jest/console": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", + "throat": "^6.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "supports-color": { + "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" + } + } + } + }, + "jest-runtime": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "dev": true, + "requires": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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" + } + }, + "execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + } + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true + }, + "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 + }, + "npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "requires": { + "path-key": "^3.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 + }, + "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 + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "supports-color": { + "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" + } + }, + "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" + } + } + } + }, + "jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "requires": { + "@types/node": "*", + "graceful-fs": "^4.2.9" + } + }, + "jest-snapshot": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "dev": true, + "requires": { + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^27.5.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-util": "^27.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^27.5.1", + "semver": "^7.3.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "supports-color": { + "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" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "jest-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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 + }, + "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 + }, + "supports-color": { + "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" + } + } + } + }, + "jest-validate": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "dev": true, + "requires": { + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "supports-color": { + "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" + } + } + } + }, + "jest-watcher": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "dev": true, + "requires": { + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^27.5.1", + "string-length": "^4.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "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", + "supports-color": "^7.1.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 + }, + "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 + }, + "supports-color": { + "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" + } + } + } + }, "jest-worker": { "version": "25.5.0", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", @@ -26741,6 +34183,12 @@ } } }, + "jmespath": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.16.0.tgz", + "integrity": "sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==", + "dev": true + }, "jquery": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", @@ -26762,6 +34210,82 @@ "esprima": "^4.0.0" } }, + "jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "dev": true, + "requires": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "dependencies": { + "acorn": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", + "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "dev": true + }, + "escodegen": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", + "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "dev": true, + "requires": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + }, + "ws": { + "version": "7.5.7", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz", + "integrity": "sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==", + "dev": true, + "requires": {} + } + } + }, "jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -26864,9 +34388,9 @@ } }, "keyv": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.3.tgz", - "integrity": "sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.1.1.tgz", + "integrity": "sha512-tGv1yP6snQVDSM4X6yxrv2zzq/EvpW+oYiUz6aueW1u9CtS8RzUQYxxmFwgZlO2jSgCxQbchhxaqXXp2hnKGpQ==", "dev": true, "requires": { "json-buffer": "3.0.1" @@ -26884,6 +34408,12 @@ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true + }, "language-subtag-registry": { "version": "0.3.20", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.20.tgz", @@ -26899,6 +34429,12 @@ "language-subtag-registry": "~0.3.2" } }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true + }, "leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -27064,13 +34600,13 @@ "integrity": "sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ==" }, "log-symbols": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-5.0.0.tgz", - "integrity": "sha512-zBsSKauX7sM0kcqrf8VpMRPqcWzU6a/Wi7iEl0QlVSCiIZ4CctaLdfVdiZUn6q2/nenyt392qJqpw9FhNAwqxQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, "requires": { "chalk": "^4.1.0", - "is-unicode-supported": "^1.0.0" + "is-unicode-supported": "^0.1.0" }, "dependencies": { "ansi-styles": { @@ -27083,9 +34619,9 @@ } }, "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "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", @@ -27179,6 +34715,15 @@ "semver": "^5.6.0" } }, + "makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "requires": { + "tmpl": "1.0.5" + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -27221,6 +34766,34 @@ "readable-stream": "^2.0.1" } }, + "merge": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz", + "integrity": "sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==", + "dev": true + }, + "merge-deep": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/merge-deep/-/merge-deep-3.0.3.tgz", + "integrity": "sha512-qtmzAS6t6grwEkNrunqTBdn0qKwFgNWvlxUbAV8es9M7Ot1EbyApytCnvE0jALPa46ZpKDUo527kKiaWplmlFA==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "clone-deep": "^0.2.4", + "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" + } + } + } + }, "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -27445,12 +35018,36 @@ } } }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dev": true, + "requires": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "dev": true + } + } + }, "mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "dev": true }, + "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 + }, "module-to-cdn": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/module-to-cdn/-/module-to-cdn-3.1.5.tgz", @@ -27603,10 +35200,37 @@ } }, "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", - "dev": true + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dev": true, + "requires": { + "whatwg-url": "^5.0.0" + }, + "dependencies": { + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", + "dev": true + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", + "dev": true + }, + "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" + } + } + } }, "node-forge": { "version": "0.10.0", @@ -27614,6 +35238,12 @@ "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", "dev": true }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "dev": true + }, "node-libs-browser": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", @@ -27654,19 +35284,16 @@ } }, "node-releases": { - "version": "1.1.73", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.73.tgz", - "integrity": "sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz", + "integrity": "sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg==", "dev": true }, "normalize-newline": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/normalize-newline/-/normalize-newline-4.1.0.tgz", - "integrity": "sha512-ff4jKqMI8Xl50/4Mms/9jPobzAV/UK+kXG2XJ/7AqOmxIx8mqfqTIHYxuAnEgJ2AQeBbLnlbmZ5+38Y9A0w/YA==", - "dev": true, - "requires": { - "replace-buffer": "^1.2.1" - } + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-newline/-/normalize-newline-3.0.0.tgz", + "integrity": "sha1-HL6oBKukNgAfg5OKsh7AOdaa6dM=", + "dev": true }, "normalize-package-data": { "version": "2.5.0", @@ -27710,6 +35337,12 @@ "boolbase": "~1.0.0" } }, + "nwsapi": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", + "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "dev": true + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -27952,9 +35585,9 @@ } }, "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", + "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" @@ -28032,9 +35665,9 @@ } }, "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "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", @@ -28062,22 +35695,6 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true - }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - } - }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -28255,6 +35872,12 @@ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", "dev": true }, + "parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "dev": true + }, "parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -28345,10 +35968,22 @@ "sha.js": "^2.4.8" } }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "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": { @@ -28372,6 +36007,29 @@ "pinkie": "^2.0.0" } }, + "pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true + }, + "pixelmatch": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-5.2.1.tgz", + "integrity": "sha512-WjcAdYSnKrrdDdqTcVEY7aB7UhhwjYQKYhHiBXdJef0MOaQeYpUdQ+iVyBLa5YBKS8MPVPPMX7rpOByISLpeEQ==", + "dev": true, + "requires": { + "pngjs": "^4.0.1" + }, + "dependencies": { + "pngjs": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-4.0.1.tgz", + "integrity": "sha512-rf5+2/ioHeQxR6IxuYNYGFytUyG3lma/WW1nsmjeHlWwtb2aByla6dkVc8pmJ9nplzkTA0q2xx7mMWrOTqT4Gg==", + "dev": true + } + } + }, "pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -28417,6 +36075,12 @@ } } }, + "pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", + "dev": true + }, "portfinder": { "version": "1.0.28", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", @@ -28553,9 +36217,9 @@ "dev": true }, "prepend-http": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-3.0.1.tgz", - "integrity": "sha512-BLxfZh+m6UiAiCPZFJ4+vYoL7NrRs5XgCTRrjseATAggXhdZKKxn+JUNmuVYWY23bDHgaEHodxw8mnmtVEDtHw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", "dev": true }, "prettier": { @@ -28583,6 +36247,31 @@ "utila": "~0.4" } }, + "pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + }, + "react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + } + } + }, "process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -28607,6 +36296,16 @@ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", "dev": true }, + "prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + } + }, "prop-types": { "version": "15.7.2", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", @@ -28636,12 +36335,24 @@ "ipaddr.js": "1.9.1" } }, + "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==", + "dev": true + }, "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", "dev": true }, + "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 + }, "public-encrypt": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", @@ -28664,6 +36375,146 @@ } } }, + "public-ip": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/public-ip/-/public-ip-4.0.4.tgz", + "integrity": "sha512-EJ0VMV2vF6Cu7BIPo3IMW1Maq6ME+fbR0NcPmqDfpfNGIRPue1X8QrGjrg/rfjDkOsIkKHIf2S5FlEa48hFMTA==", + "dev": true, + "requires": { + "dns-socket": "^4.2.2", + "got": "^9.6.0", + "is-ip": "^3.1.0" + }, + "dependencies": { + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "dev": true + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dev": true, + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dev": true, + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "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, + "requires": { + "pump": "^3.0.0" + } + } + } + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dev": true, + "requires": { + "mimic-response": "^1.0.0" + } + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "dev": true + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dev": true, + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "dependencies": { + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + } + } + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "dev": true + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dev": true, + "requires": { + "json-buffer": "3.0.0" + } + }, + "normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "dev": true + }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "dev": true + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dev": true, + "requires": { + "lowercase-keys": "^1.0.0" + }, + "dependencies": { + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true + } + } + } + } + }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -28703,10 +36554,216 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, + "puppeteer": { + "version": "13.4.1", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-13.4.1.tgz", + "integrity": "sha512-2arcYPEGvLV9HvOw01Zv1b1IAXrMWHqsFJn0Hn00qe9HtCmaF0b8FlrbdLjCIbkaFc6icH5+GqcG8R5KxlJSRg==", + "dev": true, + "requires": { + "cross-fetch": "3.1.5", + "debug": "4.3.3", + "devtools-protocol": "0.0.960912", + "extract-zip": "2.0.1", + "https-proxy-agent": "5.0.0", + "pkg-dir": "4.2.0", + "progress": "2.0.3", + "proxy-from-env": "1.1.0", + "rimraf": "3.0.2", + "tar-fs": "2.1.1", + "unbzip2-stream": "1.4.3", + "ws": "8.5.0" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "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" + } + }, + "ws": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", + "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", + "dev": true, + "requires": {} + } + } + }, + "puppeteer-extra": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/puppeteer-extra/-/puppeteer-extra-3.2.3.tgz", + "integrity": "sha512-CnSN9yIedbAbS8WmRybaDHJLf6goRk+VYM/kbH6i/+EMadCaAeh2O+1/mFUMN2LbkbDNAp2Vd/UwrTVCHjTxyg==", + "dev": true, + "requires": { + "@types/debug": "^4.1.0", + "@types/puppeteer": "*", + "debug": "^4.1.1", + "deepmerge": "^4.2.2" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "puppeteer-extra-plugin": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin/-/puppeteer-extra-plugin-3.2.0.tgz", + "integrity": "sha512-wbiw12USE3b+maMk/IMaroYsz7rusVI9G+ml6pCFCnFFh91Z9BAEiVzhCpOHuquVXEiCCsDTWhDUgvdNxQHOyw==", + "dev": true, + "requires": { + "@types/debug": "^4.1.0", + "debug": "^4.1.1", + "merge-deep": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "puppeteer-extra-plugin-stealth": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-stealth/-/puppeteer-extra-plugin-stealth-2.9.0.tgz", + "integrity": "sha512-erZ9lkIcOkfYmLPP2jv2AiqvNBFhQJinWJhcm40pqSjwJTsZXHsTARUyRCsBYEEBvNIs3Wz3E0zVlTRc4IJ6Hg==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "puppeteer-extra-plugin": "^3.2.0", + "puppeteer-extra-plugin-user-preferences": "^2.3.1" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "puppeteer-extra-plugin-user-data-dir": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-user-data-dir/-/puppeteer-extra-plugin-user-data-dir-2.3.1.tgz", + "integrity": "sha512-yhaYMaNFdfQ1LbA94ZElW1zU8rh+MFmO+GZA0gtQ8BXc+UZ6aRrWS9flIZvlXDzk+ZsXhCbTEohEwZ8lEDLRVA==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "fs-extra": "^10.0.0", + "puppeteer-extra-plugin": "^3.2.0" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "fs-extra": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.1.tgz", + "integrity": "sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "puppeteer-extra-plugin-user-preferences": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/puppeteer-extra-plugin-user-preferences/-/puppeteer-extra-plugin-user-preferences-2.3.1.tgz", + "integrity": "sha512-t/FyGQj2aqtHOROqL02z+k2kNQe0cjT0Hd9pG5FJ7x0JXx1722PhOuK7FeJLQMJ+BLl2YvCUgaWSC8Zohjts5A==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "deepmerge": "^4.2.2", + "puppeteer-extra-plugin": "^3.2.0", + "puppeteer-extra-plugin-user-data-dir": "^2.3.1" + }, + "dependencies": { + "debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, "qs": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", - "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", "dev": true, "requires": { "side-channel": "^1.0.4" @@ -29099,12 +37156,6 @@ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", "dev": true }, - "replace-buffer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/replace-buffer/-/replace-buffer-1.2.1.tgz", - "integrity": "sha512-ly3OKwKu+3T55DjP5PjIMzxgz9lFx6dQnBmAIxryZyRKl8f22juy12ShOyuq8WrQE5UlFOseZgQZDua0iF9DHw==", - "dev": true - }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -29140,9 +37191,9 @@ } }, "resolve-alpn": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.1.2.tgz", - "integrity": "sha512-8OyfzhAtA32LVUsJSke3auIyINcwdh5l3cvYKdKO0nvsYSKuiLfTM5i78PJswFPT8y6cPW+L1v6/hE95chcpDA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", "dev": true }, "resolve-cwd": { @@ -29206,6 +37257,12 @@ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", "dev": true }, + "resolve.exports": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz", + "integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==", + "dev": true + }, "responselike": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", @@ -29262,12 +37319,6 @@ "inherits": "^2.0.1" } }, - "router-ips": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/router-ips/-/router-ips-1.0.0.tgz", - "integrity": "sha1-ROAIWOvrwBM9WOQLLNih+7BCA/U=", - "dev": true - }, "run-async": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", @@ -29293,9 +37344,9 @@ } }, "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "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" @@ -29322,6 +37373,21 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "sax": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", + "integrity": "sha1-e45lYZCyKOgaZq6nSEgNgozS03o=", + "dev": true + }, + "saxes": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", + "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "dev": true, + "requires": { + "xmlchars": "^2.2.0" + } + }, "scheduler": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", @@ -29511,6 +37577,35 @@ "safe-buffer": "^5.0.1" } }, + "shallow-clone": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", + "dev": true, + "requires": { + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" + }, + "dependencies": { + "kind-of": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "dev": true, + "requires": { + "is-buffer": "^1.0.2" + } + }, + "lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", + "dev": true + } + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -29538,9 +37633,15 @@ } }, "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true }, "slash": { @@ -29879,9 +37980,9 @@ } }, "split-lines": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/split-lines/-/split-lines-3.0.0.tgz", - "integrity": "sha512-d0TpRBL/VfKDXsk8JxPF7zgF5pCUDdBMSlEL36xBgVeaX448t+yGXcJaikUyzkoKOJ0l6KpMfygzJU9naIuivw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/split-lines/-/split-lines-2.1.0.tgz", + "integrity": "sha512-8dv+1zKgTpfTkOy8XZLFyWrfxO0NV/bj/3EaQ+hBrBxGv2DwiroljPjU8NlCr+59nLnsVm9WYT7lXKwe4TC6bw==", "dev": true }, "split-string": { @@ -29899,6 +38000,12 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", "dev": true }, + "ssim.js": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/ssim.js/-/ssim.js-3.5.0.tgz", + "integrity": "sha512-Aj6Jl2z6oDmgYFFbQqK7fght19bXdOxY7Tj03nF+03M9gCBAjeIiO8/PlEGMfKDwYpw4q6iBqVq2YuREorGg/g==", + "dev": true + }, "ssri": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", @@ -29908,6 +38015,23 @@ "minipass": "^3.1.1" } }, + "stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==", + "dev": true, + "requires": { + "escape-string-regexp": "^2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + } + } + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -29983,6 +38107,16 @@ "safe-buffer": "~5.1.0" } }, + "string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "requires": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + } + }, "string-width": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", @@ -30130,9 +38264,9 @@ } }, "strip-bom": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-5.0.0.tgz", - "integrity": "sha512-p+byADHF7SzEcVnLvc/r3uognM1hUhObuHXxJcgLCfD194XAkaLbjq3Wzb0N5G2tgIjH0dgT708Z51QxMeu60A==", + "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 }, "strip-eof": { @@ -30141,10 +38275,16 @@ "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", "dev": true }, + "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 + }, "strip-json-comments": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "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 }, "style-loader": { @@ -30202,6 +38342,39 @@ "has-flag": "^3.0.0" } }, + "supports-hyperlinks": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", + "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", + "dev": true, + "requires": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.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 + }, + "supports-color": { + "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" + } + } + } + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, "table": { "version": "5.4.6", "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", @@ -30288,6 +38461,54 @@ } } }, + "tar-fs": { + "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.1.4" + } + }, + "tar-stream": { + "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.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.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" + } + } + } + }, + "terminal-link": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", + "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + } + }, "tern": { "version": "0.24.3", "resolved": "https://registry.npmjs.org/tern/-/tern-0.24.3.tgz", @@ -30502,12 +38723,29 @@ } } }, + "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 }, + "throat": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", + "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==", + "dev": true + }, "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -30548,6 +38786,12 @@ "os-tmpdir": "~1.0.2" } }, + "tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, "to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", @@ -30580,6 +38824,12 @@ } } }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "dev": true + }, "to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", @@ -30614,6 +38864,34 @@ "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", "dev": true }, + "tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "dev": true, + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + }, + "dependencies": { + "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 + } + } + }, + "tr46": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", + "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "dev": true, + "requires": { + "punycode": "^2.1.1" + } + }, "ts-loader": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-8.0.2.tgz", @@ -30700,21 +38978,12 @@ } }, "ts2gas": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/ts2gas/-/ts2gas-4.0.0.tgz", - "integrity": "sha512-2ybnGMatN7mxw9Rgm18m42g7TD8+lgYNscgO1x3G8BQJsqAuPRYGquy27B7XGMh1MU5/DWghLIlLSlQx7x4CPg==", + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/ts2gas/-/ts2gas-3.6.5.tgz", + "integrity": "sha512-YXAH+ua1lJRSR0/juXkkYXOIkkjcvM0q7mMdSc6DY62u201TqBb8kGiDAeHaQTMxo6tJ5mFXBzjPDLbIyH/m1w==", "dev": true, "requires": { - "type-fest": "^1.1.3", "typescript": "^4.2.4" - }, - "dependencies": { - "type-fest": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.2.2.tgz", - "integrity": "sha512-pfkPYCcuV0TJoo/jlsUeWNV8rk7uMU6ocnYNvca1Vu+pyKi8Rl8Zo2scPt9O72gCsXIm+dMxOOWuA3VFDSdzWA==", - "dev": true - } } }, "tsconfig-paths": { @@ -30752,6 +39021,15 @@ "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", "dev": true }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + } + }, "tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", @@ -30767,6 +39045,12 @@ "prelude-ls": "~1.1.2" } }, + "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 + }, "type-fest": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", @@ -30789,6 +39073,15 @@ "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.3.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", @@ -30819,6 +39112,28 @@ } } }, + "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, + "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" + } + } + } + }, "uncontrollable": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/uncontrollable/-/uncontrollable-7.1.1.tgz", @@ -31001,6 +39316,15 @@ "requires-port": "^1.0.0" } }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dev": true, + "requires": { + "prepend-http": "^2.0.0" + } + }, "url-template": { "version": "2.0.8", "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", @@ -31069,6 +39393,25 @@ "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", "dev": true }, + "v8-to-istanbul": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", + "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "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 + } + } + }, "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", @@ -31091,6 +39434,33 @@ "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", "dev": true }, + "w3c-hr-time": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", + "dev": true, + "requires": { + "browser-process-hrtime": "^1.0.0" + } + }, + "w3c-xmlserializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", + "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "dev": true, + "requires": { + "xml-name-validator": "^3.0.0" + } + }, + "walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "requires": { + "makeerror": "1.0.12" + } + }, "warning": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", @@ -31099,6 +39469,16 @@ "loose-envify": "^1.0.0" } }, + "watch": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/watch/-/watch-1.0.2.tgz", + "integrity": "sha1-NApxe952Vyb6CqB9ch4BR6VR3ww=", + "dev": true, + "requires": { + "exec-sh": "^0.2.0", + "minimist": "^1.2.0" + } + }, "watchpack": { "version": "1.7.5", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", @@ -31250,6 +39630,12 @@ "defaults": "^1.0.3" } }, + "webidl-conversions": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", + "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true + }, "webpack": { "version": "4.46.0", "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", @@ -31605,6 +39991,32 @@ "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", "dev": true }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "whatwg-url": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", + "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "dev": true, + "requires": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + } + }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -31712,6 +40124,18 @@ } } }, + "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": "6.2.2", "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", @@ -31721,10 +40145,32 @@ "async-limiter": "~1.0.0" } }, - "wtfnode": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", - "integrity": "sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==", + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "dev": true, + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", + "dev": true + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", "dev": true }, "xtend": { @@ -31847,6 +40293,16 @@ "decamelize": "^1.2.0" } }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, "yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 99432ba..734f228 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,8 @@ "url": "https://github.com/enuchi/React-Google-Apps-Script.git" }, "scripts": { - "test": "test", + "test:integration": "jest --forceExit test/local-development.test", + "test:integration:extended": "cross-env IS_EXTENDED=1 jest --forceExit test/local-development.test", "login": "clasp login", "setup": "rimraf .clasp.json && clasp create --type sheets --title \"My React Project\" --rootDir ./dist", "open": "clasp open --addon", @@ -50,7 +51,11 @@ "@babel/polyfill": "^7.10.4", "@babel/preset-env": "^7.11.0", "@babel/preset-react": "^7.10.4", - "@google/clasp": "^2.4.0", + "@google/clasp": "^2.3.1", + "@types/expect-puppeteer": "^4.4.6", + "@types/jest-environment-puppeteer": "^4.4.1", + "@types/puppeteer": "^5.4.4", + "aws-sdk": "^2.1092.0", "babel-eslint": "^10.1.0", "babel-loader": "^8.1.0", "babel-plugin-add-module-exports": "^1.0.2", @@ -69,6 +74,7 @@ "eslint-plugin-babel": "^5.3.1", "eslint-plugin-googleappsscript": "^1.0.3", "eslint-plugin-import": "^2.22.0", + "eslint-plugin-jest": "^24.3.6", "eslint-plugin-jsx-a11y": "^6.3.1", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^3.1.4", @@ -81,9 +87,14 @@ "google-apps-script-webpack-dev-server": "^1.0.0", "html-webpack-inline-source-plugin": "0.0.10", "html-webpack-plugin": "^3.2.0", + "jest": "^27.5.1", + "jest-image-snapshot": "^4.5.1", "mkdirp": "^1.0.4", "module-to-cdn": "^3.1.5", "prettier": "^1.19.1", + "puppeteer": "^13.4.1", + "puppeteer-extra": "^3.2.3", + "puppeteer-extra-plugin-stealth": "^2.9.0", "rimraf": "^3.0.2", "style-loader": "^1.2.1", "tern": "^0.24.3", diff --git a/src/client/dialog-demo-bootstrap/styles.css b/src/client/dialog-demo-bootstrap/styles.css index 201cdac..4a40799 100644 --- a/src/client/dialog-demo-bootstrap/styles.css +++ b/src/client/dialog-demo-bootstrap/styles.css @@ -1,3 +1,8 @@ +/* needed to make consistent test snapshots across OSs */ +body { + font-family: Arial, Helvetica, sans-serif !important; +} + /* CSSTransitionGroup styling */ diff --git a/test/.eslintrc.json b/test/.eslintrc.json new file mode 100644 index 0000000..57c31c2 --- /dev/null +++ b/test/.eslintrc.json @@ -0,0 +1,36 @@ +{ + "root": true, + "parser": "babel-eslint", + "extends": [ + "airbnb-base", + "plugin:prettier/recommended", + "plugin:jest/recommended" + ], + "plugins": ["babel", "prettier"], + "env": { + "browser": true, + "es6": true, + "jest": true + }, + "globals": { + "page": true, + "browser": true + }, + "parserOptions": { + "ecmaVersion": 9, + "sourceType": "module", + "ecmaFeatures": { + "jsx": true + } + }, + "rules": { + "jest/no-done-callback": "off", + "prettier/prettier": "error", + "camelcase": "warn", + "import/prefer-default-export": "warn", + "import/no-extraneous-dependencies": "warn", + "jest/expect-expect": "off", + "no-new": "off", + "no-underscore-dangle": "off" + } +} diff --git a/test/README.md b/test/README.md new file mode 100644 index 0000000..578a1b6 --- /dev/null +++ b/test/README.md @@ -0,0 +1,49 @@ +# Running tests + +Integration tests here are used to ensure the existing local development setup works across different platforms, and that new features do not break the functionality of the local development environment. + +The "extended" local development integration test builds and deploys the local development setup needed to use hot reload functionality. It deploys the local setup to a spreadsheet inside a test Google account, runs a local development server, and checks that changes to the local files are reflected inside the spreadsheet's add-on, similar to how local development is intended to be used. + +Jest is used to run the tests and compare images of the changes, and Puppeteer is used to control the browser. A test account and test spreadsheet need to be created and credentials need to be passed in through environment variables in order for this "extended" version to work. Example `.env` file variables are listed below. Since secret values cannot be used in PRs opened from forks, a "basic" integration test just loads the local development setup locally, instead of deploying to Google Sheets. + +## Extended integration test + +In order to test the extended integration test locally you will need to create or use a test Google account. It's recommended you create an account solely for this purpose rather than using an existing account. You'll need to create a new project and include the following variables in the `.env` file in the root: + +```bash +SHEET_URL = https://docs.google.com/spreadsheets/d/****************/edit#gid=0 +EMAIL = myisolatedtestaccount@gmail.com +PASSWORD = testaccountpassword +TEST_RECOVERY_EMAIL = myisolatedtestaccountsrecoveryemail@gmail.com + +# For image reporting only +S3_BUCKET_NAME = my-bucket-name +AWS_ACCESS_KEY_ID = A35D************ +AWS_SECRET_ACCESS_KEY = slkf***********/234jdh********** +``` + +Make sure that you have followed the instructions to install local certs (see main README). The test will use Puppeteer to open the spreadsheet URL and log in to your account using your email and password provided. In case it doesn't recognize you it will ask for this account's recovery email -- you'll need to include this in the `.env` file as well. + +### Running the extended tests in the pipeline + +To run the extended integration test in a pipeline using Github Actions, reference the .github/workflows directory. You'll need to add some additional environment variables through the repo secrets settings in order to get the full flow working: + +DOT_CLASPRC - the `.clasprs.json` file from user directory containing clasp login credentials +DOT_CLASP - the `.clasp.json` file from this repo matching the test spreadsheet +TEST_ACCOUNT_EMAIL, TEST_RECOVERY_EMAIL, TEST_ACCOUNT_PASSWORD, TEST_SPREADSHEET_URL - see above variables + +# Additional notes + +### Stealth login +`puppeteer-extra` and `puppeteer-extra-plugin-stealth` are used to help log in to a Google account in the pipeline for the "extended" integration test. They are not easily compatible with the `jest-puppeteer` package, so a custom integration is used that is documented on `jest`'s site [here](jestjs.io/docs/puppeteer#custom-example-without-jest-puppeteer-preset). + +### Generating certs in the pipeline +There are permissions issues running `mkcert -install` in Windows runners, so a powershell script in `./generate-cert.ps1` is used to generate the certs and enable https. + +### Jest open handles +There are issues with `jest` keeping handles open after all tests finish on Windows runners, so `jest --forceExit` is used to resolve them, although this flag may not be needed on certain platforms (like Mac OS). + +### Jest Image Snapshots +`jest-image-snapshot` is used to compare browser snapshots and detect discrepancies or regressions. Thresholds have been adjusted to allow for some variation across different platforms due to differences in font rendering and color profiles. + +If a snapshot fails, a diff image is created in the __diff_output__ directory, showing the comparison. If it fails in the pipeline it may be hard to see this diff. An Image Reporter class is used to upload diff images to an S3 bucket from the pipeline. This can be modified to use any image store. If used, make sure it is enabled in `jest.config.js` and that the necessary environment variables (AWS keys, bucket name, etc.) are added to `.env` file (see above section). \ No newline at end of file diff --git a/test/__image_snapshots__/local-development-test-js-local-setup-extended-should-load-bootstrap-example-1-snap.png b/test/__image_snapshots__/local-development-test-js-local-setup-extended-should-load-bootstrap-example-1-snap.png new file mode 100644 index 0000000000000000000000000000000000000000..5bec9bb9bd794c65726e383213f93a0c65e0091a GIT binary patch literal 57558 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�iA=rVeUT0*$FknAe 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⁣wxwe2R!~@6|M*_jyENVfTZvrL*p49Faxi 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%0D2Y9Q$}GBx$bu$*zV??xz0 zg)vxkQMAjPp9$p%D=#m-pr9Zj)Dky*NeK?124*P`4bkSOs(A~v`fkxWGsdw-rBk?b zo842;dEUYY9V-M@UR6BGpkn73sHB;gdVK-z4X(Pk_D328AXuVBWv`vbA z*I9C1ocUM&YR)k59>;g!HMcNusF3g(7Al?2-v9TH_3WM}NKlGn(KKhg+n0SSMf0ELmvg^RjQW*2Vlob=F zeOYuc*WtJAVZ^Gn2>E1g1wOL4ysR0dm9GAwu~EjzXdsNdv`%@=P(1*}RU%NNNDkO4 zBdWjeTbmaGLpKOO3ayVfzr43w&`f`mn`+sC<+TZ$#r*0|pJ?H3A$RFg0ATxwREAtNx-b0h$v10a zS))}bHUj>uasMfTWy6UafHpmq-s>#A*_Dn{;ARieu*sv$>+hcm{PIVOreKM-H|C?0 z$RGBjM^AwRT|Nr~M=yv8D&5`V;^T{ z7~1qJ7bc~3j88Z4R`x??>CMlXM~qEQbQdZw{~8*)rDI%o&0(hmm+{0j>Un_p+==jXrrWvHX0 zbNB(IG^qJ+gH*$SiS8bo<2tV-y}ZN;5f8Vgvok+bp%x5%M-A zL(8RcA6#`ZYY8X|bJHz!fC>45>_FXn{XvVThe!X9AO9SQqN1-ROgKfL& zNTc>F_$YySlV

(393Cdyw<#&TQv2@Rbf;N@ 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 literal 0 HcmV?d00001 diff --git a/test/__image_snapshots__/local-development-test-js-local-setup-extended-should-modify-bootstrap-title-example-back-to-original-1-snap.png b/test/__image_snapshots__/local-development-test-js-local-setup-extended-should-modify-bootstrap-title-example-back-to-original-1-snap.png new file mode 100644 index 0000000000000000000000000000000000000000..5bec9bb9bd794c65726e383213f93a0c65e0091a GIT binary patch literal 57558 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�iA=rVeUT0*$FknAe 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 literal 0 HcmV?d00001 diff --git a/test/__image_snapshots__/local-development-test-js-local-setup-should-modify-bootstrap-title-example-back-to-original-1-snap.png b/test/__image_snapshots__/local-development-test-js-local-setup-should-modify-bootstrap-title-example-back-to-original-1-snap.png new file mode 100644 index 0000000000000000000000000000000000000000..b68bc6eaa79fd464fe8a3ef8dfe4aefd0f898577 GIT binary patch literal 41655 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 { + return new Promise(resolve => { + process.stdout.on('data', data => { + if (data.includes('Compiled successfully.')) resolve(); + }); + }); +}; + +describe(`Local setup ${isExtended ? '*extended*' : ''}`, () => { + let page; + let process; + const containerSelector = isExtended ? '.script-app-dialog' : 'body'; + + beforeAll(async () => { + process = exec('npm run serve'); + page = await global.__BROWSER_GLOBAL__.newPage(); + + await page.setViewport({ + width: 800, + height: 800, + deviceScaleFactor: 1, + }); + + if (isExtended) { + await openAddon(page); + } else { + await webpackDevServerReady(process); + await page.goto('https://localhost:3000/dialog-demo-bootstrap.html'); + await page.waitForTimeout(3000); + } + }); + + afterAll(() => { + process.kill(); + }); + + it('should load Bootstrap example', async () => { + const container = await page.$(containerSelector); + const image = await container.screenshot(); + await expect(image).toMatchImageSnapshot(); + }); + + it('should modify Bootstrap title example', async () => { + const data = await fs.promises.readFile(srcTestFile, 'utf8'); + const result = data + .replace( + '☀️ Bootstrap demo! ☀️', + '☀️ This is modified text in local development ☀️' + ) + .replace( + "{ padding: '3px', overflowX: 'hidden' }", + "{ padding: '3px', overflowX: 'hidden', backgroundColor: 'black', color: 'white' }" + ); + await fs.promises.writeFile(srcTestFile, result, 'utf8'); + await page.waitForTimeout(4000); + const container = await page.$(containerSelector); + const image = await container.screenshot(); + await expect(image).toMatchImageSnapshot(); + }); + + it('should modify Bootstrap title example back to original', async () => { + const data = await fs.promises.readFile(srcTestFile, 'utf8'); + const result = data + .replace( + '☀️ This is modified text in local development ☀️', + '☀️ Bootstrap demo! ☀️' + ) + .replace( + "{ padding: '3px', overflowX: 'hidden', backgroundColor: 'black', color: 'white' }", + "{ padding: '3px', overflowX: 'hidden' }" + ); + await fs.promises.writeFile(srcTestFile, result, 'utf8'); + await page.waitForTimeout(4000); + const container = await page.$(containerSelector); + const image = await container.screenshot(); + await expect(image).toMatchImageSnapshot(); + }); +}); diff --git a/test/puppeteer-environment.js b/test/puppeteer-environment.js new file mode 100644 index 0000000..3110d92 --- /dev/null +++ b/test/puppeteer-environment.js @@ -0,0 +1,41 @@ +// Use custom jest puppeteer preset as described here: +// jestjs.io/docs/puppeteer#custom-example-without-jest-puppeteer-preset +// This allows using stealth mode. + +const { readFile } = require('fs').promises; +const os = require('os'); +const path = require('path'); +const puppeteer = require('puppeteer'); +const NodeEnvironment = require('jest-environment-node'); + +const DIR = path.join(os.tmpdir(), 'jest_puppeteer_global_setup'); + +class PuppeteerEnvironment extends NodeEnvironment { + constructor(config) { + super(config); + } + + async setup() { + await super.setup(); + // get the wsEndpoint + const wsEndpoint = await readFile(path.join(DIR, 'wsEndpoint'), 'utf8'); + if (!wsEndpoint) { + throw new Error('wsEndpoint not found'); + } + + // connect to puppeteer + this.global.__BROWSER_GLOBAL__ = await puppeteer.connect({ + browserWSEndpoint: wsEndpoint, + }); + } + + async teardown() { + await super.teardown(); + } + + getVmContext() { + return super.getVmContext(); + } +} + +module.exports = PuppeteerEnvironment; diff --git a/test/utils/image-reporter.js b/test/utils/image-reporter.js new file mode 100644 index 0000000..5051ec0 --- /dev/null +++ b/test/utils/image-reporter.js @@ -0,0 +1,74 @@ +/* eslint-disable */ + +/** + * Reference: https://github.com/americanexpress/jest-image-snapshot/blob/main/examples/image-reporter.js + * + * To enable this image reporter, add it to your `jest.config.js` "reporters" definition: + * "reporters": [ "default", "/image-reporter.js" ] + * + * Image Reporter may not work with jest's --forceExit flag + */ + +const fs = require('fs'); +const AWS = require('aws-sdk/global'); +const S3 = require('aws-sdk/clients/s3'); // this is needed +require('dotenv').config(); + +const UPLOAD_BUCKET = process.env.S3_BUCKET_NAME; + +const s3 = new AWS.S3({ apiVersion: '2006-03-01' }); + +class ImageReporter { + constructor(globalConfig, options) { + this._globalConfig = globalConfig; + this._options = options; + } + + onTestResult(test, testResult, aggregateResults) { + if ( + testResult.numFailingTests && + testResult.failureMessage.match(/different from snapshot/) + ) { + if ( + !process.env.S3_BUCKET_NAME || + !process.env.AWS_SECRET_ACCESS_KEY || + !process.env.AWS_ACCESS_KEY_ID + ) { + console.log( + 'Missing env variables. Skipping upload of image diff files.' + ); + return; + } + + const targetDirectories = [ + './test/__image_snapshots__/', + './test/__image_snapshots__/__diff_output__/', + ]; + targetDirectories.forEach(targetDirectory => { + fs.readdirSync(targetDirectory, { withFileTypes: true }).forEach( + dirent => { + if (!dirent.isFile()) return; + const path = `images/${dirent.name}`; + const params = { + Body: fs.readFileSync(`${targetDirectory}/${dirent.name}`), + Bucket: UPLOAD_BUCKET, + Key: path, + ContentType: 'image/png', + }; + s3.putObject(params, err => { + if (err) { + console.log(err, err.stack); + } else { + console.log( + `Uploaded file to https://${UPLOAD_BUCKET}.s3.amazonaws.com/${path}` + ); + } + }); + } + ); + }); + } + } +} + +module.exports = ImageReporter; diff --git a/test/utils/open-addon.js b/test/utils/open-addon.js new file mode 100644 index 0000000..b2f3251 --- /dev/null +++ b/test/utils/open-addon.js @@ -0,0 +1,74 @@ +const openAddon = async page => { + await page.goto(process.env.SHEET_URL); + await page.waitForTimeout(5000); + + await page.click('a:nth-child(2)'); // click on signin button + await page.waitForTimeout(3000); + await page.type('input[name="identifier"]', process.env.EMAIL); // type email + await page.click('#identifierNext'); // click "next" button + await page.waitForTimeout(3000); + await page.type('input[name="password"]', process.env.PASSWORD); // type pass + await page.waitForTimeout(3000); + await page.click('#passwordNext'); // click "next" button + await page.waitForTimeout(3000); + + if ( + await page.evaluate( + () => + document.querySelector('h1#headingText') && + document.querySelector('h1#headingText').innerText.includes('erify') + ) + ) { + try { + await page.click('div[data-accountrecovery]'); + await page.waitForTimeout(6000); + } catch { + console.log('The "choose account recovery method" page isn\'t shown'); + } + + await page.type( + 'input[name="knowledgePreregisteredEmailResponse"]', + process.env.TEST_RECOVERY_EMAIL + ); // type recovery email + await page.waitForTimeout(6000); + await page.click('button'); // click "next" button + await page.waitForTimeout(5000); + } + + await page.waitForTimeout(25000); // wait long enough for onopen to be called + + // open new addon menubar item + await page.evaluate(() => { + const addOnMenuButton = document.querySelector( + 'div.menu-button.goog-control.goog-inline-block:nth-child(11)' + ); + addOnMenuButton.dispatchEvent( + new MouseEvent('mousedown', { bubbles: true }) + ); + addOnMenuButton.dispatchEvent(new MouseEvent('mouseup', { bubbles: true })); + }); + + await page.waitForTimeout(6000); + + // open "bootstrap" menu item + await page.evaluate(() => { + const bootstrapMenuButton = document.querySelector( + 'div.goog-menu.goog-menu-vertical.apps-menu-hide-mnemonics:last-child > div:nth-child(2) > div' + ); + bootstrapMenuButton.dispatchEvent( + new MouseEvent('mousedown', { bubbles: true }) + ); + bootstrapMenuButton.dispatchEvent( + new MouseEvent('mouseup', { bubbles: true }) + ); + bootstrapMenuButton.dispatchEvent( + new MouseEvent('mousedown', { bubbles: true }) + ); + bootstrapMenuButton.dispatchEvent( + new MouseEvent('mouseup', { bubbles: true }) + ); + }); + await page.waitForTimeout(10000); +}; + +module.exports = { openAddon }; diff --git a/webpack.config.js b/webpack.config.js index 91c1811..fdf36f7 100755 --- a/webpack.config.js +++ b/webpack.config.js @@ -66,6 +66,7 @@ const clientEntrypoints = [ // see "npm run setup:https" script in package.json const keyPath = path.resolve(__dirname, './certs/key.pem'); const certPath = path.resolve(__dirname, './certs/cert.pem'); +const pfxPath = path.resolve(__dirname, './certs/cert.pfx'); // if needed for Windows /********************************* * Declare settings @@ -224,6 +225,16 @@ if (fs.existsSync(keyPath) && fs.existsSync(certPath)) { }; } +// If mkcert -install cannot be used on Windows machines (in pipeline, for example), the +// script at test/generate-cert.ps1 can be used to create a .pfx cert +if (fs.existsSync(pfxPath)) { + // use pfx file if it's found + devServer.https = { + pfx: fs.readFileSync(pfxPath), + passphrase: 'abc123', + }; +} + // webpack settings for the development client wrapper const devClientConfigs = clientEntrypoints.map(clientEntrypoint => { envVars.FILENAME = clientEntrypoint.filename;