From 7e78ed8de3562df5842915d408685cbfca1e9646 Mon Sep 17 00:00:00 2001 From: Kyriakos Barbounakis Date: Mon, 23 May 2022 08:17:44 +0000 Subject: [PATCH 1/3] add extra tests --- .eslintrc | 1 + .gitpod.yml | 8 + package-lock.json | 6829 +++++++++++++++++++++++++++++- package.json | 5 +- spec/ArithmeticFunctions.spec.js | 122 + spec/DateFunctions.spec.js | 110 + spec/MSSqlAdapter.spec.js | 290 +- spec/MSSqlFormatter.spec.js | 71 +- spec/Promise.sequence.spec.js | 53 - spec/StringFunctions.spec.js | 126 + spec/TestApplication.js | 185 +- spec/config/app.json | 29 + spec/db/local.db | Bin 0 -> 946176 bytes spec/helpers/module-alias.js | 4 - spec/helpers/reporter.js | 3 +- spec/support/jasmine.json | 10 +- src/MSSqlAdapter.d.ts | 71 +- src/MSSqlAdapter.js | 30 + src/MSSqlFormatter.d.ts | 7 - 19 files changed, 7634 insertions(+), 320 deletions(-) create mode 100644 .gitpod.yml create mode 100644 spec/ArithmeticFunctions.spec.js create mode 100644 spec/DateFunctions.spec.js delete mode 100644 spec/Promise.sequence.spec.js create mode 100644 spec/StringFunctions.spec.js create mode 100644 spec/config/app.json create mode 100644 spec/db/local.db delete mode 100644 spec/helpers/module-alias.js diff --git a/.eslintrc b/.eslintrc index 1e7268f..2874b03 100644 --- a/.eslintrc +++ b/.eslintrc @@ -13,6 +13,7 @@ "beforeEach": false, "beforeAll": false, "after": false, + "afterEach": false, "afterAll": false, "expect": false, "expectAsync": false, diff --git a/.gitpod.yml b/.gitpod.yml new file mode 100644 index 0000000..9a09b21 --- /dev/null +++ b/.gitpod.yml @@ -0,0 +1,8 @@ +# This configuration file was automatically generated by Gitpod. +# Please adjust to your needs (see https://www.gitpod.io/docs/config-gitpod-file) +# and commit this file to your remote git repository to share the goodness with others. + +tasks: + - init: npm install && npm run build + + diff --git a/package-lock.json b/package-lock.json index d8adbaf..6419ae5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,8 +1,5918 @@ { "name": "@themost/mssql", "version": "2.6.1", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "@themost/mssql", + "version": "2.6.1", + "license": "BSD-3-Clause", + "dependencies": { + "async": "^3.2.3", + "mssql": "^8.1.0" + }, + "devDependencies": { + "@babel/core": "^7.17.9", + "@babel/eslint-parser": "^7.17.0", + "@babel/preset-env": "^7.16.11", + "@babel/register": "^7.17.7", + "@rollup/plugin-babel": "^5.3.1", + "@rollup/plugin-commonjs": "^22.0.0", + "@themost/data": "^2.6.32", + "@themost/sqlite": "^2.6.4", + "@themost/xml": "^2.5.2", + "@types/async": "^3.2.12", + "@types/jasmine": "^3.5.14", + "@types/mssql": "^7.1.5", + "dotenv": "^8.2.0", + "eslint": "^8.14.0", + "jasmine": "^4.1.0", + "jasmine-spec-reporter": "^7.0.0", + "module-alias": "^2.2.2", + "rimraf": "^3.0.2", + "rollup": "^2.71.1", + "rollup-plugin-dts": "^4.2.1", + "typescript": "^4.6.4" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "@themost/common": "^2", + "@themost/query": "^2" + } + }, + "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/@azure/abort-controller": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.0.4.tgz", + "integrity": "sha512-lNUmDRVGpanCsiUN3NWxFTdwmdFI53xwhkTFfHDGTYk46ca7Ind3nanJc+U6Zj9Tv+9nTCWRBscWEW1DyKOpTw==", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@azure/core-asynciterator-polyfill": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.2.tgz", + "integrity": "sha512-3rkP4LnnlWawl0LZptJOdXNrT/fHp2eQMadoasa6afspXdpGrtPZuAQc2PD0cpgyuoXtUWyC3tv7xfntjGS5Dw==", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-auth": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.3.2.tgz", + "integrity": "sha512-7CU6DmCHIZp5ZPiZ9r3J17lTKMmYsm/zGvNkjArQwPkrLlZ1TZ+EUYfGgh2X31OLMVAQCTJZW4cXHJi02EbJnA==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-client": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.5.0.tgz", + "integrity": "sha512-YNk8i9LT6YcFdFO+RRU0E4Ef+A8Y5lhXo6lz61rwbG8Uo7kSqh0YqK04OexiilM43xd6n3Y9yBhLnb1NFNI9dA==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-asynciterator-polyfill": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-rest-pipeline": "^1.5.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-http": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-2.2.4.tgz", + "integrity": "sha512-QmmJmexXKtPyc3/rsZR/YTLDvMatzbzAypJmLzvlfxgz/SkgnqV/D4f6F2LsK6tBj1qhyp8BoXiOebiej0zz3A==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-asynciterator-polyfill": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "@types/node-fetch": "^2.5.0", + "@types/tunnel": "^0.0.3", + "form-data": "^4.0.0", + "node-fetch": "^2.6.7", + "process": "^0.11.10", + "tough-cookie": "^4.0.0", + "tslib": "^2.2.0", + "tunnel": "^0.0.6", + "uuid": "^8.3.0", + "xml2js": "^0.4.19" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-lro": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.4.tgz", + "integrity": "sha512-e1I2v2CZM0mQo8+RSix0x091Av493e4bnT22ds2fcQGslTHzM2oTbswkB65nP4iEpCxBrFxOSDPKExmTmjCVtQ==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-paging": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.2.1.tgz", + "integrity": "sha512-UtH5iMlYsvg+nQYIl4UHlvvSrsBjOlRF4fs0j7mxd3rWdAStrKYrh2durOpHs5C9yZbVhsVDaisoyaf/lL1EVA==", + "dependencies": { + "@azure/core-asynciterator-polyfill": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-rest-pipeline": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.8.0.tgz", + "integrity": "sha512-o8eZr96erQpiq8EZhZU/SyN6ncOfZ6bexwN2nMm9WpDmZGvaq907kopADt8XvNhbEF7kRA1l901Pg8mXjWp3UQ==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "form-data": "^4.0.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "tslib": "^2.2.0", + "uuid": "^8.3.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "dependencies": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-util": { + "version": "1.0.0-beta.1", + "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.0.0-beta.1.tgz", + "integrity": "sha512-pS6cup979/qyuyNP9chIybK2qVkJ3MarbY/bx3JcGKE6An6dRweLnsfJfU2ydqUI/B51Rjnn59ajHIhCUTwWZw==", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@azure/identity": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-2.0.4.tgz", + "integrity": "sha512-ZgFubAsmo7dji63NLPaot6O7pmDfceAUPY57uphSCr0hmRj+Cakqb4SUz5SohCHFtscrhcmejRU903Fowz6iXg==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-client": "^1.4.0", + "@azure/core-rest-pipeline": "^1.1.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/core-util": "^1.0.0-beta.1", + "@azure/logger": "^1.0.0", + "@azure/msal-browser": "^2.16.0", + "@azure/msal-common": "^4.5.1", + "@azure/msal-node": "^1.3.0", + "events": "^3.0.0", + "jws": "^4.0.0", + "open": "^8.0.0", + "stoppable": "^1.1.0", + "tslib": "^2.2.0", + "uuid": "^8.3.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/keyvault-keys": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@azure/keyvault-keys/-/keyvault-keys-4.4.0.tgz", + "integrity": "sha512-W9sPZebXYa3aar7BGIA+fAsq/sy1nf2TZAETbkv7DRawzVLrWv8QoVVceqNHjy3cigT4HNxXjaPYCI49ez5CUA==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-http": "^2.0.0", + "@azure/core-lro": "^2.2.0", + "@azure/core-paging": "^1.1.1", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/logger": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.3.tgz", + "integrity": "sha512-aK4s3Xxjrx3daZr3VylxejK3vG5ExXck5WOHDJ8in/k9AqlfIyFMMT1uG7u8mNjX+QRILTIn0/Xgschfh/dQ9g==", + "dependencies": { + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/msal-browser": { + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.23.0.tgz", + "integrity": "sha512-qxyWmsP/pf+xJFEhMgiJ0r1v6TjF+x8iMWYU5R63Lb/fjQfKalaNX9f5D6GbJYJS5s9OF3abtdGtB/Lxea15mQ==", + "dependencies": { + "@azure/msal-common": "^6.2.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@azure/msal-browser/node_modules/@azure/msal-common": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-6.2.0.tgz", + "integrity": "sha512-SU2/vfbKn1WvtKM8tsBKZAbmRJvO8E3H773ZT0GGKuO9rwLfxP5qOzTHV5crCEm8DgvL/IppmWh2lsUFieDi1A==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@azure/msal-common": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-4.5.1.tgz", + "integrity": "sha512-/i5dXM+QAtO+6atYd5oHGBAx48EGSISkXNXViheliOQe+SIFMDo3gSq3lL54W0suOSAsVPws3XnTaIHlla0PIQ==", + "dependencies": { + "debug": "^4.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@azure/msal-node": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.8.0.tgz", + "integrity": "sha512-rA5KzhvNuNef6Bzap8Sm/LbuesvA1yY2dj/W+QZuKMtT5nboZ4n4w8LRjwMMxucvYfizybPbLGTFpbq2IJtOfQ==", + "dependencies": { + "@azure/msal-common": "^6.2.0", + "axios": "^0.21.4", + "https-proxy-agent": "^5.0.0", + "jsonwebtoken": "^8.5.1", + "uuid": "^8.3.0" + }, + "engines": { + "node": "10 || 12 || 14 || 16" + } + }, + "node_modules/@azure/msal-node/node_modules/@azure/msal-common": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-6.2.0.tgz", + "integrity": "sha512-SU2/vfbKn1WvtKM8tsBKZAbmRJvO8E3H773ZT0GGKuO9rwLfxP5qOzTHV5crCEm8DgvL/IppmWh2lsUFieDi1A==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame": { + "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.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", + "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.9.tgz", + "integrity": "sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.9", + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helpers": "^7.17.9", + "@babel/parser": "^7.17.9", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.9", + "@babel/types": "^7.17.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "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/eslint-parser": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.17.0.tgz", + "integrity": "sha512-PUEJ7ZBXbRkbq3qqM/jZ2nIuakUBqCYc7Qf52Lj7dlZ6zERnqisdHioL0l4wwQZnmskMeasqUNzLBFKs3nylXA==", + "dev": true, + "dependencies": { + "eslint-scope": "^5.1.1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || >=14.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.11.0", + "eslint": "^7.5.0 || ^8.0.0" + } + }, + "node_modules/@babel/eslint-parser/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@babel/eslint-parser/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/@babel/eslint-parser/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.17.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", + "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.17.0", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", + "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", + "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", + "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@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.17.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.9.tgz", + "integrity": "sha512-kUjip3gruz6AJKOq5i3nC6CoCEEF/oHH3cp6tOZhB+IyyyPyW0g1Gfsxn3mkk6S08pIA2y8GQh609v9G/5sHVQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-member-expression-to-functions": "^7.17.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz", + "integrity": "sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "regexpu-core": "^5.0.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", + "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.13.0", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.13.0", + "@babel/traverse": "^7.13.0", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/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-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/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", + "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", + "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.16.7", + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "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.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", + "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "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.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", + "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-simple-access": "^7.17.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.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", + "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "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-remap-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", + "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-wrap-function": "^7.16.8", + "@babel/types": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz", + "integrity": "sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-member-expression-to-functions": "^7.16.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/traverse": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", + "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", + "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "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.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "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.16.8", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", + "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.16.7", + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.16.8", + "@babel/types": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz", + "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==", + "dev": true, + "dependencies": { + "@babel/template": "^7.16.7", + "@babel/traverse": "^7.17.9", + "@babel/types": "^7.17.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", + "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/@babel/parser": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", + "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz", + "integrity": "sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz", + "integrity": "sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz", + "integrity": "sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-remap-async-to-generator": "^7.16.8", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz", + "integrity": "sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.17.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz", + "integrity": "sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.17.6", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", + "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz", + "integrity": "sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz", + "integrity": "sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz", + "integrity": "sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz", + "integrity": "sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", + "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.17.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz", + "integrity": "sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.0", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", + "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz", + "integrity": "sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.16.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz", + "integrity": "sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.16.10", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz", + "integrity": "sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-create-class-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz", + "integrity": "sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "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", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz", + "integrity": "sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==", + "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-async-to-generator": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz", + "integrity": "sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-remap-async-to-generator": "^7.16.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", + "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "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-block-scoping": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz", + "integrity": "sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==", + "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-classes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz", + "integrity": "sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.7", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-optimise-call-expression": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz", + "integrity": "sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==", + "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-destructuring": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz", + "integrity": "sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==", + "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-dotall-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", + "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz", + "integrity": "sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==", + "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-exponentiation-operator": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", + "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz", + "integrity": "sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==", + "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-function-name": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", + "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-function-name": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz", + "integrity": "sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==", + "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-member-expression-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", + "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "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-modules-amd": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz", + "integrity": "sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.9.tgz", + "integrity": "sha512-2TBFd/r2I6VlYn0YRTz2JdazS+FoUuQ2rIFHoAxtyP/0G3D82SBLaRq9rnUkpqlLg03Byfl/+M32mpxjO6KaPw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-simple-access": "^7.17.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.17.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz", + "integrity": "sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-module-transforms": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-validator-identifier": "^7.16.7", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz", + "integrity": "sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz", + "integrity": "sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz", + "integrity": "sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==", + "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-object-super": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", + "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-replace-supers": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz", + "integrity": "sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==", + "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-property-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", + "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "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-regenerator": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.17.9.tgz", + "integrity": "sha512-Lc2TfbxR1HOyn/c6b4Y/b6NHoTb67n/IoWLxTu4kC7h4KQnWlhCq2S8Tx0t2SVvv5Uu87Hs+6JEJ5kt2tYGylQ==", + "dev": true, + "dependencies": { + "regenerator-transform": "^0.15.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz", + "integrity": "sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==", + "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-shorthand-properties": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", + "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "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-spread": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz", + "integrity": "sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", + "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", + "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-template-literals": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz", + "integrity": "sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==", + "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-typeof-symbol": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz", + "integrity": "sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==", + "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-unicode-escapes": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", + "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", + "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-unicode-regex": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", + "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.16.11", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.11.tgz", + "integrity": "sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.16.8", + "@babel/helper-compilation-targets": "^7.16.7", + "@babel/helper-plugin-utils": "^7.16.7", + "@babel/helper-validator-option": "^7.16.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.16.7", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.16.7", + "@babel/plugin-proposal-async-generator-functions": "^7.16.8", + "@babel/plugin-proposal-class-properties": "^7.16.7", + "@babel/plugin-proposal-class-static-block": "^7.16.7", + "@babel/plugin-proposal-dynamic-import": "^7.16.7", + "@babel/plugin-proposal-export-namespace-from": "^7.16.7", + "@babel/plugin-proposal-json-strings": "^7.16.7", + "@babel/plugin-proposal-logical-assignment-operators": "^7.16.7", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7", + "@babel/plugin-proposal-numeric-separator": "^7.16.7", + "@babel/plugin-proposal-object-rest-spread": "^7.16.7", + "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", + "@babel/plugin-proposal-optional-chaining": "^7.16.7", + "@babel/plugin-proposal-private-methods": "^7.16.11", + "@babel/plugin-proposal-private-property-in-object": "^7.16.7", + "@babel/plugin-proposal-unicode-property-regex": "^7.16.7", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.16.7", + "@babel/plugin-transform-async-to-generator": "^7.16.8", + "@babel/plugin-transform-block-scoped-functions": "^7.16.7", + "@babel/plugin-transform-block-scoping": "^7.16.7", + "@babel/plugin-transform-classes": "^7.16.7", + "@babel/plugin-transform-computed-properties": "^7.16.7", + "@babel/plugin-transform-destructuring": "^7.16.7", + "@babel/plugin-transform-dotall-regex": "^7.16.7", + "@babel/plugin-transform-duplicate-keys": "^7.16.7", + "@babel/plugin-transform-exponentiation-operator": "^7.16.7", + "@babel/plugin-transform-for-of": "^7.16.7", + "@babel/plugin-transform-function-name": "^7.16.7", + "@babel/plugin-transform-literals": "^7.16.7", + "@babel/plugin-transform-member-expression-literals": "^7.16.7", + "@babel/plugin-transform-modules-amd": "^7.16.7", + "@babel/plugin-transform-modules-commonjs": "^7.16.8", + "@babel/plugin-transform-modules-systemjs": "^7.16.7", + "@babel/plugin-transform-modules-umd": "^7.16.7", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.16.8", + "@babel/plugin-transform-new-target": "^7.16.7", + "@babel/plugin-transform-object-super": "^7.16.7", + "@babel/plugin-transform-parameters": "^7.16.7", + "@babel/plugin-transform-property-literals": "^7.16.7", + "@babel/plugin-transform-regenerator": "^7.16.7", + "@babel/plugin-transform-reserved-words": "^7.16.7", + "@babel/plugin-transform-shorthand-properties": "^7.16.7", + "@babel/plugin-transform-spread": "^7.16.7", + "@babel/plugin-transform-sticky-regex": "^7.16.7", + "@babel/plugin-transform-template-literals": "^7.16.7", + "@babel/plugin-transform-typeof-symbol": "^7.16.7", + "@babel/plugin-transform-unicode-escapes": "^7.16.7", + "@babel/plugin-transform-unicode-regex": "^7.16.7", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.16.8", + "babel-plugin-polyfill-corejs2": "^0.3.0", + "babel-plugin-polyfill-corejs3": "^0.5.0", + "babel-plugin-polyfill-regenerator": "^0.3.0", + "core-js-compat": "^3.20.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/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/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/register": { + "version": "7.17.7", + "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.17.7.tgz", + "integrity": "sha512-fg56SwvXRifootQEDQAu1mKdjh5uthPzdO0N6t358FktfL4XjAVXuH58ULoiW8mesxiOgNIrxiImqEwv0+hRRA==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "find-cache-dir": "^2.0.0", + "make-dir": "^2.1.0", + "pirates": "^4.0.5", + "source-map-support": "^0.5.16" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.9.tgz", + "integrity": "sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "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.16.7", + "@babel/parser": "^7.16.7", + "@babel/types": "^7.16.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.17.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", + "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "@babel/generator": "^7.17.9", + "@babel/helper-environment-visitor": "^7.16.7", + "@babel/helper-function-name": "^7.17.9", + "@babel/helper-hoist-variables": "^7.16.7", + "@babel/helper-split-export-declaration": "^7.16.7", + "@babel/parser": "^7.17.9", + "@babel/types": "^7.17.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.17.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", + "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.16.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.2.tgz", + "integrity": "sha512-lTVWHs7O2hjBFZunXTZYnYqtB9GakA1lnxIf+gKq2nY5gxkkNi/lQvveW6t8gFdOHTg6nG50Xs95PrLqVpcaLg==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.3.1", + "globals": "^13.9.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/espree": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", + "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", + "dev": true, + "dependencies": { + "acorn": "^8.7.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/@eslint/eslintrc/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true, + "optional": true + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.9.5", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", + "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz", + "integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==", + "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.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@js-joda/core": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@js-joda/core/-/core-4.3.1.tgz", + "integrity": "sha512-oeaetlodcqVsiZDxnEcqsbs+sXBkASxua0mXs5OXuPQXz3/wdPTMlxwfQ4z2HKcOik3S9voW3QJkp/KLWDhvRQ==" + }, + "node_modules/@mapbox/node-pre-gyp": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", + "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", + "dev": true, + "dependencies": { + "detect-libc": "^2.0.0", + "https-proxy-agent": "^5.0.0", + "make-dir": "^3.1.0", + "node-fetch": "^2.6.7", + "nopt": "^5.0.0", + "npmlog": "^5.0.1", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.11" + }, + "bin": { + "node-pre-gyp": "bin/node-pre-gyp" + } + }, + "node_modules/@mapbox/node-pre-gyp/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/@mapbox/node-pre-gyp/node_modules/make-dir/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/@mapbox/node-pre-gyp/node_modules/semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "dev": true, + "optional": true, + "dependencies": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + } + }, + "node_modules/@npmcli/fs/node_modules/semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "optional": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "dev": true, + "optional": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@opentelemetry/api": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.4.tgz", + "integrity": "sha512-BuJuXRSJNQ3QoKA6GWWDyuLpOUck+9hAXNMCnrloc1aWVoy6Xq6t9PUV08aBZ4Lutqq2LEHM486bpZqoViScog==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@rollup/plugin-babel": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", + "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.10.4", + "@rollup/pluginutils": "^3.1.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "@types/babel__core": "^7.1.9", + "rollup": "^1.20.0||^2.0.0" + }, + "peerDependenciesMeta": { + "@types/babel__core": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "22.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.0.tgz", + "integrity": "sha512-Ktvf2j+bAO+30awhbYoCaXpBcyPmJbaEUYClQns/+6SNCYFURbvBiNbWgHITEsIgDDWCDUclWRKEuf8cwZCFoQ==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "commondir": "^1.0.1", + "estree-walker": "^2.0.1", + "glob": "^7.1.6", + "is-reference": "^1.2.1", + "magic-string": "^0.25.7", + "resolve": "^1.17.0" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0" + } + }, + "node_modules/@rollup/plugin-commonjs/node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, + "node_modules/@rollup/plugin-commonjs/node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@tediousjs/connection-string": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tediousjs/connection-string/-/connection-string-0.3.0.tgz", + "integrity": "sha512-d/keJiNKfpHo+GmSB8QcsAwBx8h+V1UbdozA5TD+eSLXprNY53JAYub47J9evsSKWDdNG5uVj0FiMozLKuzowQ==" + }, + "node_modules/@themost/common": { + "version": "2.5.12", + "resolved": "https://registry.npmjs.org/@themost/common/-/common-2.5.12.tgz", + "integrity": "sha512-oUUuXFUuGq0MXztUzApkAx7YObqQ133YAN347yVW38o1/RXMIBvRUzFBC+/SZLlunE5vve4jvSppYAdxQQYlZA==", + "peer": true, + "dependencies": { + "async": "^2.6.4", + "blueimp-md5": "^2.7.0", + "es6-promise": "^4.2.8", + "events": "^3.2.0", + "hashmap": "^2.3.0", + "lodash": "^4.17.21", + "sprintf-js": "^1.1.2", + "symbol": "^0.3.1" + } + }, + "node_modules/@themost/common/node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "peer": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/@themost/data": { + "version": "2.6.32", + "resolved": "https://registry.npmjs.org/@themost/data/-/data-2.6.32.tgz", + "integrity": "sha512-epNH0cc7O2v+vEQM/zyb7E6jnUMFaVODuhSVs1he3ybNnxGYI/v8upAMml/8LSqhHZguiLkvqjAQS7QmBsD1AA==", + "dev": true, + "dependencies": { + "async": "^2.6.4", + "lodash": "^4.17.21", + "moment": "^2.29.2", + "node-cache": "^1.1.0", + "pluralize": "^7.0.0", + "q": "^1.4.1", + "sprintf-js": "^1.1.2", + "symbol": "^0.3.1" + }, + "engines": { + "node": ">=8.17.0" + }, + "peerDependencies": { + "@themost/common": "^2.5.6", + "@themost/query": "^2.5.8", + "@themost/xml": "^2.5.2" + } + }, + "node_modules/@themost/data/node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/@themost/query": { + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@themost/query/-/query-2.5.9.tgz", + "integrity": "sha512-UuW/dZC6JE/FkJgrcYFMtsrkUcEvYxf52QQ8jmeb6IgNRq9TP7sD8nSCpqNC4/ljeK37jAS6+JpIC82QBT3I0A==", + "peer": true, + "dependencies": { + "async": "^2.6.4", + "esprima": "^4.0.0", + "lodash": "^4.17.15", + "sprintf": "^0.1.5", + "symbol": "^0.3.1" + }, + "peerDependencies": { + "@themost/common": "^2.5.0" + } + }, + "node_modules/@themost/query/node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "peer": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/@themost/sqlite": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/@themost/sqlite/-/sqlite-2.6.4.tgz", + "integrity": "sha512-krrQ6/YgVi5cj69/egCvukkFzx795lOxekmQ7eVjn4KIwq8ma5a1MMBC2jTS8HFnkX6AmdU9burDnWSOa7DyfA==", + "dev": true, + "dependencies": { + "async": "^2.6.4", + "package-lock-only": "^0.0.4", + "sqlite3": "^5.0.7" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "@themost/common": ">=2.5.0 < 3", + "@themost/query": ">=2.5.0 < 3" + } + }, + "node_modules/@themost/sqlite/node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/@themost/xml": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@themost/xml/-/xml-2.5.2.tgz", + "integrity": "sha512-J3qXDJ/Rey5Tri8Swb4ghF7TRaoQ4NXjCsXiyf1GKNAhN4nn4XtfMwIhsrN9LI5z9TUZOut6LOK9PMWDVWRrpA==", + "dev": true + }, + "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==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/async": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.12.tgz", + "integrity": "sha512-4i4w4tfNDo73BOjk0qHcB2YJ8A2SjITCrU4BTsgdJFTsVr6atPDXa0T9r0QZTrX3axtWwkqpZqF4B3gR0TqBGw==", + "dev": true + }, + "node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true + }, + "node_modules/@types/jasmine": { + "version": "3.5.14", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.14.tgz", + "integrity": "sha512-Fkgk536sHPqcOtd+Ow+WiUNuk0TSo/BntKkF8wSvcd6M2FvPjeXcUE6Oz/bwDZiUZEaXLslAgw00Q94Pnx6T4w==", + "dev": true + }, + "node_modules/@types/mssql": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@types/mssql/-/mssql-7.1.5.tgz", + "integrity": "sha512-+I/4wNTUlZVxWSDo8BBo3Hw7aAKvmH+0JiovF3aW7NqjOvZZNa1xeqyjp7BBiktZx1wiV/ZKAxi21viAR53vjQ==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/tedious": "*", + "tarn": "^3.0.1" + } + }, + "node_modules/@types/node": { + "version": "17.0.27", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.27.tgz", + "integrity": "sha512-4/Ke7bbWOasuT3kceBZFGakP1dYN2XFd8v2l9bqF2LNWrmeU07JLpp56aEeG6+Q3olqO5TvXpW0yaiYnZJ5CXg==" + }, + "node_modules/@types/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==", + "dependencies": { + "@types/node": "*", + "form-data": "^3.0.0" + } + }, + "node_modules/@types/node-fetch/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==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/tedious": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@types/tedious/-/tedious-4.0.7.tgz", + "integrity": "sha512-FC88ySU9W4LN6K7ZjPprp2qKyJ4tl3IaWmbGeZP98LXnTntXnV1J/NUeBAMKEqnfOQFSSXIJ8ls4o+ucZIvY9w==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/tunnel": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/@types/tunnel/-/tunnel-0.0.3.tgz", + "integrity": "sha512-sOUTGn6h1SfQ+gbgqC364jLFBw2lnFqkgF3q0WovEHRLMrVD1sd5aufqi/aJObLekJO+Aq5z646U4Oxy6shXMA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", + "dev": true, + "optional": true, + "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "optional": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/async": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", + "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", + "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.13.11", + "@babel/helper-define-polyfill-provider": "^0.3.1", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/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-plugin-polyfill-corejs3": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", + "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.1", + "core-js-compat": "^3.21.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", + "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/bl": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-5.0.0.tgz", + "integrity": "sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==", + "dependencies": { + "buffer": "^6.0.3", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/blueimp-md5": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", + "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", + "peer": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/browserslist": { + "version": "4.20.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz", + "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001332", + "electron-to-chromium": "^1.4.118", + "escalade": "^3.1.1", + "node-releases": "^2.0.3", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "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.2.1" + } + }, + "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", + "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=" + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "optional": true, + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001332", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz", + "integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "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==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz", + "integrity": "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==", + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/convert-source-map/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "node_modules/core-js-compat": { + "version": "3.22.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.2.tgz", + "integrity": "sha512-Fns9lU06ZJ07pdfmPMu7OnkIKGPKDzXKIiuGlSvHHapwqMUF2QnnsWwtueFZtSyZEilP0o6iUeHQwpn7LxtLUw==", + "dev": true, + "dependencies": { + "browserslist": "^4.20.2", + "semver": "7.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dev": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.122", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.122.tgz", + "integrity": "sha512-VuLNxTIt8sBWIT2sd186xPd18Y8KcK8myLd9nMdSJOYZwFUxxbLVmX/T1VX+qqaytRlrYYQv39myxJdXtu7Ysw==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true, + "optional": true + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "peer": true + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.14.0.tgz", + "integrity": "sha512-3/CE4aJX7LNEiE3i6FeodHmI/38GZtWCsAtsymScmzYapx8q1nVVb+eLcLSzATmCPXw5pT4TqVs1E0OmxAd9tw==", + "dev": true, + "dependencies": { + "@eslint/eslintrc": "^1.2.2", + "@humanwhocodes/config-array": "^0.9.2", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^6.0.1", + "globals": "^13.6.0", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "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/eslint-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/eslint/node_modules/acorn": { + "version": "8.7.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", + "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/eslint/node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/eslint/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/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/eslint/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/eslint/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/eslint/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/eslint/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/eslint/node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/espree": { + "version": "9.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", + "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", + "dev": true, + "dependencies": { + "acorn": "^8.7.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/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/eslint/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/eslint/node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/eslint/node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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/eslint/node_modules/ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/eslint/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/eslint/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/eslint/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/eslint/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/eslint/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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/eslint/node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/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/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^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", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/flatted": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", + "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/fsevents": { + "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/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "node_modules/gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "dev": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true, + "optional": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "node_modules/hashmap": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/hashmap/-/hashmap-2.4.0.tgz", + "integrity": "sha512-Ngj48lhnxJdnBAEVbubKBJuN1elfVLZJs94ZixRi98X3GCU4v6pgj9qRkHt6H8WaVJ69Wv0r1GhtS7hvF9zCgg==", + "peer": true, + "engines": { + "node": "*" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true, + "optional": true + }, + "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==", + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "optional": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/import-fresh": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", + "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true, + "optional": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "dev": true, + "optional": true + }, + "node_modules/is-core-module": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", + "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", + "dev": true, + "optional": true + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dev": true, + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jasmine": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-4.1.0.tgz", + "integrity": "sha512-4VhjbUgwfNS9CBnUMoSWr9tdNgOoOhNIjAD8YRxTn+PmOf4qTSC0Uqhk66dWGnz2vJxtNIU0uBjiwnsp4Ud9VA==", + "dev": true, + "dependencies": { + "glob": "^7.1.6", + "jasmine-core": "^4.1.0" + }, + "bin": { + "jasmine": "bin/jasmine.js" + } + }, + "node_modules/jasmine-core": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.1.0.tgz", + "integrity": "sha512-8E8BiffCL8sBwK1zU9cbavLe8xpJAgOduSJ6N8PJVv8VosQ/nxVTuXj2kUeHxTlZBVvh24G19ga7xdiaxlceKg==", + "dev": true + }, + "node_modules/jasmine-spec-reporter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-7.0.0.tgz", + "integrity": "sha512-OtC7JRasiTcjsaCBPtMO0Tl8glCejM4J4/dNuOJdA8lBjz4PmWjYQ6pzb0uzpBNAWJMDudYuj9OdXJWqM2QTJg==", + "dev": true, + "dependencies": { + "colors": "1.4.0" + } + }, + "node_modules/jsbi": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/jsbi/-/jsbi-3.2.5.tgz", + "integrity": "sha512-aBE4n43IPvjaddScbvWRA2YlTzKEynHzu7MqOyTipdHucf/VxS63ViCjxYRg86M8Rxwbt/GfzHl1kKERkt45fQ==" + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonwebtoken": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", + "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", + "dependencies": { + "jws": "^3.2.2", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=4", + "npm": ">=1.4.28" + } + }, + "node_modules/jsonwebtoken/node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jsonwebtoken/node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "dependencies": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jwa": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz", + "integrity": "sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==", + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", + "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==", + "dependencies": { + "jwa": "^2.0.0", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=" + }, + "node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" + }, + "node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=" + }, + "node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" + }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" + }, + "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/magic-string": { + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.1.tgz", + "integrity": "sha512-ndThHmvgtieXe8J/VGPjG+Apu7v7ItcD5mhEIvOscWjPF/ccOiLxHaSuCAS2G+3x4GKsAbT8u7zdyamupui8Tg==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/make-fetch-happen": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "dev": true, + "optional": true, + "dependencies": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minipass": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "optionalDependencies": { + "encoding": "^0.1.12" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/module-alias": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/module-alias/-/module-alias-2.2.2.tgz", + "integrity": "sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q==", + "dev": true + }, + "node_modules/moment": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz", + "integrity": "sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/mssql": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/mssql/-/mssql-8.1.0.tgz", + "integrity": "sha512-S7j4MoanTCLM09I+wMI9thTS2342mgxCpOQ9kpnFiG3P1NStuQMhPILLOgOt6hwMa/ctfTUKl7eJpB5XGPoe6A==", + "dependencies": { + "@tediousjs/connection-string": "^0.3.0", + "commander": "^9.1.0", + "debug": "^4.3.3", + "rfdc": "^1.3.0", + "tarn": "^3.0.2", + "tedious": "^14.0.0" + }, + "bin": { + "mssql": "bin/mssql" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/native-duplexpair": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/native-duplexpair/-/native-duplexpair-1.0.0.tgz", + "integrity": "sha1-eJkHjmS/PIo9cyYBs9QP8F21j6A=" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-abort-controller": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.0.1.tgz", + "integrity": "sha512-/ujIVxthRs+7q6hsdjHMaj8hRG9NuWmwrz+JdRwZ14jdFoKSkm+vDsCbF9PLpnSqjaWQJuTmVtcWHNLr+vrOFw==" + }, + "node_modules/node-addon-api": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", + "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==", + "dev": true + }, + "node_modules/node-cache": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/node-cache/-/node-cache-1.1.0.tgz", + "integrity": "sha1-GGNlAy0jlb3/c0BBePsryJgaznA=", + "dev": true, + "dependencies": { + "underscore": "*" + }, + "engines": { + "node": ">= 0.4.6" + } + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "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-gyp": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz", + "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", + "dev": true, + "optional": true, + "dependencies": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/node-gyp/node_modules/are-we-there-yet": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz", + "integrity": "sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw==", + "dev": true, + "optional": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/node-gyp/node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dev": true, + "optional": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "optional": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/node-gyp/node_modules/semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "optional": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-releases": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", + "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", + "dev": true + }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "optional": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-lock-only": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/package-lock-only/-/package-lock-only-0.0.4.tgz", + "integrity": "sha512-fV1YHeTMWH5LKmdVqfWskm2/SG0iF2IrxJn3ziaPVx9CnpecGJzt8xXtLV+CYINENZwPFMtbxO5qupz0asNz1A==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "chalk": "^2.4.1" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "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/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "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.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/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/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true, + "optional": true + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "optional": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "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==" + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true, + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "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==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", + "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "dev": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", + "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexpu-core": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", + "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.0.1", + "regjsgen": "^0.6.0", + "regjsparser": "^0.8.2", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", + "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", + "dev": true + }, + "node_modules/regjsparser": { + "version": "0.8.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", + "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/resolve": { + "version": "1.22.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", + "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.8.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true, + "optional": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==" + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "2.71.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.71.1.tgz", + "integrity": "sha512-lMZk3XfUBGjrrZQpvPSoXcZSfKcJ2Bgn+Z0L1MoW2V8Wh7BVM+LOBJTPo16yul2MwL59cXedzW1ruq3rCjSRgw==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-dts": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-4.2.1.tgz", + "integrity": "sha512-eaxQZNUJ5iQcxNGlpJ1CUgG4OSVqWjDZ3nNSWBIoGrpcote2aNphSe1RJOaSYkb8dwn3o+rYm1vvld/5z3EGSQ==", + "dev": true, + "dependencies": { + "magic-string": "^0.26.1" + }, + "engines": { + "node": ">=v12.22.11" + }, + "funding": { + "url": "https://github.com/sponsors/Swatinem" + }, + "optionalDependencies": { + "@babel/code-frame": "^7.16.7" + }, + "peerDependencies": { + "rollup": "^2.70", + "typescript": "^4.6" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "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/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", + "dev": true, + "optional": true, + "dependencies": { + "ip": "^1.1.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.0.tgz", + "integrity": "sha512-wWqJhjb32Q6GsrUqzuFkukxb/zzide5quXYcMVpIjxalDBBYy2nqKCFQ/9+Ie4dvOYSQdOk3hUlZSdzZOd3zMQ==", + "dev": true, + "optional": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/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/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, + "node_modules/sprintf": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/sprintf/-/sprintf-0.1.5.tgz", + "integrity": "sha1-j4PjmpMXwaUCy324BQ5Rxnn27c8=", + "deprecated": "The sprintf package is deprecated in favor of sprintf-js.", + "peer": true, + "engines": { + "node": ">=0.2.4" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + }, + "node_modules/sqlite3": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.0.8.tgz", + "integrity": "sha512-f2ACsbSyb2D1qFFcqIXPfFscLtPVOWJr5GmUzYxf4W+0qelu5MWrR+FAQE1d5IUArEltBrzSDxDORG8P/IkqyQ==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.0", + "node-addon-api": "^4.2.0", + "tar": "^6.1.11" + }, + "optionalDependencies": { + "node-gyp": "8.x" + }, + "peerDependencies": { + "node-gyp": "8.x" + }, + "peerDependenciesMeta": { + "node-gyp": { + "optional": true + } + } + }, + "node_modules/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/stoppable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", + "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==", + "engines": { + "node": ">=4", + "npm": ">=6" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/symbol/-/symbol-0.3.1.tgz", + "integrity": "sha1-tvmpANSWpX8CQI8iGYwQndoGMEE=" + }, + "node_modules/tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/tarn": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tarn/-/tarn-3.0.2.tgz", + "integrity": "sha512-51LAVKUSZSVfI05vjPESNc5vwqqZpbXCsU+/+wxlOrUjk2SnFTt97v9ZgQrD4YmxYW1Px6w2KjaDitCfkvgxMQ==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/tedious": { + "version": "14.4.0", + "resolved": "https://registry.npmjs.org/tedious/-/tedious-14.4.0.tgz", + "integrity": "sha512-vZQzqg3o7S1CddD1JxwxC+/Crq4kNSHV7NCiK64txURZKKvnc0wFF4mU0eeX1NXkw5m8mSbLX8wSj9EUZAN+fA==", + "dependencies": { + "@azure/identity": "^2.0.1", + "@azure/keyvault-keys": "^4.3.0", + "@js-joda/core": "^4.0.0", + "bl": "^5.0.0", + "iconv-lite": "^0.6.3", + "jsbi": "^3.2.1", + "native-duplexpair": "^1.0.0", + "node-abort-controller": "^3.0.0", + "punycode": "^2.1.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/tedious/node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + }, + "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/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/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==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, + "node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "4.6.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", + "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/underscore": { + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.3.tgz", + "integrity": "sha512-QvjkYpiD+dJJraRA8+dGAU4i7aBbb2s0S3jA45TFOvg2VgqvdCDd/3N6CqA8gluk1W91GLoXg5enMUx560QzuA==", + "dev": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", + "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", + "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "optional": true, + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "optional": true, + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "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==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", + "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", + "dev": true + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "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/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "engines": { + "node": ">=4.0" + } + }, + "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 + } + }, "dependencies": { "@ampproject/remapping": { "version": "2.1.2", @@ -1397,7 +7307,8 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv": { "version": "6.12.6", @@ -1478,6 +7389,13 @@ } } }, + "@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "dev": true, + "optional": true + }, "@humanwhocodes/config-array": { "version": "0.9.5", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", @@ -1522,6 +7440,85 @@ "resolved": "https://registry.npmjs.org/@js-joda/core/-/core-4.3.1.tgz", "integrity": "sha512-oeaetlodcqVsiZDxnEcqsbs+sXBkASxua0mXs5OXuPQXz3/wdPTMlxwfQ4z2HKcOik3S9voW3QJkp/KLWDhvRQ==" }, + "@mapbox/node-pre-gyp": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", + "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", + "dev": true, + "requires": { + "detect-libc": "^2.0.0", + "https-proxy-agent": "^5.0.0", + "make-dir": "^3.1.0", + "node-fetch": "^2.6.7", + "nopt": "^5.0.0", + "npmlog": "^5.0.1", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.11" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + }, + "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 + } + } + }, + "semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@npmcli/fs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", + "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "dev": true, + "optional": true, + "requires": { + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + }, + "dependencies": { + "semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "optional": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "dev": true, + "optional": true, + "requires": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + } + }, "@opentelemetry/api": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.4.tgz", @@ -1585,6 +7582,33 @@ "resolved": "https://registry.npmjs.org/@tediousjs/connection-string/-/connection-string-0.3.0.tgz", "integrity": "sha512-d/keJiNKfpHo+GmSB8QcsAwBx8h+V1UbdozA5TD+eSLXprNY53JAYub47J9evsSKWDdNG5uVj0FiMozLKuzowQ==" }, + "@themost/common": { + "version": "2.5.12", + "resolved": "https://registry.npmjs.org/@themost/common/-/common-2.5.12.tgz", + "integrity": "sha512-oUUuXFUuGq0MXztUzApkAx7YObqQ133YAN347yVW38o1/RXMIBvRUzFBC+/SZLlunE5vve4jvSppYAdxQQYlZA==", + "peer": true, + "requires": { + "async": "^2.6.4", + "blueimp-md5": "^2.7.0", + "es6-promise": "^4.2.8", + "events": "^3.2.0", + "hashmap": "^2.3.0", + "lodash": "^4.17.21", + "sprintf-js": "^1.1.2", + "symbol": "^0.3.1" + }, + "dependencies": { + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "peer": true, + "requires": { + "lodash": "^4.17.14" + } + } + } + }, "@themost/data": { "version": "2.6.32", "resolved": "https://registry.npmjs.org/@themost/data/-/data-2.6.32.tgz", @@ -1612,6 +7636,52 @@ } } }, + "@themost/query": { + "version": "2.5.9", + "resolved": "https://registry.npmjs.org/@themost/query/-/query-2.5.9.tgz", + "integrity": "sha512-UuW/dZC6JE/FkJgrcYFMtsrkUcEvYxf52QQ8jmeb6IgNRq9TP7sD8nSCpqNC4/ljeK37jAS6+JpIC82QBT3I0A==", + "peer": true, + "requires": { + "async": "^2.6.4", + "esprima": "^4.0.0", + "lodash": "^4.17.15", + "sprintf": "^0.1.5", + "symbol": "^0.3.1" + }, + "dependencies": { + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "peer": true, + "requires": { + "lodash": "^4.17.14" + } + } + } + }, + "@themost/sqlite": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/@themost/sqlite/-/sqlite-2.6.4.tgz", + "integrity": "sha512-krrQ6/YgVi5cj69/egCvukkFzx795lOxekmQ7eVjn4KIwq8ma5a1MMBC2jTS8HFnkX6AmdU9burDnWSOa7DyfA==", + "dev": true, + "requires": { + "async": "^2.6.4", + "package-lock-only": "^0.0.4", + "sqlite3": "^5.0.7" + }, + "dependencies": { + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + } + } + }, "@themost/xml": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/@themost/xml/-/xml-2.5.2.tgz", @@ -1695,6 +7765,12 @@ "@types/node": "*" } }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, "agent-base": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", @@ -1703,6 +7779,51 @@ "debug": "4" } }, + "agentkeepalive": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", + "dev": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "optional": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true + }, + "aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, "async": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", @@ -1787,20 +7908,14 @@ "buffer": "^6.0.3", "inherits": "^2.0.4", "readable-stream": "^3.4.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } } }, + "blueimp-md5": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", + "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", + "peer": true + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1844,6 +7959,33 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, + "cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "optional": true, + "requires": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + } + }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -1891,6 +8033,19 @@ } } }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "optional": true + }, "clone-deep": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", @@ -1917,6 +8072,12 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", "dev": true }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true + }, "colors": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", @@ -1948,6 +8109,12 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, "convert-source-map": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", @@ -2017,6 +8184,25 @@ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", + "dev": true + }, "dotenv": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", @@ -2037,6 +8223,41 @@ "integrity": "sha512-VuLNxTIt8sBWIT2sd186xPd18Y8KcK8myLd9nMdSJOYZwFUxxbLVmX/T1VX+qqaytRlrYYQv39myxJdXtu7Ysw==", "dev": true }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "requires": { + "iconv-lite": "^0.6.2" + } + }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "optional": true + }, + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true, + "optional": true + }, + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "peer": true + }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -2102,7 +8323,8 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv": { "version": "6.12.6", @@ -2116,12 +8338,6 @@ "uri-js": "^4.2.2" } }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -2342,15 +8558,6 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, "strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -2374,15 +8581,6 @@ "requires": { "prelude-ls": "^1.2.1" } - }, - "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" - } } } }, @@ -2403,6 +8601,12 @@ } } }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "peer": true + }, "esquery": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", @@ -2513,6 +8717,15 @@ "mime-types": "^2.1.12" } }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -2538,6 +8751,23 @@ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, + "gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "dev": true, + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + } + }, "gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -2584,6 +8814,13 @@ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true, + "optional": true + }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -2614,6 +8851,25 @@ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "dev": true }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "hashmap": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/hashmap/-/hashmap-2.4.0.tgz", + "integrity": "sha512-Ngj48lhnxJdnBAEVbubKBJuN1elfVLZJs94ZixRi98X3GCU4v6pgj9qRkHt6H8WaVJ69Wv0r1GhtS7hvF9zCgg==", + "peer": true + }, + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", + "dev": true, + "optional": true + }, "http-proxy-agent": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", @@ -2633,6 +8889,24 @@ "debug": "4" } }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "optional": true, + "requires": { + "ms": "^2.0.0" + } + }, + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + }, "ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -2662,6 +8936,20 @@ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "optional": true + }, + "infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "dev": true, + "optional": true + }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -2677,6 +8965,13 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, + "ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", + "dev": true, + "optional": true + }, "is-core-module": { "version": "2.9.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", @@ -2697,6 +8992,12 @@ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, "is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -2706,6 +9007,13 @@ "is-extglob": "^2.1.1" } }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", + "dev": true, + "optional": true + }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", @@ -2868,8 +9176,7 @@ "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "lodash.debounce": { "version": "4.0.8", @@ -2918,6 +9225,15 @@ "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" }, + "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" + } + }, "magic-string": { "version": "0.26.1", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.1.tgz", @@ -2937,6 +9253,31 @@ "semver": "^5.6.0" } }, + "make-fetch-happen": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "dev": true, + "optional": true, + "requires": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + } + }, "mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", @@ -2959,6 +9300,84 @@ "brace-expansion": "^1.1.7" } }, + "minipass": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "dev": true, + "optional": true, + "requires": { + "encoding": "^0.1.12", + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, "module-alias": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/module-alias/-/module-alias-2.2.2.tgz", @@ -3000,11 +9419,24 @@ "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "optional": true + }, "node-abort-controller": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.0.1.tgz", "integrity": "sha512-/ujIVxthRs+7q6hsdjHMaj8hRG9NuWmwrz+JdRwZ14jdFoKSkm+vDsCbF9PLpnSqjaWQJuTmVtcWHNLr+vrOFw==" }, + "node-addon-api": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", + "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==", + "dev": true + }, "node-cache": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/node-cache/-/node-cache-1.1.0.tgz", @@ -3022,12 +9454,111 @@ "whatwg-url": "^5.0.0" } }, + "node-gyp": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz", + "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", + "dev": true, + "optional": true, + "requires": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "dependencies": { + "are-we-there-yet": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz", + "integrity": "sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw==", + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, + "gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + } + }, + "npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + } + }, + "semver": { + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "dev": true, + "optional": true, + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, "node-releases": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", "dev": true }, + "nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "dev": true, + "requires": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", @@ -3083,12 +9614,31 @@ "p-limit": "^2.0.0" } }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "optional": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "package-lock-only": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/package-lock-only/-/package-lock-only-0.0.4.tgz", + "integrity": "sha512-fV1YHeTMWH5LKmdVqfWskm2/SG0iF2IrxJn3ziaPVx9CnpecGJzt8xXtLV+CYINENZwPFMtbxO5qupz0asNz1A==", + "dev": true, + "requires": { + "chalk": "^2.4.1" + } + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -3174,6 +9724,24 @@ "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true, + "optional": true + }, + "promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "optional": true, + "requires": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + } + }, "psl": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", @@ -3190,6 +9758,16 @@ "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", "dev": true }, + "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==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, "regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", @@ -3268,6 +9846,13 @@ "supports-preserve-symlinks-flag": "^1.0.0" } }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", + "dev": true, + "optional": true + }, "rfdc": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", @@ -3321,6 +9906,12 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, "shallow-clone": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", @@ -3330,6 +9921,42 @@ "kind-of": "^6.0.2" } }, + "signal-exit": { + "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 + }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "optional": true + }, + "socks": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", + "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", + "dev": true, + "optional": true, + "requires": { + "ip": "^1.1.5", + "smart-buffer": "^4.2.0" + } + }, + "socks-proxy-agent": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.0.tgz", + "integrity": "sha512-wWqJhjb32Q6GsrUqzuFkukxb/zzide5quXYcMVpIjxalDBBYy2nqKCFQ/9+Ie4dvOYSQdOk3hUlZSdzZOd3zMQ==", + "dev": true, + "optional": true, + "requires": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + } + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -3360,11 +9987,38 @@ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", "dev": true }, + "sprintf": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/sprintf/-/sprintf-0.1.5.tgz", + "integrity": "sha1-j4PjmpMXwaUCy324BQ5Rxnn27c8=", + "peer": true + }, "sprintf-js": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + }, + "sqlite3": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.0.8.tgz", + "integrity": "sha512-f2ACsbSyb2D1qFFcqIXPfFscLtPVOWJr5GmUzYxf4W+0qelu5MWrR+FAQE1d5IUArEltBrzSDxDORG8P/IkqyQ==", + "dev": true, + "requires": { + "@mapbox/node-pre-gyp": "^1.0.0", + "node-addon-api": "^4.2.0", + "node-gyp": "8.x", + "tar": "^6.1.11" + } + }, + "ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^3.1.1" + } }, "stoppable": { "version": "1.1.0", @@ -3386,6 +10040,26 @@ } } }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, "supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", @@ -3395,8 +10069,21 @@ "symbol": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/symbol/-/symbol-0.3.1.tgz", - "integrity": "sha1-tvmpANSWpX8CQI8iGYwQndoGMEE=", - "dev": true + "integrity": "sha1-tvmpANSWpX8CQI8iGYwQndoGMEE=" + }, + "tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + } }, "tarn": { "version": "3.0.2", @@ -3420,14 +10107,6 @@ "sprintf-js": "^1.1.2" }, "dependencies": { - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - }, "sprintf-js": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", @@ -3518,6 +10197,26 @@ "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", "dev": true }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "optional": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "optional": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, "universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", @@ -3562,6 +10261,24 @@ "webidl-conversions": "^3.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" + } + }, + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -3587,6 +10304,12 @@ "version": "11.0.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true } } } diff --git a/package.json b/package.json index 2cce378..75c8015 100644 --- a/package.json +++ b/package.json @@ -35,8 +35,8 @@ "mssql": "^8.1.0" }, "peerDependencies": { - "@themost/common": "^2.5.6", - "@themost/query": "^2.5.9" + "@themost/common": "^2", + "@themost/query": "^2" }, "devDependencies": { "@babel/core": "^7.17.9", @@ -46,6 +46,7 @@ "@rollup/plugin-babel": "^5.3.1", "@rollup/plugin-commonjs": "^22.0.0", "@themost/data": "^2.6.32", + "@themost/sqlite": "^2.6.4", "@themost/xml": "^2.5.2", "@types/async": "^3.2.12", "@types/jasmine": "^3.5.14", diff --git a/spec/ArithmeticFunctions.spec.js b/spec/ArithmeticFunctions.spec.js new file mode 100644 index 0000000..f421d34 --- /dev/null +++ b/spec/ArithmeticFunctions.spec.js @@ -0,0 +1,122 @@ +import { TestApplication } from './TestApplication'; + +describe('ArithmeticFunctions', () => { + /** + * @type {TestApplication} + */ + let app; + beforeAll(async () => { + app = new TestApplication(__dirname); + await app.tryCreateDatabase(); + await app.trySetData(); + + }); + beforeEach(async () => { + // + }); + afterAll(async () => { + await app.finalize(); + }); + afterEach(async () => { + // + }); + + + it('should use add()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('price').add(10.5).greaterThan(100).take(10).getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.price + 10.5).toBeGreaterThan(100); + } + }); + }); + + it('should use subtract()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('price').subtract(10.5).lowerThan(100).take(10).getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.price - 10.5).toBeLessThan(100); + } + }); + }); + + it('should use multiply()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable() + .where('category').equal('Laptops') + .and('price').multiply(0.75) + .lowerThan(1000).take(10).getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeTruthy(); + for (const item of items) { + expect(item.price * 0.75).toBeLessThan(1000); + } + }); + }); + + it('should use divide()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable() + .where('category').equal('Laptops') + .and('price').multiply(1.25) + .lowerThan(1000).take(10).getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeTruthy(); + for (const item of items) { + expect(item.price / 1.25).toBeLessThan(1000); + } + }); + }); + + it('should use ceil()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable() + .where('category').equal('Printers') + .and('price').ceil() + .equal(461).getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(Math.ceil(item.price)).toEqual(461); + } + }); + }); + + it('should use round()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable() + .where('category').equal('Printers') + .and('price').round() + .greaterOrEqual(460).getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(Math.round(item.price)).toBeGreaterThanOrEqual(460); + } + }); + }); + + it('should use floor()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable() + .where('category').equal('Printers') + .and('price').floor() + .equal(460).getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(Math.floor(item.price)).toEqual(460); + } + }); + }); + +}); \ No newline at end of file diff --git a/spec/DateFunctions.spec.js b/spec/DateFunctions.spec.js new file mode 100644 index 0000000..c858497 --- /dev/null +++ b/spec/DateFunctions.spec.js @@ -0,0 +1,110 @@ +import { TestApplication } from './TestApplication'; + +describe('DateFunctions', () => { + /** + * @type {TestApplication} + */ + let app; + beforeAll(async () => { + app = new TestApplication(__dirname); + await app.tryCreateDatabase(); + await app.trySetData(); + + }); + beforeEach(async () => { + // + }); + afterAll(async () => { + await app.finalize(); + }); + afterEach(async () => { + // + }); + + it('should use getDate()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Order') + .asQueryable().where('orderDate').getDate().equal('2019-04-15').silent().getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.orderDate.getDate()).toEqual(15); + expect(item.orderDate.getMonth()).toEqual(3); + expect(item.orderDate.getFullYear()).toEqual(2019); + } + }); + }); + + it('should use getDay()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Order') + .asQueryable().where('orderDate').getDay().equal(15).silent().getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.orderDate.getDate()).toEqual(15); + } + }); + }); + + it('should use getMonth()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Order') + .asQueryable().where('orderDate').getMonth().equal(4).silent().getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.orderDate.getMonth()).toEqual(3); + } + }); + }); + + it('should use getFullYear()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Order') + .asQueryable().where('orderDate').getFullYear().equal(2019).silent().getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.orderDate.getFullYear()).toEqual(2019); + } + }); + }); + + it('should use getHours()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Order') + .asQueryable().where('orderDate').getHours().equal(14).silent().getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.orderDate.getHours()).toEqual(14); + } + }); + }); + + it('should use getMinutes()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Order') + .asQueryable().where('orderDate').getMinutes().equal(45).silent().getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.orderDate.getMinutes()).toEqual(45); + } + }); + }); + + it('should use getSeconds()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Order') + .asQueryable().where('orderDate').getSeconds().equal(45).silent().getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.orderDate.getSeconds()).toEqual(45); + } + }); + }); + +}); \ No newline at end of file diff --git a/spec/MSSqlAdapter.spec.js b/spec/MSSqlAdapter.spec.js index cca0fc6..5c00e28 100644 --- a/spec/MSSqlAdapter.spec.js +++ b/spec/MSSqlAdapter.spec.js @@ -1,88 +1,230 @@ -import { MSSqlAdapter, createInstance } from '@themost/mssql'; +import { MSSqlFormatter } from '../src'; import { QueryExpression } from '@themost/query'; -// get options from environment for testing -const testConnectionOptions = { - 'server': process.env.MSSQL_SERVER, - 'port': parseInt(process.env.MSSQL_SERVER_PORT, 10), - 'user': process.env.MSSQL_USER, - 'password': process.env.MSSQL_PASSWORD, - 'database': process.env.MSSQL_DB -}; - -// get options from environment for testing -const masterConnectionOptions = { - 'server': process.env.MSSQL_SERVER, - 'port': parseInt(process.env.MSSQL_SERVER_PORT, 10), - 'user': process.env.MSSQL_USER, - 'password': process.env.MSSQL_PASSWORD, - 'database': 'master' -}; - -describe('MSSqlFormatter', () => { - - it('should create instance', async () => { - const adapter = new MSSqlAdapter(); - expect(adapter).toBeTruthy(); - }); +import { TestApplication } from './TestApplication'; - it('should use createInstance()', async () => { - const adapter = createInstance(); - expect(adapter).toBeTruthy(); - expect(adapter).toBeInstanceOf(MSSqlAdapter); +describe('MSSqlAdapter', () => { + /** + * @type {TestApplication} + */ + let app; + beforeAll(async () => { + app = new TestApplication(__dirname); + await app.tryCreateDatabase(); }); - - it('should use open()', async () => { - /** - * @type {MSSqlAdapter} - */ - const adapter = createInstance(masterConnectionOptions); - await adapter.openAsync(); - expect(adapter.rawConnection).toBeTruthy(); - await adapter.closeAsync(); - expect(adapter.rawConnection).toBeFalsy(); + beforeEach(async () => { + // + }); + afterAll(async () => { + await app.finalize(); + }); + afterEach(async () => { + // + }); + it('should check database', async () => { + await app.executeInTestTranscaction(async (context) => { + let exists = await context.db.database('a_test_database').existsAsync(); + expect(exists).toBeFalsy(); + exists = await context.db.database('test_db').existsAsync(); + expect(exists).toBeTruthy(); + }); }); - it('should use close()', async () => { - /** - * @type {MSSqlAdapter} - */ - const adapter = createInstance(masterConnectionOptions); - await adapter.openAsync(); - await adapter.closeAsync(); - expect(adapter.rawConnection).toBeFalsy(); + it('should check table', async () => { + await app.executeInTestTranscaction(async (context) => { + const exists = await context.db.table('Table1').existsAsync(); + expect(exists).toBeFalsy(); + }); }); - it('should query database', async () => { - // validate and create database - /** - * @type {MSSqlAdapter} - */ - const adapter = createInstance(masterConnectionOptions); - const query = new QueryExpression().from('sys.databases').select('database_id', 'name').where('name').equal(testConnectionOptions.database); - const res = await adapter.executeAsync(query); - expect(res).toBeInstanceOf(Array); - expect(res.length).toBeLessThanOrEqual(1); - await adapter.closeAsync(); + it('should create table', async () => { + await app.executeInTestTranscaction(async (context) => { + const db = context.db; + let exists = await db.table('Table1').existsAsync(); + expect(exists).toBeFalsy(); + await context.db.table('Table1').createAsync([ + { + name: 'id', + type: 'Counter', + primary: true, + nullable: false + }, + { + name: 'name', + type: 'Text', + size: 255, + nullable: false + }, + { + name: 'description', + type: 'Text', + size: 255, + nullable: true + } + ]); + exists = await db.table('Table1').existsAsync(); + expect(exists).toBeTruthy(); + // get columns + const columns = await db.table('Table1').columnsAsync(); + expect(columns).toBeInstanceOf(Array); + let column = columns.find((col) => col.name === 'id'); + expect(column).toBeTruthy(); + expect(column.nullable).toBeFalsy(); + column = columns.find((col) => col.name === 'description'); + expect(column).toBeTruthy(); + expect(column.nullable).toBeTruthy(); + expect(column.size).toBe(255); + await db.executeAsync(`DROP TABLE ${new MSSqlFormatter().escapeName('Table1')}`); + }); }); - it('should use database(string).exists()', async () => { - const adapter = new MSSqlAdapter(masterConnectionOptions); - let exists = await adapter.database(testConnectionOptions.database).existsAsync(); - expect(exists).toBeTrue(); - exists = await adapter.database('other_database').existsAsync(); - expect(exists).toBeFalse(); - await adapter.closeAsync(); + it('should alter table', async () => { + await app.executeInTestTranscaction(async (context) => { + const db = context.db; + let exists = await db.table('Table2').existsAsync(); + expect(exists).toBeFalsy(); + await db.table('Table2').createAsync([ + { + name: 'id', + type: 'Counter', + primary: true, + nullable: false + }, + { + name: 'name', + type: 'Text', + size: 255, + nullable: false + } + ]); + exists = await db.table('Table2').existsAsync(); + expect(exists).toBeTruthy(); + await db.table('Table2').addAsync([ + { + name: 'description', + type: 'Text', + size: 255, + nullable: true + } + ]); + // get columns + let columns = await db.table('Table2').columnsAsync(); + expect(columns).toBeInstanceOf(Array); + let column = columns.find((col) => col.name === 'description'); + expect(column).toBeTruthy(); + + await db.table('Table2').changeAsync([ + { + name: 'description', + type: 'Text', + size: 512, + nullable: true + } + ]); + columns = await db.table('Table2').columnsAsync(); + column = columns.find((col) => col.name === 'description'); + expect(column.size).toEqual(512); + expect(column.nullable).toBeTruthy(); + await db.executeAsync(`DROP TABLE ${new MSSqlFormatter().escapeName('Table2')}`); + }); + }); - it('should use database(string).create()', async () => { - const adapter = new MSSqlAdapter(masterConnectionOptions); - await adapter.database('test_create_a_database').createAsync(); - let exists = await adapter.database('test_create_a_database').existsAsync(); - expect(exists).toBeTrue(); - await adapter.executeAsync('DROP DATABASE test_create_a_database;'); - exists = await adapter.database('test_create_a_database').existsAsync(); - expect(exists).toBeFalse(); - await adapter.closeAsync(); + + it('should create view', async () => { + + await app.executeInTestTranscaction(async (context) => { + const db = context.db; + let exists = await db.table('Table1').existsAsync(); + expect(exists).toBeFalsy(); + await db.table('Table1').createAsync([ + { + name: 'id', + type: 'Counter', + primary: true, + nullable: false + }, + { + name: 'name', + type: 'Text', + size: 255, + nullable: false + }, + { + name: 'description', + type: 'Text', + size: 255, + nullable: true + } + ]); + exists = await db.table('Table1').existsAsync(); + expect(exists).toBeTruthy(); + + exists = await db.view('View1').existsAsync(); + expect(exists).toBeFalsy(); + + const query = new QueryExpression().select('id', 'name', 'description').from('Table1'); + await db.view('View1').createAsync(query); + + exists = await db.view('View1').existsAsync(); + expect(exists).toBeTruthy(); + + await db.view('View1').dropAsync(); + + exists = await db.view('View1').existsAsync(); + expect(exists).toBeFalsy(); + await db.executeAsync(`DROP TABLE ${new MSSqlFormatter().escapeName('Table1')}`); + }); }); + it('should create index', async () => { + await app.executeInTestTranscaction(async (context) => { + const db = context.db; + let exists = await db.table('Table1').existsAsync(); + expect(exists).toBeFalsy(); + await db.table('Table1').createAsync([ + { + name: 'id', + type: 'Counter', + primary: true, + nullable: false + }, + { + name: 'name', + type: 'Text', + size: 255, + nullable: false + }, + { + name: 'description', + type: 'Text', + size: 255, + nullable: true + } + ]); + exists = await db.table('Table1').existsAsync(); + expect(exists).toBeTruthy(); + + let list = await db.indexes('Table1').listAsync(); + expect(list).toBeInstanceOf(Array); + exists = list.findIndex((index) => index.name === 'idx_name') < 0; + + await db.indexes('Table1').createAsync('idx_name', [ + 'name' + ]); + + list = await db.indexes('Table1').listAsync(); + expect(list).toBeInstanceOf(Array); + exists = list.findIndex((index) => index.name === 'idx_name') >= 0; + expect(exists).toBeTruthy(); + + await db.indexes('Table1').dropAsync('idx_name'); + + list = await db.indexes('Table1').listAsync(); + expect(list).toBeInstanceOf(Array); + exists = list.findIndex((index) => index.name === 'idx_name') >= 0; + expect(exists).toBeFalsy(); + + await db.executeAsync(`DROP TABLE ${new MSSqlFormatter().escapeName('Table1')}`); + }); + }); }); \ No newline at end of file diff --git a/spec/MSSqlFormatter.spec.js b/spec/MSSqlFormatter.spec.js index 16c5e1f..90545c9 100644 --- a/spec/MSSqlFormatter.spec.js +++ b/spec/MSSqlFormatter.spec.js @@ -1,41 +1,49 @@ -import {MSSqlFormatter} from '@themost/mssql'; -import {TestApplication} from './TestApplication'; -import path from 'path'; -// eslint-disable-next-line no-unused-vars -import { DataContext } from '@themost/data'; +import { MSSqlFormatter } from '../src'; +import { TestApplication } from './TestApplication'; describe('MSSqlFormatter', () => { - /** * @type {TestApplication} */ let app; beforeAll(async () => { - app = new TestApplication(path.resolve(__dirname)); + app = new TestApplication(__dirname); await app.tryCreateDatabase(); + await app.trySetData(); + + }); + beforeEach(async () => { + // }); - afterAll(async () => { await app.finalize(); - }) + }); + afterEach(async () => { + // + }); - it('should create instance', async () => { - const formatter = new MSSqlFormatter(); - expect(formatter).toBeTruthy(); + it('should get data', async () => { + await app.executeInTestTranscaction(async (context) => { + const items = await context.model('ActionStatusType').silent().getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeTruthy(); + }); }); - it('should should use select', async () => { - /** - * @type {DataContext} - */ - const context = app.createContext(); - expect(context).toBeTruthy(); - const item = await context.model('ActionStatusType') - .where('alternateName').equal('ActiveActionStatus') - .getItem(); - expect(item).toBeTruthy(); - expect(item.alternateName).toEqual('ActiveActionStatus'); - await context.finalizeAsync(); + it('should query data', async () => { + await app.executeInTestTranscaction(async (context) => { + const item = await context.model('ActionStatusType') + .where('alternateName').equal('ActiveActionStatus').silent().getItem(); + expect(item).toBeTruthy(); + expect(item.alternateName).toEqual('ActiveActionStatus'); + }); + }); + + it('should escape constant', async () => { + const formatter = new MSSqlFormatter(); + expect(formatter.escapeConstant(10.45)).toEqual('10.45'); + expect(formatter.escapeConstant('test')).toEqual('\'test\''); + expect(formatter.escapeConstant(true)).toEqual('1'); }); it('should should use limit select', async () => { @@ -88,21 +96,6 @@ describe('MSSqlFormatter', () => { }); }); - it('should use update', async () => { - await app.executeInTestTranscaction(async (context) => { - const insertUser = { - name: 'user1@example.com', - description: 'Test User' - }; - await context.model('User').silent().insert(insertUser); - let newUser = await context.model('User').where('name').equal('user1@example.com').silent().getItem(); - newUser.description = 'Updated Test User'; - await context.model('User').silent().save(newUser); - newUser = await context.model('User').where('name').equal('user1@example.com').silent().getItem(); - expect(newUser.description).toEqual('Updated Test User'); - }); - }); - it('should use count', async () => { await app.executeInTestTranscaction(async (context) => { diff --git a/spec/Promise.sequence.spec.js b/spec/Promise.sequence.spec.js deleted file mode 100644 index 90a18bf..0000000 --- a/spec/Promise.sequence.spec.js +++ /dev/null @@ -1,53 +0,0 @@ -function func1() { - return new Promise(function(resolve) { - setTimeout(function() { - return resolve(1); - },1500); - }); -} - -function func2() { - return new Promise(function(resolve) { - setTimeout(function() { - return resolve(2); - },500); - }); -} - -function func3() { - return new Promise(function(resolve, reject) { - setTimeout(function() { - return reject('The operation cancelled by the user'); - },1000); - }); -} -/** - * - * @param {*} promises - * @returns Promise> - */ -function promiseSequence(sources) { - return sources.reduce((promise, func) => ( - promise.then((result) => ( - func().then(Array.prototype.concat.bind(result)) - )) - ), Promise.resolve([])); -} - -describe('Promise.sequence', () => { - it('should execute promise sequence', async() => { - const results = await promiseSequence([ - () => func1(), - () => func2() - ]); - expect(results).toBeInstanceOf(Array); - expect(results[0]).toEqual(1); - expect(results[1]).toEqual(2); - - await expectAsync(promiseSequence([ - () => func1(), - () => func3() - ])).toBeRejected(); - - }); -}); diff --git a/spec/StringFunctions.spec.js b/spec/StringFunctions.spec.js new file mode 100644 index 0000000..e3a56ab --- /dev/null +++ b/spec/StringFunctions.spec.js @@ -0,0 +1,126 @@ +import { TestApplication } from './TestApplication'; + +describe('StringFunctions', () => { + /** + * @type {TestApplication} + */ + let app; + beforeAll(async () => { + app = new TestApplication(__dirname); + await app.tryCreateDatabase(); + await app.trySetData(); + + }); + beforeEach(async () => { + // + }); + afterAll(async () => { + await app.finalize(); + }); + afterEach(async () => { + // + }); + + it('should use indexOf()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').substr(0, 2).equal('Ap').getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.name.substr(0, 2)).toEqual('Ap'); + } + }); + }); + + it('should use startsWith()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').startsWith('Apple').equal(true).getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.name.startsWith('Apple')).toBeTruthy(); + } + }); + }); + + it('should use lower()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').toLowerCase().equal('apple ipad air').getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.name.toLowerCase()).toEqual('apple ipad air'); + } + }); + }); + + it('should use upper()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').toUpperCase().equal('APPLE IPAD AIR').getItems(); + expect(items).toBeInstanceOf(Array); + expect(items.length).toBeGreaterThan(0); + for (const item of items) { + expect(item.name.toUpperCase()).toEqual('APPLE IPAD AIR'); + } + }); + }); + + it('should use endsWith()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').endsWith('Touch').equal(true).getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.name.endsWith('Touch')).toBeTruthy(); + } + }); + }); + + it('should use length()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').length().equal(14).getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.name.length).toEqual(14); + } + }); + }); + + it('should use substr()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').indexOf('Apple').greaterOrEqual(0).getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.name.indexOf('Apple')).toBeGreaterThanOrEqual(0); + } + }); + }); + + it('should use indexOf()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').substr(0, 2).equal('Ap').getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.name.substr(0, 2)).toEqual('Ap'); + } + }); + }); + + it('should use contains()', async () => { + await app.executeInTestTranscaction(async (context) => { + let items = await context.model('Product') + .asQueryable().where('name').contains('iMac').equal(true).getItems(); + expect(items).toBeInstanceOf(Array); + for (const item of items) { + expect(item.name.includes('iMac')).toBeTruthy(); + } + }); + }); + + +}); \ No newline at end of file diff --git a/spec/TestApplication.js b/spec/TestApplication.js index 9357c54..0f7c54a 100644 --- a/spec/TestApplication.js +++ b/spec/TestApplication.js @@ -1,21 +1,39 @@ // eslint-disable-next-line no-unused-vars -import {DataApplication, DataConfigurationStrategy, NamedDataContext, DataCacheStrategy, DataContext} from '@themost/data'; -import { createInstance } from '@themost/mssql'; +import {DataApplication, DataConfigurationStrategy, NamedDataContext, DataCacheStrategy, DataContext, ODataModelBuilder, ODataConventionModelBuilder} from '@themost/data'; +import { createInstance, MSSqlFormatter } from '../src'; +import { TraceUtils, LangUtils } from '@themost/common'; import { QueryExpression } from '@themost/query'; +import { SqliteAdapter } from '@themost/sqlite'; +import path from 'path'; + const testConnectionOptions = { - 'server': process.env.MSSQL_SERVER, - 'port': parseInt(process.env.MSSQL_SERVER_PORT, 10), - 'user': process.env.MSSQL_USER, - 'password': process.env.MSSQL_PASSWORD, - 'database': process.env.MSSQL_DB + 'server': process.env.DB_HOST, + 'port': parseInt(process.env.DB_PORT, 10), + 'user': process.env.DB_USER, + 'database': 'test_db' }; +if (process.env.DB_PASSWORD) { + Object.assign(testConnectionOptions, { + password: process.env.DB_PASSWORD + }); +} + const masterConnectionOptions = { - 'server': process.env.MSSQL_SERVER, - 'port': parseInt(process.env.MSSQL_SERVER_PORT, 10), - 'user': process.env.MSSQL_USER, - 'password': process.env.MSSQL_PASSWORD, - 'database': 'master' + 'server': process.env.DB_HOST, + 'port': parseInt(process.env.DB_PORT, 10), + 'user': process.env.DB_USER, + 'database': 'mssql' +}; + +if (process.env.DB_PASSWORD) { + Object.assign(masterConnectionOptions, { + password: process.env.DB_PASSWORD + }); +} + +const sourceConnectionOptions = { + database: path.resolve(__dirname, 'db/local.db') }; class CancelTransactionError extends Error { @@ -62,9 +80,8 @@ class TestApplication extends DataApplication { context.getConfiguration = () => { return this.configuration; }; - const query = new QueryExpression().from('sys.databases').select('database_id', 'name').where('name').equal(testConnectionOptions.database); - const res = await context.db.executeAsync(query); - if (res.length === 0) { + const exists = await context.db.database(testConnectionOptions.database).existsAsync(); + if (exists === false) { await context.db.executeAsync(`CREATE DATABASE ${testConnectionOptions.database};`); } await context.db.closeAsync(); @@ -119,20 +136,140 @@ class TestApplication extends DataApplication { return cb(err); } }, (err) => { - // if error is an instance of CancelTransactionError - if (err && err instanceof CancelTransactionError) { + context.finalizeAsync().finally(() => { + // if error is an instance of CancelTransactionError + if (err && err instanceof CancelTransactionError) { + return resolve(); + } + if (err) { + return reject(err); + } + // exit return resolve(); - } - if (err) { - return reject(err); - } - // exit - return resolve(); + }); }); }); }); + } + + async tryUpgrade() { + let context; + try { + this.configuration.useStrategy(ODataModelBuilder, ODataConventionModelBuilder); + context = this.createContext(); + const builder = this.configuration.getStrategy(ODataModelBuilder); + const schema = await builder.getEdm(); + const entityTypes = schema.entityType.filter((item) => { + return item.abstract ? false : true; + }); + await context.executeInTransactionAsync(async () => { + for (let entityType of entityTypes) { + TraceUtils.debug(`Upgrading ${entityType.name}`); + await new Promise((resolve, reject) => { + const model = context.model(entityType.name); + if (model.abstract) { + return resolve(); + } + model.migrate(function (err) { + if (err) { + return reject(err); + } + return resolve(); + }); + }); + } + }); + await context.finalizeAsync(); + } catch (error) { + if (context) { + await context.finalizeAsync(); + } + throw error; + } + } - + async trySetData() { + let context; + try { + this.configuration.useStrategy(ODataModelBuilder, ODataConventionModelBuilder); + context = this.createContext(); + // validate if the operation has been already run + const exists1 = await context.db.table('migrations').existsAsync(); + if (exists1 === true) { + const alreadyApplied = await context.db.executeAsync( + new QueryExpression().select('version').from('migrations') + .where('appliesTo').equal('SetData').and('version').equal('1.0') + ); + if (alreadyApplied.length > 0) { + return; + } + } + const builder = this.configuration.getStrategy(ODataModelBuilder); + const schema = await builder.getEdm(); + const entityTypes = schema.entityType.filter((item) => { + return item.abstract ? false : true; + }); + const sourceAdapter = new SqliteAdapter(sourceConnectionOptions); + const formatter = new MSSqlFormatter(); + for (let entityType of entityTypes) { + TraceUtils.log(`Upgrading ${entityType.name}`); + await new Promise((resolve, reject) => { + const model = context.model(entityType.name); + if (model.abstract) { + return resolve(); + } + model.migrate(function (err) { + if (err) { + return reject(err); + } + (async function () { + const formatter = new MSSqlFormatter(); + const sourceTableExists = await sourceAdapter.table(model.sourceAdapter).existsAsync(); + if (sourceTableExists) { + // get source data + let results = await sourceAdapter.executeAsync(`SELECT * FROM ${formatter.escapeName(model.sourceAdapter)}`); + if (results.length > 0) { + await context.db.executeAsync(`DELETE FROM ${formatter.escapeName(model.sourceAdapter)} WHERE 1=1`); + // get columns of type boolean + // data should be update to true/false + // because of an error occurred while trying to insert an integer value to a field of type boolean + const booleanAttributes = model.attributes.filter((attribute) => attribute.type === 'Boolean'); + for (let result of results) { + // modify data + booleanAttributes.forEach((attribute) => { + if (Object.prototype.hasOwnProperty.call(result, attribute.name)) { + result[attribute.name] = LangUtils.parseBoolean(result[attribute.name]); + } + }); + const sql = formatter.format(new QueryExpression().insert(result).into(model.sourceAdapter)); + // and execute + await context.db.executeAsync(sql); + } + const key = model.getAttribute(model.primaryKey); + if (key.type === 'Counter') { + // + } + } + } + })().then(() => { + return resolve(); + }).catch((err) => { + return reject(err); + }); + }); + }); + } + await context.db.executeAsync(new QueryExpression().insert({ + appliesTo: 'SetData', + version: '1.0' + }).into('migrations')); + await context.finalizeAsync(); + } catch (error) { + if (context) { + await context.finalizeAsync(); + } + throw error; + } } } diff --git a/spec/config/app.json b/spec/config/app.json new file mode 100644 index 0000000..e38bdc3 --- /dev/null +++ b/spec/config/app.json @@ -0,0 +1,29 @@ +{ + "settings": { + "crypto": { + "algorithm": "aes256", + "key": "656e675539754a34634b4b4646723972617a483734366d327a433453596248386862434166514c36524164504c345734" + }, + "auth": { + "unattendedExecutionAccount": "Z+mP8SdKPDREuLub" + }, + "i18n": { + "locales": [ + "en" + ], + "defaultLocale": "en" + } + }, + "adapterTypes": [ + ], + "adapters": [ + { + "name": "source", + "invariantName": "sqlite", + "default": false, + "options": { + "database": "db/local.db" + } + } + ] +} diff --git a/spec/db/local.db b/spec/db/local.db new file mode 100644 index 0000000000000000000000000000000000000000..42e72b8f29b1901bdc0c32faabce0d890098c34a GIT binary patch literal 946176 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

dFTl;_G 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:}H}aBHzfbh1&7i+$*`~bC2g9&ix>F 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®9lluMvL)(NN4qN%Uw=Tv&hWNsL0!L0&+nE729s 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 jkruV=ynkIl;;3jN, callback: (err: Error) => void): void; - createAsync(fields: Array): Promise; - add(fields: Array, callback: (err: Error) => void): void; - addAsync(fields: Array): Promise; - change(fields: Array, callback: (err: Error) => void): void; - changeAsync(fields: Array): Promise; - exists(callback: (err: Error, result: boolean) => void): void; - existsAsync(): Promise; - version(callback: (err: Error, result: string) => void): void; - versionAsync(): Promise; - columns(callback: (err: Error, result: Array) => void): void; - columnsAsync(): Promise>; -} +import { DataAdapterBase, DataAdapterBaseHelper, DataAdapterDatabase, DataAdapterIndexes, DataAdapterMigration, DataAdapterTable, DataAdapterView } from '@themost/common'; -export declare interface MSSqlAdapterIndex { - name: string; - columns: Array; -} - -export declare interface MSSqlAdapterIndexes { - create(name: string, columns: Array, callback: (err: Error, res?: number) => void): void; - createAsync(name: string, columns: Array): Promise; - drop(name: string, callback: (err: Error, res?: number) => void): void; - dropAsync(name: string): Promise; - list(callback: (err: Error, res: Array) => void): void; - listAsync(): Promise>; -} - -export declare interface MSSqlAdapterView { - create(query: any, callback: (err: Error) => void): void; - createAsync(query: any): Promise; - exists(callback: (err: Error, result: boolean) => void): void; - existsAsync(): Promise; - drop(callback: (err: Error) => void): void; - dropAsync(): Promise; -} - -export declare interface MSSqlAdapterDatabase { - exists(callback: (err: Error, result: boolean) => void): void; - existsAsync(): Promise; - create(callback: (err: Error) => void): void; - createAsync(): Promise; -} - -export declare interface MSSqlAdapterMigration { - add: Array; - change?: Array; - appliesTo: string; - version: string; -} - -export declare class MSSqlAdapter { +export declare class MSSqlAdapter implements DataAdapterBase, DataAdapterBaseHelper { static formatType(field: any): string; constructor(options?: any); + rawConnection?: any; + options?: any; + selectIdentityAsync(entity: string, attribute: string): Promise; + executeInTransactionAsync(func: () => Promise): Promise; + migrateAsync(obj: DataAdapterMigration): Promise; formatType(field: any): string; open(callback: (err: Error) => void): void; close(callback: (err: Error) => void): void; @@ -62,14 +16,13 @@ export declare class MSSqlAdapter { prepare(query: any, values?: Array): any; createView(name: string, query: any, callback: (err: Error) => void): void; executeInTransaction(func: any, callback: (err: Error) => void): void; - executeInTransactionAsync(func: Promise): Promise; - migrate(obj: MSSqlAdapterMigration, callback: (err: Error) => void): void; + migrate(obj: DataAdapterMigration, callback: (err: Error) => void): void; selectIdentity(entity: string, attribute: string, callback: (err: Error, value: any) => void): void; execute(query: any, values: any, callback: (err: Error, value: any) => void): void; executeAsync(query: any, values: any): Promise; executeAsync(query: any, values: any): Promise>; - table(name: string): MSSqlAdapterTable; - view(name: string): MSSqlAdapterView; - indexes(name: string): MSSqlAdapterIndexes; - database(name: string): MSSqlAdapterDatabase; + table(name: string): DataAdapterTable; + view(name: string): DataAdapterView; + indexes(name: string): DataAdapterIndexes; + database(name: string): DataAdapterDatabase; } \ No newline at end of file diff --git a/src/MSSqlAdapter.js b/src/MSSqlAdapter.js index 1d35e19..100e89d 100644 --- a/src/MSSqlAdapter.js +++ b/src/MSSqlAdapter.js @@ -290,6 +290,22 @@ class MSSqlAdapter { }); } + /** + * @param {string} entity + * @param {string} attribute + * @returns Promise + */ + selectIdentityAsync(entity, attribute) { + return new Promise((resolve, reject) => { + return this.selectIdentity(entity, attribute, (err, res) => { + if (err) { + return reject(err); + } + return resolve(res); + }); + }); + } + /** * @param {*} query * @param {*} values @@ -1033,6 +1049,20 @@ class MSSqlAdapter { } }); } + + /** + * @param {DataModelMigration|*} obj - An Object that represents the data model scheme we want to migrate + */ + migrateAsync(obj) { + return new Promise((resolve, reject) => { + return this.migrate(obj, (err, res) => { + if (err) { + return reject(err); + } + return resolve(res); + }); + }); + } /** * A utility for database object * @param {string} name diff --git a/src/MSSqlFormatter.d.ts b/src/MSSqlFormatter.d.ts index fa2a942..3a95d76 100644 --- a/src/MSSqlFormatter.d.ts +++ b/src/MSSqlFormatter.d.ts @@ -1,12 +1,5 @@ // MOST Web Framework Codename Zero Gravity Copyright (c) 2017-2022, THEMOST LP All rights reserved import { SqlFormatter } from "@themost/query"; -/** - * MOST Web Framework 2.0 Codename Blueshift - * Copyright (c) 2014-2020, THEMOST LP themost-framework@themost.io - * - * Use of this source code is governed by an BSD-3-Clause license that can be - * found in the LICENSE file at https://themost.io/license - */ export declare class MSSqlFormatter extends SqlFormatter { } From aadb034600490f0f781a62a8eaed3d6881a00bfe Mon Sep 17 00:00:00 2001 From: Kyriakos Barbounakis Date: Mon, 23 May 2022 10:57:15 +0000 Subject: [PATCH 2/3] fix test errors --- package-lock.json | 6028 +---------------------- package.json | 3 +- spec/DateFunctions.spec.js | 4 +- spec/StringFunctions.spec.js | 20 +- spec/TestApplication.js | 13 +- spec/config/models/AccessLevelType.json | 3 +- src/MSSqlAdapter.js | 30 +- src/MSSqlFormatter.js | 76 +- 8 files changed, 120 insertions(+), 6057 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6419ae5..01e405a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5918 +1,8 @@ { "name": "@themost/mssql", "version": "2.6.1", - "lockfileVersion": 2, + "lockfileVersion": 1, "requires": true, - "packages": { - "": { - "name": "@themost/mssql", - "version": "2.6.1", - "license": "BSD-3-Clause", - "dependencies": { - "async": "^3.2.3", - "mssql": "^8.1.0" - }, - "devDependencies": { - "@babel/core": "^7.17.9", - "@babel/eslint-parser": "^7.17.0", - "@babel/preset-env": "^7.16.11", - "@babel/register": "^7.17.7", - "@rollup/plugin-babel": "^5.3.1", - "@rollup/plugin-commonjs": "^22.0.0", - "@themost/data": "^2.6.32", - "@themost/sqlite": "^2.6.4", - "@themost/xml": "^2.5.2", - "@types/async": "^3.2.12", - "@types/jasmine": "^3.5.14", - "@types/mssql": "^7.1.5", - "dotenv": "^8.2.0", - "eslint": "^8.14.0", - "jasmine": "^4.1.0", - "jasmine-spec-reporter": "^7.0.0", - "module-alias": "^2.2.2", - "rimraf": "^3.0.2", - "rollup": "^2.71.1", - "rollup-plugin-dts": "^4.2.1", - "typescript": "^4.6.4" - }, - "engines": { - "node": ">=8" - }, - "peerDependencies": { - "@themost/common": "^2", - "@themost/query": "^2" - } - }, - "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/@azure/abort-controller": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.0.4.tgz", - "integrity": "sha512-lNUmDRVGpanCsiUN3NWxFTdwmdFI53xwhkTFfHDGTYk46ca7Ind3nanJc+U6Zj9Tv+9nTCWRBscWEW1DyKOpTw==", - "dependencies": { - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@azure/core-asynciterator-polyfill": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.2.tgz", - "integrity": "sha512-3rkP4LnnlWawl0LZptJOdXNrT/fHp2eQMadoasa6afspXdpGrtPZuAQc2PD0cpgyuoXtUWyC3tv7xfntjGS5Dw==", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/core-auth": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.3.2.tgz", - "integrity": "sha512-7CU6DmCHIZp5ZPiZ9r3J17lTKMmYsm/zGvNkjArQwPkrLlZ1TZ+EUYfGgh2X31OLMVAQCTJZW4cXHJi02EbJnA==", - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/core-client": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.5.0.tgz", - "integrity": "sha512-YNk8i9LT6YcFdFO+RRU0E4Ef+A8Y5lhXo6lz61rwbG8Uo7kSqh0YqK04OexiilM43xd6n3Y9yBhLnb1NFNI9dA==", - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-asynciterator-polyfill": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-rest-pipeline": "^1.5.0", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/core-http": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-2.2.4.tgz", - "integrity": "sha512-QmmJmexXKtPyc3/rsZR/YTLDvMatzbzAypJmLzvlfxgz/SkgnqV/D4f6F2LsK6tBj1qhyp8BoXiOebiej0zz3A==", - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-asynciterator-polyfill": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "@types/node-fetch": "^2.5.0", - "@types/tunnel": "^0.0.3", - "form-data": "^4.0.0", - "node-fetch": "^2.6.7", - "process": "^0.11.10", - "tough-cookie": "^4.0.0", - "tslib": "^2.2.0", - "tunnel": "^0.0.6", - "uuid": "^8.3.0", - "xml2js": "^0.4.19" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/core-lro": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.4.tgz", - "integrity": "sha512-e1I2v2CZM0mQo8+RSix0x091Av493e4bnT22ds2fcQGslTHzM2oTbswkB65nP4iEpCxBrFxOSDPKExmTmjCVtQ==", - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/core-paging": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.2.1.tgz", - "integrity": "sha512-UtH5iMlYsvg+nQYIl4UHlvvSrsBjOlRF4fs0j7mxd3rWdAStrKYrh2durOpHs5C9yZbVhsVDaisoyaf/lL1EVA==", - "dependencies": { - "@azure/core-asynciterator-polyfill": "^1.0.0", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/core-rest-pipeline": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.8.0.tgz", - "integrity": "sha512-o8eZr96erQpiq8EZhZU/SyN6ncOfZ6bexwN2nMm9WpDmZGvaq907kopADt8XvNhbEF7kRA1l901Pg8mXjWp3UQ==", - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "form-data": "^4.0.0", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "tslib": "^2.2.0", - "uuid": "^8.3.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/core-tracing": { - "version": "1.0.0-preview.13", - "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", - "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", - "dependencies": { - "@opentelemetry/api": "^1.0.1", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/core-util": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.0.0-beta.1.tgz", - "integrity": "sha512-pS6cup979/qyuyNP9chIybK2qVkJ3MarbY/bx3JcGKE6An6dRweLnsfJfU2ydqUI/B51Rjnn59ajHIhCUTwWZw==", - "dependencies": { - "tslib": "^2.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@azure/identity": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-2.0.4.tgz", - "integrity": "sha512-ZgFubAsmo7dji63NLPaot6O7pmDfceAUPY57uphSCr0hmRj+Cakqb4SUz5SohCHFtscrhcmejRU903Fowz6iXg==", - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-client": "^1.4.0", - "@azure/core-rest-pipeline": "^1.1.0", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/core-util": "^1.0.0-beta.1", - "@azure/logger": "^1.0.0", - "@azure/msal-browser": "^2.16.0", - "@azure/msal-common": "^4.5.1", - "@azure/msal-node": "^1.3.0", - "events": "^3.0.0", - "jws": "^4.0.0", - "open": "^8.0.0", - "stoppable": "^1.1.0", - "tslib": "^2.2.0", - "uuid": "^8.3.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/keyvault-keys": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@azure/keyvault-keys/-/keyvault-keys-4.4.0.tgz", - "integrity": "sha512-W9sPZebXYa3aar7BGIA+fAsq/sy1nf2TZAETbkv7DRawzVLrWv8QoVVceqNHjy3cigT4HNxXjaPYCI49ez5CUA==", - "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-http": "^2.0.0", - "@azure/core-lro": "^2.2.0", - "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.13", - "@azure/logger": "^1.0.0", - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/logger": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.3.tgz", - "integrity": "sha512-aK4s3Xxjrx3daZr3VylxejK3vG5ExXck5WOHDJ8in/k9AqlfIyFMMT1uG7u8mNjX+QRILTIn0/Xgschfh/dQ9g==", - "dependencies": { - "tslib": "^2.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@azure/msal-browser": { - "version": "2.23.0", - "resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-2.23.0.tgz", - "integrity": "sha512-qxyWmsP/pf+xJFEhMgiJ0r1v6TjF+x8iMWYU5R63Lb/fjQfKalaNX9f5D6GbJYJS5s9OF3abtdGtB/Lxea15mQ==", - "dependencies": { - "@azure/msal-common": "^6.2.0" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@azure/msal-browser/node_modules/@azure/msal-common": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-6.2.0.tgz", - "integrity": "sha512-SU2/vfbKn1WvtKM8tsBKZAbmRJvO8E3H773ZT0GGKuO9rwLfxP5qOzTHV5crCEm8DgvL/IppmWh2lsUFieDi1A==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@azure/msal-common": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-4.5.1.tgz", - "integrity": "sha512-/i5dXM+QAtO+6atYd5oHGBAx48EGSISkXNXViheliOQe+SIFMDo3gSq3lL54W0suOSAsVPws3XnTaIHlla0PIQ==", - "dependencies": { - "debug": "^4.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@azure/msal-node": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.8.0.tgz", - "integrity": "sha512-rA5KzhvNuNef6Bzap8Sm/LbuesvA1yY2dj/W+QZuKMtT5nboZ4n4w8LRjwMMxucvYfizybPbLGTFpbq2IJtOfQ==", - "dependencies": { - "@azure/msal-common": "^6.2.0", - "axios": "^0.21.4", - "https-proxy-agent": "^5.0.0", - "jsonwebtoken": "^8.5.1", - "uuid": "^8.3.0" - }, - "engines": { - "node": "10 || 12 || 14 || 16" - } - }, - "node_modules/@azure/msal-node/node_modules/@azure/msal-common": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-6.2.0.tgz", - "integrity": "sha512-SU2/vfbKn1WvtKM8tsBKZAbmRJvO8E3H773ZT0GGKuO9rwLfxP5qOzTHV5crCEm8DgvL/IppmWh2lsUFieDi1A==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/code-frame": { - "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.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", - "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.9.tgz", - "integrity": "sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helpers": "^7.17.9", - "@babel/parser": "^7.17.9", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "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/eslint-parser": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.17.0.tgz", - "integrity": "sha512-PUEJ7ZBXbRkbq3qqM/jZ2nIuakUBqCYc7Qf52Lj7dlZ6zERnqisdHioL0l4wwQZnmskMeasqUNzLBFKs3nylXA==", - "dev": true, - "dependencies": { - "eslint-scope": "^5.1.1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.0" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || >=14.0.0" - }, - "peerDependencies": { - "@babel/core": ">=7.11.0", - "eslint": "^7.5.0 || ^8.0.0" - } - }, - "node_modules/@babel/eslint-parser/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@babel/eslint-parser/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/@babel/eslint-parser/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.17.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", - "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", - "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", - "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", - "dev": true, - "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.16.7", - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", - "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.17.7", - "@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.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.9.tgz", - "integrity": "sha512-kUjip3gruz6AJKOq5i3nC6CoCEEF/oHH3cp6tOZhB+IyyyPyW0g1Gfsxn3mkk6S08pIA2y8GQh609v9G/5sHVQ==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-member-expression-to-functions": "^7.17.7", - "@babel/helper-optimise-call-expression": "^7.16.7", - "@babel/helper-replace-supers": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz", - "integrity": "sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "regexpu-core": "^5.0.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz", - "integrity": "sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.13.0", - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/traverse": "^7.13.0", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-define-polyfill-provider/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-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/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", - "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", - "dev": true, - "dependencies": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "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.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", - "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.17.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "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.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", - "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.17.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.9.0" - } - }, - "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", - "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "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-remap-async-to-generator": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", - "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "@babel/helper-wrap-function": "^7.16.8", - "@babel/types": "^7.16.8" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-replace-supers": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz", - "integrity": "sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-member-expression-to-functions": "^7.16.7", - "@babel/helper-optimise-call-expression": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", - "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", - "dev": true, - "dependencies": { - "@babel/types": "^7.17.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", - "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "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.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "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.16.8", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", - "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", - "dev": true, - "dependencies": { - "@babel/helper-function-name": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.8", - "@babel/types": "^7.16.8" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz", - "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==", - "dev": true, - "dependencies": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz", - "integrity": "sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz", - "integrity": "sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", - "@babel/plugin-proposal-optional-chaining": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" - } - }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz", - "integrity": "sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-remap-async-to-generator": "^7.16.8", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz", - "integrity": "sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.17.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz", - "integrity": "sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.17.6", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.12.0" - } - }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", - "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz", - "integrity": "sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz", - "integrity": "sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz", - "integrity": "sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz", - "integrity": "sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", - "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz", - "integrity": "sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.17.0", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", - "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz", - "integrity": "sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.16.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz", - "integrity": "sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw==", - "dev": true, - "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.16.10", - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz", - "integrity": "sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "@babel/helper-create-class-features-plugin": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz", - "integrity": "sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" - }, - "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", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz", - "integrity": "sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==", - "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-async-to-generator": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz", - "integrity": "sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-remap-async-to-generator": "^7.16.8" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", - "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", - "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-block-scoping": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz", - "integrity": "sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==", - "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-classes": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz", - "integrity": "sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", - "@babel/helper-optimise-call-expression": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-replace-supers": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz", - "integrity": "sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==", - "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-destructuring": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz", - "integrity": "sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==", - "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-dotall-regex": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", - "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz", - "integrity": "sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==", - "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-exponentiation-operator": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", - "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", - "dev": true, - "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz", - "integrity": "sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==", - "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-function-name": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", - "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", - "dev": true, - "dependencies": { - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz", - "integrity": "sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==", - "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-member-expression-literals": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", - "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", - "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-modules-amd": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz", - "integrity": "sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.9.tgz", - "integrity": "sha512-2TBFd/r2I6VlYn0YRTz2JdazS+FoUuQ2rIFHoAxtyP/0G3D82SBLaRq9rnUkpqlLg03Byfl/+M32mpxjO6KaPw==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-simple-access": "^7.17.7", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz", - "integrity": "sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==", - "dev": true, - "dependencies": { - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz", - "integrity": "sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==", - "dev": true, - "dependencies": { - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz", - "integrity": "sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/plugin-transform-new-target": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz", - "integrity": "sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==", - "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-object-super": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", - "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-replace-supers": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz", - "integrity": "sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==", - "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-property-literals": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", - "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", - "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-regenerator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.17.9.tgz", - "integrity": "sha512-Lc2TfbxR1HOyn/c6b4Y/b6NHoTb67n/IoWLxTu4kC7h4KQnWlhCq2S8Tx0t2SVvv5Uu87Hs+6JEJ5kt2tYGylQ==", - "dev": true, - "dependencies": { - "regenerator-transform": "^0.15.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz", - "integrity": "sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==", - "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-shorthand-properties": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", - "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", - "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-spread": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz", - "integrity": "sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", - "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", - "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-template-literals": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz", - "integrity": "sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==", - "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-typeof-symbol": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz", - "integrity": "sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==", - "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-unicode-escapes": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz", - "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==", - "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-unicode-regex": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", - "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env": { - "version": "7.16.11", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.11.tgz", - "integrity": "sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.16.8", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-validator-option": "^7.16.7", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.16.7", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.16.7", - "@babel/plugin-proposal-async-generator-functions": "^7.16.8", - "@babel/plugin-proposal-class-properties": "^7.16.7", - "@babel/plugin-proposal-class-static-block": "^7.16.7", - "@babel/plugin-proposal-dynamic-import": "^7.16.7", - "@babel/plugin-proposal-export-namespace-from": "^7.16.7", - "@babel/plugin-proposal-json-strings": "^7.16.7", - "@babel/plugin-proposal-logical-assignment-operators": "^7.16.7", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7", - "@babel/plugin-proposal-numeric-separator": "^7.16.7", - "@babel/plugin-proposal-object-rest-spread": "^7.16.7", - "@babel/plugin-proposal-optional-catch-binding": "^7.16.7", - "@babel/plugin-proposal-optional-chaining": "^7.16.7", - "@babel/plugin-proposal-private-methods": "^7.16.11", - "@babel/plugin-proposal-private-property-in-object": "^7.16.7", - "@babel/plugin-proposal-unicode-property-regex": "^7.16.7", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.16.7", - "@babel/plugin-transform-async-to-generator": "^7.16.8", - "@babel/plugin-transform-block-scoped-functions": "^7.16.7", - "@babel/plugin-transform-block-scoping": "^7.16.7", - "@babel/plugin-transform-classes": "^7.16.7", - "@babel/plugin-transform-computed-properties": "^7.16.7", - "@babel/plugin-transform-destructuring": "^7.16.7", - "@babel/plugin-transform-dotall-regex": "^7.16.7", - "@babel/plugin-transform-duplicate-keys": "^7.16.7", - "@babel/plugin-transform-exponentiation-operator": "^7.16.7", - "@babel/plugin-transform-for-of": "^7.16.7", - "@babel/plugin-transform-function-name": "^7.16.7", - "@babel/plugin-transform-literals": "^7.16.7", - "@babel/plugin-transform-member-expression-literals": "^7.16.7", - "@babel/plugin-transform-modules-amd": "^7.16.7", - "@babel/plugin-transform-modules-commonjs": "^7.16.8", - "@babel/plugin-transform-modules-systemjs": "^7.16.7", - "@babel/plugin-transform-modules-umd": "^7.16.7", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.16.8", - "@babel/plugin-transform-new-target": "^7.16.7", - "@babel/plugin-transform-object-super": "^7.16.7", - "@babel/plugin-transform-parameters": "^7.16.7", - "@babel/plugin-transform-property-literals": "^7.16.7", - "@babel/plugin-transform-regenerator": "^7.16.7", - "@babel/plugin-transform-reserved-words": "^7.16.7", - "@babel/plugin-transform-shorthand-properties": "^7.16.7", - "@babel/plugin-transform-spread": "^7.16.7", - "@babel/plugin-transform-sticky-regex": "^7.16.7", - "@babel/plugin-transform-template-literals": "^7.16.7", - "@babel/plugin-transform-typeof-symbol": "^7.16.7", - "@babel/plugin-transform-unicode-escapes": "^7.16.7", - "@babel/plugin-transform-unicode-regex": "^7.16.7", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.16.8", - "babel-plugin-polyfill-corejs2": "^0.3.0", - "babel-plugin-polyfill-corejs3": "^0.5.0", - "babel-plugin-polyfill-regenerator": "^0.3.0", - "core-js-compat": "^3.20.2", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-env/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/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/register": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.17.7.tgz", - "integrity": "sha512-fg56SwvXRifootQEDQAu1mKdjh5uthPzdO0N6t358FktfL4XjAVXuH58ULoiW8mesxiOgNIrxiImqEwv0+hRRA==", - "dev": true, - "dependencies": { - "clone-deep": "^4.0.1", - "find-cache-dir": "^2.0.0", - "make-dir": "^2.1.0", - "pirates": "^4.0.5", - "source-map-support": "^0.5.16" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/runtime": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.9.tgz", - "integrity": "sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg==", - "dev": true, - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/template": { - "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.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", - "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.2.tgz", - "integrity": "sha512-lTVWHs7O2hjBFZunXTZYnYqtB9GakA1lnxIf+gKq2nY5gxkkNi/lQvveW6t8gFdOHTg6nG50Xs95PrLqVpcaLg==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.3.1", - "globals": "^13.9.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/espree": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", - "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", - "dev": true, - "dependencies": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc/node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", - "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/eslintrc/node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/@eslint/eslintrc/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true, - "optional": true - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.9.5", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", - "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz", - "integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==", - "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.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@js-joda/core": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/@js-joda/core/-/core-4.3.1.tgz", - "integrity": "sha512-oeaetlodcqVsiZDxnEcqsbs+sXBkASxua0mXs5OXuPQXz3/wdPTMlxwfQ4z2HKcOik3S9voW3QJkp/KLWDhvRQ==" - }, - "node_modules/@mapbox/node-pre-gyp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.9.tgz", - "integrity": "sha512-aDF3S3rK9Q2gey/WAttUlISduDItz5BU3306M9Eyv6/oS40aMprnopshtlKTykxRNIBEZuRMaZAnbrQ4QtKGyw==", - "dev": true, - "dependencies": { - "detect-libc": "^2.0.0", - "https-proxy-agent": "^5.0.0", - "make-dir": "^3.1.0", - "node-fetch": "^2.6.7", - "nopt": "^5.0.0", - "npmlog": "^5.0.1", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.11" - }, - "bin": { - "node-pre-gyp": "bin/node-pre-gyp" - } - }, - "node_modules/@mapbox/node-pre-gyp/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/@mapbox/node-pre-gyp/node_modules/make-dir/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/@mapbox/node-pre-gyp/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", - "dev": true, - "optional": true, - "dependencies": { - "@gar/promisify": "^1.0.1", - "semver": "^7.3.5" - } - }, - "node_modules/@npmcli/fs/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "optional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/move-file": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", - "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", - "dev": true, - "optional": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@opentelemetry/api": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.4.tgz", - "integrity": "sha512-BuJuXRSJNQ3QoKA6GWWDyuLpOUck+9hAXNMCnrloc1aWVoy6Xq6t9PUV08aBZ4Lutqq2LEHM486bpZqoViScog==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@rollup/plugin-babel": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", - "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@rollup/pluginutils": "^3.1.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "@types/babel__core": "^7.1.9", - "rollup": "^1.20.0||^2.0.0" - }, - "peerDependenciesMeta": { - "@types/babel__core": { - "optional": true - } - } - }, - "node_modules/@rollup/plugin-commonjs": { - "version": "22.0.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-22.0.0.tgz", - "integrity": "sha512-Ktvf2j+bAO+30awhbYoCaXpBcyPmJbaEUYClQns/+6SNCYFURbvBiNbWgHITEsIgDDWCDUclWRKEuf8cwZCFoQ==", - "dev": true, - "dependencies": { - "@rollup/pluginutils": "^3.1.0", - "commondir": "^1.0.1", - "estree-walker": "^2.0.1", - "glob": "^7.1.6", - "is-reference": "^1.2.1", - "magic-string": "^0.25.7", - "resolve": "^1.17.0" - }, - "engines": { - "node": ">= 12.0.0" - }, - "peerDependencies": { - "rollup": "^2.68.0" - } - }, - "node_modules/@rollup/plugin-commonjs/node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/@rollup/plugin-commonjs/node_modules/magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.8" - } - }, - "node_modules/@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", - "dev": true, - "dependencies": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" - }, - "engines": { - "node": ">= 8.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0" - } - }, - "node_modules/@tediousjs/connection-string": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tediousjs/connection-string/-/connection-string-0.3.0.tgz", - "integrity": "sha512-d/keJiNKfpHo+GmSB8QcsAwBx8h+V1UbdozA5TD+eSLXprNY53JAYub47J9evsSKWDdNG5uVj0FiMozLKuzowQ==" - }, - "node_modules/@themost/common": { - "version": "2.5.12", - "resolved": "https://registry.npmjs.org/@themost/common/-/common-2.5.12.tgz", - "integrity": "sha512-oUUuXFUuGq0MXztUzApkAx7YObqQ133YAN347yVW38o1/RXMIBvRUzFBC+/SZLlunE5vve4jvSppYAdxQQYlZA==", - "peer": true, - "dependencies": { - "async": "^2.6.4", - "blueimp-md5": "^2.7.0", - "es6-promise": "^4.2.8", - "events": "^3.2.0", - "hashmap": "^2.3.0", - "lodash": "^4.17.21", - "sprintf-js": "^1.1.2", - "symbol": "^0.3.1" - } - }, - "node_modules/@themost/common/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "peer": true, - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/@themost/data": { - "version": "2.6.32", - "resolved": "https://registry.npmjs.org/@themost/data/-/data-2.6.32.tgz", - "integrity": "sha512-epNH0cc7O2v+vEQM/zyb7E6jnUMFaVODuhSVs1he3ybNnxGYI/v8upAMml/8LSqhHZguiLkvqjAQS7QmBsD1AA==", - "dev": true, - "dependencies": { - "async": "^2.6.4", - "lodash": "^4.17.21", - "moment": "^2.29.2", - "node-cache": "^1.1.0", - "pluralize": "^7.0.0", - "q": "^1.4.1", - "sprintf-js": "^1.1.2", - "symbol": "^0.3.1" - }, - "engines": { - "node": ">=8.17.0" - }, - "peerDependencies": { - "@themost/common": "^2.5.6", - "@themost/query": "^2.5.8", - "@themost/xml": "^2.5.2" - } - }, - "node_modules/@themost/data/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/@themost/query": { - "version": "2.5.9", - "resolved": "https://registry.npmjs.org/@themost/query/-/query-2.5.9.tgz", - "integrity": "sha512-UuW/dZC6JE/FkJgrcYFMtsrkUcEvYxf52QQ8jmeb6IgNRq9TP7sD8nSCpqNC4/ljeK37jAS6+JpIC82QBT3I0A==", - "peer": true, - "dependencies": { - "async": "^2.6.4", - "esprima": "^4.0.0", - "lodash": "^4.17.15", - "sprintf": "^0.1.5", - "symbol": "^0.3.1" - }, - "peerDependencies": { - "@themost/common": "^2.5.0" - } - }, - "node_modules/@themost/query/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "peer": true, - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/@themost/sqlite": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/@themost/sqlite/-/sqlite-2.6.4.tgz", - "integrity": "sha512-krrQ6/YgVi5cj69/egCvukkFzx795lOxekmQ7eVjn4KIwq8ma5a1MMBC2jTS8HFnkX6AmdU9burDnWSOa7DyfA==", - "dev": true, - "dependencies": { - "async": "^2.6.4", - "package-lock-only": "^0.0.4", - "sqlite3": "^5.0.7" - }, - "engines": { - "node": ">=8" - }, - "peerDependencies": { - "@themost/common": ">=2.5.0 < 3", - "@themost/query": ">=2.5.0 < 3" - } - }, - "node_modules/@themost/sqlite/node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "dependencies": { - "lodash": "^4.17.14" - } - }, - "node_modules/@themost/xml": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@themost/xml/-/xml-2.5.2.tgz", - "integrity": "sha512-J3qXDJ/Rey5Tri8Swb4ghF7TRaoQ4NXjCsXiyf1GKNAhN4nn4XtfMwIhsrN9LI5z9TUZOut6LOK9PMWDVWRrpA==", - "dev": true - }, - "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==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/@types/async": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.12.tgz", - "integrity": "sha512-4i4w4tfNDo73BOjk0qHcB2YJ8A2SjITCrU4BTsgdJFTsVr6atPDXa0T9r0QZTrX3axtWwkqpZqF4B3gR0TqBGw==", - "dev": true - }, - "node_modules/@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true - }, - "node_modules/@types/jasmine": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.14.tgz", - "integrity": "sha512-Fkgk536sHPqcOtd+Ow+WiUNuk0TSo/BntKkF8wSvcd6M2FvPjeXcUE6Oz/bwDZiUZEaXLslAgw00Q94Pnx6T4w==", - "dev": true - }, - "node_modules/@types/mssql": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@types/mssql/-/mssql-7.1.5.tgz", - "integrity": "sha512-+I/4wNTUlZVxWSDo8BBo3Hw7aAKvmH+0JiovF3aW7NqjOvZZNa1xeqyjp7BBiktZx1wiV/ZKAxi21viAR53vjQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/tedious": "*", - "tarn": "^3.0.1" - } - }, - "node_modules/@types/node": { - "version": "17.0.27", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.27.tgz", - "integrity": "sha512-4/Ke7bbWOasuT3kceBZFGakP1dYN2XFd8v2l9bqF2LNWrmeU07JLpp56aEeG6+Q3olqO5TvXpW0yaiYnZJ5CXg==" - }, - "node_modules/@types/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==", - "dependencies": { - "@types/node": "*", - "form-data": "^3.0.0" - } - }, - "node_modules/@types/node-fetch/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==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@types/tedious": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/@types/tedious/-/tedious-4.0.7.tgz", - "integrity": "sha512-FC88ySU9W4LN6K7ZjPprp2qKyJ4tl3IaWmbGeZP98LXnTntXnV1J/NUeBAMKEqnfOQFSSXIJ8ls4o+ucZIvY9w==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/tunnel": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/@types/tunnel/-/tunnel-0.0.3.tgz", - "integrity": "sha512-sOUTGn6h1SfQ+gbgqC364jLFBw2lnFqkgF3q0WovEHRLMrVD1sd5aufqi/aJObLekJO+Aq5z646U4Oxy6shXMA==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agentkeepalive": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", - "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", - "dev": true, - "optional": true, - "dependencies": { - "debug": "^4.1.0", - "depd": "^1.1.2", - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "optional": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/are-we-there-yet": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", - "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/async": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", - "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "node_modules/axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "dependencies": { - "follow-redirects": "^1.14.0" - } - }, - "node_modules/babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "dependencies": { - "object.assign": "^4.1.0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz", - "integrity": "sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.13.11", - "@babel/helper-define-polyfill-provider": "^0.3.1", - "semver": "^6.1.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-corejs2/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-plugin-polyfill-corejs3": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz", - "integrity": "sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.1", - "core-js-compat": "^3.21.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz", - "integrity": "sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.3.1" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/bl": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-5.0.0.tgz", - "integrity": "sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==", - "dependencies": { - "buffer": "^6.0.3", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/blueimp-md5": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", - "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", - "peer": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/browserslist": { - "version": "4.20.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz", - "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001332", - "electron-to-chromium": "^1.4.118", - "escalade": "^3.1.1", - "node-releases": "^2.0.3", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "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.2.1" - } - }, - "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", - "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=" - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "optional": true, - "dependencies": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001332", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz", - "integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ] - }, - "node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "optional": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "dev": true, - "engines": { - "node": ">=0.1.90" - } - }, - "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==", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/commander": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.2.0.tgz", - "integrity": "sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==", - "engines": { - "node": "^12.20.0 || >=14" - } - }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } - }, - "node_modules/convert-source-map/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/core-js-compat": { - "version": "3.22.2", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.22.2.tgz", - "integrity": "sha512-Fns9lU06ZJ07pdfmPMu7OnkIKGPKDzXKIiuGlSvHHapwqMUF2QnnsWwtueFZtSyZEilP0o6iUeHQwpn7LxtLUw==", - "dev": true, - "dependencies": { - "browserslist": "^4.20.2", - "semver": "7.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "engines": { - "node": ">=8" - } - }, - "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "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=", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true - }, - "node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true, - "optional": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/detect-libc": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", - "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/dotenv": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", - "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ecdsa-sig-formatter": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", - "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", - "dependencies": { - "safe-buffer": "^5.0.1" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.4.122", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.122.tgz", - "integrity": "sha512-VuLNxTIt8sBWIT2sd186xPd18Y8KcK8myLd9nMdSJOYZwFUxxbLVmX/T1VX+qqaytRlrYYQv39myxJdXtu7Ysw==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "optional": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "optional": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "dev": true, - "optional": true - }, - "node_modules/es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "peer": true - }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/eslint": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.14.0.tgz", - "integrity": "sha512-3/CE4aJX7LNEiE3i6FeodHmI/38GZtWCsAtsymScmzYapx8q1nVVb+eLcLSzATmCPXw5pT4TqVs1E0OmxAd9tw==", - "dev": true, - "dependencies": { - "@eslint/eslintrc": "^1.2.2", - "@humanwhocodes/config-array": "^0.9.2", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", - "globals": "^13.6.0", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "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/eslint-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/eslint/node_modules/acorn": { - "version": "8.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.1.tgz", - "integrity": "sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/eslint/node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/eslint/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/eslint/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/eslint/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/eslint/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/eslint/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/eslint/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/eslint/node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/espree": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", - "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", - "dev": true, - "dependencies": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/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/eslint/node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/eslint/node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/eslint/node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", - "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/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/eslint/node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/eslint/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/eslint/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/eslint/node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/eslint/node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/eslint/node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/eslint/node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/eslint/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/eslint/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/eslint/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/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/eslint/node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esquery/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/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^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", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "node_modules/find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/flatted": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz", - "integrity": "sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==", - "dev": true - }, - "node_modules/follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "node_modules/fsevents": { - "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/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "node_modules/gauge": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", - "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.2", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.1", - "object-assign": "^4.1.1", - "signal-exit": "^3.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true, - "optional": true - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true - }, - "node_modules/hashmap": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/hashmap/-/hashmap-2.4.0.tgz", - "integrity": "sha512-Ngj48lhnxJdnBAEVbubKBJuN1elfVLZJs94ZixRi98X3GCU4v6pgj9qRkHt6H8WaVJ69Wv0r1GhtS7hvF9zCgg==", - "peer": true, - "engines": { - "node": "*" - } - }, - "node_modules/http-cache-semantics": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", - "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", - "dev": true, - "optional": true - }, - "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==", - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", - "dev": true, - "optional": true, - "dependencies": { - "ms": "^2.0.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true, - "optional": true - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/ip": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", - "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==", - "dev": true, - "optional": true - }, - "node_modules/is-core-module": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", - "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", - "dev": true, - "optional": true - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-reference": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", - "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", - "dev": true, - "dependencies": { - "@types/estree": "*" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/jasmine": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-4.1.0.tgz", - "integrity": "sha512-4VhjbUgwfNS9CBnUMoSWr9tdNgOoOhNIjAD8YRxTn+PmOf4qTSC0Uqhk66dWGnz2vJxtNIU0uBjiwnsp4Ud9VA==", - "dev": true, - "dependencies": { - "glob": "^7.1.6", - "jasmine-core": "^4.1.0" - }, - "bin": { - "jasmine": "bin/jasmine.js" - } - }, - "node_modules/jasmine-core": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.1.0.tgz", - "integrity": "sha512-8E8BiffCL8sBwK1zU9cbavLe8xpJAgOduSJ6N8PJVv8VosQ/nxVTuXj2kUeHxTlZBVvh24G19ga7xdiaxlceKg==", - "dev": true - }, - "node_modules/jasmine-spec-reporter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-7.0.0.tgz", - "integrity": "sha512-OtC7JRasiTcjsaCBPtMO0Tl8glCejM4J4/dNuOJdA8lBjz4PmWjYQ6pzb0uzpBNAWJMDudYuj9OdXJWqM2QTJg==", - "dev": true, - "dependencies": { - "colors": "1.4.0" - } - }, - "node_modules/jsbi": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/jsbi/-/jsbi-3.2.5.tgz", - "integrity": "sha512-aBE4n43IPvjaddScbvWRA2YlTzKEynHzu7MqOyTipdHucf/VxS63ViCjxYRg86M8Rxwbt/GfzHl1kKERkt45fQ==" - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonwebtoken": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", - "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", - "dependencies": { - "jws": "^3.2.2", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=4", - "npm": ">=1.4.28" - } - }, - "node_modules/jsonwebtoken/node_modules/jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "dependencies": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/jsonwebtoken/node_modules/jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "dependencies": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/jwa": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz", - "integrity": "sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==", - "dependencies": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/jws": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", - "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==", - "dependencies": { - "jwa": "^2.0.0", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "node_modules/lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=" - }, - "node_modules/lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" - }, - "node_modules/lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=" - }, - "node_modules/lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" - }, - "node_modules/lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" - }, - "node_modules/lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" - }, - "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/magic-string": { - "version": "0.26.1", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.1.tgz", - "integrity": "sha512-ndThHmvgtieXe8J/VGPjG+Apu7v7ItcD5mhEIvOscWjPF/ccOiLxHaSuCAS2G+3x4GKsAbT8u7zdyamupui8Tg==", - "dev": true, - "dependencies": { - "sourcemap-codec": "^1.4.8" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/make-fetch-happen": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", - "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", - "dev": true, - "optional": true, - "dependencies": { - "agentkeepalive": "^4.1.3", - "cacache": "^15.2.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^6.0.0", - "minipass": "^3.1.3", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^1.3.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.2", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^6.0.0", - "ssri": "^8.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "optional": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-fetch": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", - "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", - "dev": true, - "optional": true, - "dependencies": { - "minipass": "^3.1.0", - "minipass-sized": "^1.0.3", - "minizlib": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, - "optionalDependencies": { - "encoding": "^0.1.12" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "optional": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "optional": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "dev": true, - "optional": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/module-alias": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/module-alias/-/module-alias-2.2.2.tgz", - "integrity": "sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q==", - "dev": true - }, - "node_modules/moment": { - "version": "2.29.3", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz", - "integrity": "sha512-c6YRvhEo//6T2Jz/vVtYzqBzwvPT95JBQ+smCytzf7c50oMZRsR/a4w88aD34I+/QVSfnoAnSBFPJHItlOMJVw==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/mssql": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/mssql/-/mssql-8.1.0.tgz", - "integrity": "sha512-S7j4MoanTCLM09I+wMI9thTS2342mgxCpOQ9kpnFiG3P1NStuQMhPILLOgOt6hwMa/ctfTUKl7eJpB5XGPoe6A==", - "dependencies": { - "@tediousjs/connection-string": "^0.3.0", - "commander": "^9.1.0", - "debug": "^4.3.3", - "rfdc": "^1.3.0", - "tarn": "^3.0.2", - "tedious": "^14.0.0" - }, - "bin": { - "mssql": "bin/mssql" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/native-duplexpair": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/native-duplexpair/-/native-duplexpair-1.0.0.tgz", - "integrity": "sha1-eJkHjmS/PIo9cyYBs9QP8F21j6A=" - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "optional": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/node-abort-controller": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.0.1.tgz", - "integrity": "sha512-/ujIVxthRs+7q6hsdjHMaj8hRG9NuWmwrz+JdRwZ14jdFoKSkm+vDsCbF9PLpnSqjaWQJuTmVtcWHNLr+vrOFw==" - }, - "node_modules/node-addon-api": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", - "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==", - "dev": true - }, - "node_modules/node-cache": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/node-cache/-/node-cache-1.1.0.tgz", - "integrity": "sha1-GGNlAy0jlb3/c0BBePsryJgaznA=", - "dev": true, - "dependencies": { - "underscore": "*" - }, - "engines": { - "node": ">= 0.4.6" - } - }, - "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "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-gyp": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz", - "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", - "dev": true, - "optional": true, - "dependencies": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^9.1.0", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, - "engines": { - "node": ">= 10.12.0" - } - }, - "node_modules/node-gyp/node_modules/are-we-there-yet": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz", - "integrity": "sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw==", - "dev": true, - "optional": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16" - } - }, - "node_modules/node-gyp/node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "optional": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "optional": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/node-gyp/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "optional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-releases": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", - "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", - "dev": true - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/npmlog": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", - "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^2.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^3.0.0", - "set-blocking": "^2.0.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "optional": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/package-lock-only": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/package-lock-only/-/package-lock-only-0.0.4.tgz", - "integrity": "sha512-fV1YHeTMWH5LKmdVqfWskm2/SG0iF2IrxJn3ziaPVx9CnpecGJzt8xXtLV+CYINENZwPFMtbxO5qupz0asNz1A==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "chalk": "^2.4.1" - } - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parent-module/node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "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/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "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.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/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/pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/pluralize": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", - "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "engines": { - "node": ">= 0.6.0" - } - }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true, - "optional": true - }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "dev": true, - "optional": true, - "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" - } - }, - "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==" - }, - "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true, - "engines": { - "node": ">=0.6.0", - "teleport": ">=0.2.0" - } - }, - "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==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true - }, - "node_modules/regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.4" - } - }, - "node_modules/regexpu-core": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", - "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", - "dev": true, - "dependencies": { - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "node_modules/regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", - "dev": true, - "dependencies": { - "jsesc": "~0.5.0" - }, - "bin": { - "regjsparser": "bin/parser" - } - }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - } - }, - "node_modules/resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true, - "optional": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==" - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rollup": { - "version": "2.71.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.71.1.tgz", - "integrity": "sha512-lMZk3XfUBGjrrZQpvPSoXcZSfKcJ2Bgn+Z0L1MoW2V8Wh7BVM+LOBJTPo16yul2MwL59cXedzW1ruq3rCjSRgw==", - "dev": true, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=10.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/rollup-plugin-dts": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-4.2.1.tgz", - "integrity": "sha512-eaxQZNUJ5iQcxNGlpJ1CUgG4OSVqWjDZ3nNSWBIoGrpcote2aNphSe1RJOaSYkb8dwn3o+rYm1vvld/5z3EGSQ==", - "dev": true, - "dependencies": { - "magic-string": "^0.26.1" - }, - "engines": { - "node": ">=v12.22.11" - }, - "funding": { - "url": "https://github.com/sponsors/Swatinem" - }, - "optionalDependencies": { - "@babel/code-frame": "^7.16.7" - }, - "peerDependencies": { - "rollup": "^2.70", - "typescript": "^4.6" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/signal-exit": { - "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/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "optional": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", - "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", - "dev": true, - "optional": true, - "dependencies": { - "ip": "^1.1.5", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.0.tgz", - "integrity": "sha512-wWqJhjb32Q6GsrUqzuFkukxb/zzide5quXYcMVpIjxalDBBYy2nqKCFQ/9+Ie4dvOYSQdOk3hUlZSdzZOd3zMQ==", - "dev": true, - "optional": true, - "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/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/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true - }, - "node_modules/sprintf": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/sprintf/-/sprintf-0.1.5.tgz", - "integrity": "sha1-j4PjmpMXwaUCy324BQ5Rxnn27c8=", - "deprecated": "The sprintf package is deprecated in favor of sprintf-js.", - "peer": true, - "engines": { - "node": ">=0.2.4" - } - }, - "node_modules/sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" - }, - "node_modules/sqlite3": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.0.8.tgz", - "integrity": "sha512-f2ACsbSyb2D1qFFcqIXPfFscLtPVOWJr5GmUzYxf4W+0qelu5MWrR+FAQE1d5IUArEltBrzSDxDORG8P/IkqyQ==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "@mapbox/node-pre-gyp": "^1.0.0", - "node-addon-api": "^4.2.0", - "tar": "^6.1.11" - }, - "optionalDependencies": { - "node-gyp": "8.x" - }, - "peerDependencies": { - "node-gyp": "8.x" - }, - "peerDependenciesMeta": { - "node-gyp": { - "optional": true - } - } - }, - "node_modules/ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "optional": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/stoppable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", - "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==", - "engines": { - "node": ">=4", - "npm": ">=6" - } - }, - "node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/symbol/-/symbol-0.3.1.tgz", - "integrity": "sha1-tvmpANSWpX8CQI8iGYwQndoGMEE=" - }, - "node_modules/tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", - "dev": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/tarn": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/tarn/-/tarn-3.0.2.tgz", - "integrity": "sha512-51LAVKUSZSVfI05vjPESNc5vwqqZpbXCsU+/+wxlOrUjk2SnFTt97v9ZgQrD4YmxYW1Px6w2KjaDitCfkvgxMQ==", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/tedious": { - "version": "14.4.0", - "resolved": "https://registry.npmjs.org/tedious/-/tedious-14.4.0.tgz", - "integrity": "sha512-vZQzqg3o7S1CddD1JxwxC+/Crq4kNSHV7NCiK64txURZKKvnc0wFF4mU0eeX1NXkw5m8mSbLX8wSj9EUZAN+fA==", - "dependencies": { - "@azure/identity": "^2.0.1", - "@azure/keyvault-keys": "^4.3.0", - "@js-joda/core": "^4.0.0", - "bl": "^5.0.0", - "iconv-lite": "^0.6.3", - "jsbi": "^3.2.1", - "native-duplexpair": "^1.0.0", - "node-abort-controller": "^3.0.0", - "punycode": "^2.1.0", - "sprintf-js": "^1.1.2" - }, - "engines": { - "node": ">= 12" - } - }, - "node_modules/tedious/node_modules/sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" - }, - "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/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/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==", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" - }, - "node_modules/tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" - }, - "node_modules/tunnel": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", - "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", - "engines": { - "node": ">=0.6.11 <=0.7.0 || >=0.7.3" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typescript": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", - "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/underscore": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.3.tgz", - "integrity": "sha512-QvjkYpiD+dJJraRA8+dGAU4i7aBbb2s0S3jA45TFOvg2VgqvdCDd/3N6CqA8gluk1W91GLoXg5enMUx560QzuA==", - "dev": true - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^2.0.0", - "unicode-property-aliases-ecmascript": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "optional": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "optional": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } - }, - "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==", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/v8-compile-cache": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", - "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", - "dev": true - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "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/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "node_modules/xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "engines": { - "node": ">=4.0" - } - }, - "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 - } - }, "dependencies": { "@ampproject/remapping": { "version": "2.1.2", @@ -7307,8 +1397,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} + "dev": true }, "ajv": { "version": "6.12.6", @@ -7582,33 +1671,6 @@ "resolved": "https://registry.npmjs.org/@tediousjs/connection-string/-/connection-string-0.3.0.tgz", "integrity": "sha512-d/keJiNKfpHo+GmSB8QcsAwBx8h+V1UbdozA5TD+eSLXprNY53JAYub47J9evsSKWDdNG5uVj0FiMozLKuzowQ==" }, - "@themost/common": { - "version": "2.5.12", - "resolved": "https://registry.npmjs.org/@themost/common/-/common-2.5.12.tgz", - "integrity": "sha512-oUUuXFUuGq0MXztUzApkAx7YObqQ133YAN347yVW38o1/RXMIBvRUzFBC+/SZLlunE5vve4jvSppYAdxQQYlZA==", - "peer": true, - "requires": { - "async": "^2.6.4", - "blueimp-md5": "^2.7.0", - "es6-promise": "^4.2.8", - "events": "^3.2.0", - "hashmap": "^2.3.0", - "lodash": "^4.17.21", - "sprintf-js": "^1.1.2", - "symbol": "^0.3.1" - }, - "dependencies": { - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "peer": true, - "requires": { - "lodash": "^4.17.14" - } - } - } - }, "@themost/data": { "version": "2.6.32", "resolved": "https://registry.npmjs.org/@themost/data/-/data-2.6.32.tgz", @@ -7636,30 +1698,6 @@ } } }, - "@themost/query": { - "version": "2.5.9", - "resolved": "https://registry.npmjs.org/@themost/query/-/query-2.5.9.tgz", - "integrity": "sha512-UuW/dZC6JE/FkJgrcYFMtsrkUcEvYxf52QQ8jmeb6IgNRq9TP7sD8nSCpqNC4/ljeK37jAS6+JpIC82QBT3I0A==", - "peer": true, - "requires": { - "async": "^2.6.4", - "esprima": "^4.0.0", - "lodash": "^4.17.15", - "sprintf": "^0.1.5", - "symbol": "^0.3.1" - }, - "dependencies": { - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "peer": true, - "requires": { - "lodash": "^4.17.14" - } - } - } - }, "@themost/sqlite": { "version": "2.6.4", "resolved": "https://registry.npmjs.org/@themost/sqlite/-/sqlite-2.6.4.tgz", @@ -7910,12 +1948,6 @@ "readable-stream": "^3.4.0" } }, - "blueimp-md5": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.19.0.tgz", - "integrity": "sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w==", - "peer": true - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -8233,6 +2265,7 @@ "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, "optional": true, "requires": { "iconv-lite": "^0.6.2" @@ -8252,12 +2285,6 @@ "dev": true, "optional": true }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "peer": true - }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -8323,8 +2350,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} + "dev": true }, "ajv": { "version": "6.12.6", @@ -8601,12 +2627,6 @@ } } }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "peer": true - }, "esquery": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", @@ -8857,12 +2877,6 @@ "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", "dev": true }, - "hashmap": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/hashmap/-/hashmap-2.4.0.tgz", - "integrity": "sha512-Ngj48lhnxJdnBAEVbubKBJuN1elfVLZJs94ZixRi98X3GCU4v6pgj9qRkHt6H8WaVJ69Wv0r1GhtS7hvF9zCgg==", - "peer": true - }, "http-cache-semantics": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", @@ -9176,7 +3190,8 @@ "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "lodash.debounce": { "version": "4.0.8", @@ -9987,12 +4002,6 @@ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", "dev": true }, - "sprintf": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/sprintf/-/sprintf-0.1.5.tgz", - "integrity": "sha1-j4PjmpMXwaUCy324BQ5Rxnn27c8=", - "peer": true - }, "sprintf-js": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", @@ -10025,6 +4034,17 @@ "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==" }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -10040,17 +4060,6 @@ } } }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, "strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -10069,7 +4078,8 @@ "symbol": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/symbol/-/symbol-0.3.1.tgz", - "integrity": "sha1-tvmpANSWpX8CQI8iGYwQndoGMEE=" + "integrity": "sha1-tvmpANSWpX8CQI8iGYwQndoGMEE=", + "dev": true }, "tar": { "version": "6.1.11", diff --git a/package.json b/package.json index 75c8015..aa6e8a9 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,8 @@ "homepage": "https://github.com/themost-framework/mssql", "dependencies": { "async": "^3.2.3", - "mssql": "^8.1.0" + "mssql": "^8.1.0", + "sprintf-js": "^1.1.2" }, "peerDependencies": { "@themost/common": "^2", diff --git a/spec/DateFunctions.spec.js b/spec/DateFunctions.spec.js index c858497..18a6364 100644 --- a/spec/DateFunctions.spec.js +++ b/spec/DateFunctions.spec.js @@ -98,11 +98,11 @@ describe('DateFunctions', () => { it('should use getSeconds()', async () => { await app.executeInTestTranscaction(async (context) => { let items = await context.model('Order') - .asQueryable().where('orderDate').getSeconds().equal(45).silent().getItems(); + .asQueryable().where('orderDate').getSeconds().equal(42).silent().getItems(); expect(items).toBeInstanceOf(Array); expect(items.length).toBeGreaterThan(0); for (const item of items) { - expect(item.orderDate.getSeconds()).toEqual(45); + expect(item.orderDate.getSeconds()).toEqual(42); } }); }); diff --git a/spec/StringFunctions.spec.js b/spec/StringFunctions.spec.js index e3a56ab..5c63076 100644 --- a/spec/StringFunctions.spec.js +++ b/spec/StringFunctions.spec.js @@ -111,16 +111,16 @@ describe('StringFunctions', () => { }); }); - it('should use contains()', async () => { - await app.executeInTestTranscaction(async (context) => { - let items = await context.model('Product') - .asQueryable().where('name').contains('iMac').equal(true).getItems(); - expect(items).toBeInstanceOf(Array); - for (const item of items) { - expect(item.name.includes('iMac')).toBeTruthy(); - } - }); - }); + // it('should use contains()', async () => { + // await app.executeInTestTranscaction(async (context) => { + // let items = await context.model('Product') + // .asQueryable().where('name').contains('iMac').equal(true).getItems(); + // expect(items).toBeInstanceOf(Array); + // for (const item of items) { + // expect(item.name.includes('iMac')).toBeTruthy(); + // } + // }); + // }); }); \ No newline at end of file diff --git a/spec/TestApplication.js b/spec/TestApplication.js index 0f7c54a..3dc4384 100644 --- a/spec/TestApplication.js +++ b/spec/TestApplication.js @@ -23,7 +23,7 @@ const masterConnectionOptions = { 'server': process.env.DB_HOST, 'port': parseInt(process.env.DB_PORT, 10), 'user': process.env.DB_USER, - 'database': 'mssql' + 'database': 'master' }; if (process.env.DB_PASSWORD) { @@ -226,6 +226,7 @@ class TestApplication extends DataApplication { const formatter = new MSSqlFormatter(); const sourceTableExists = await sourceAdapter.table(model.sourceAdapter).existsAsync(); if (sourceTableExists) { + const key = model.getAttribute(model.primaryKey); // get source data let results = await sourceAdapter.executeAsync(`SELECT * FROM ${formatter.escapeName(model.sourceAdapter)}`); if (results.length > 0) { @@ -241,14 +242,14 @@ class TestApplication extends DataApplication { result[attribute.name] = LangUtils.parseBoolean(result[attribute.name]); } }); - const sql = formatter.format(new QueryExpression().insert(result).into(model.sourceAdapter)); + let sql = ''; + if (key.type === 'Counter') { + sql = `SET IDENTITY_INSERT ${formatter.escapeName(model.sourceAdapter)} ON;` + } + sql += formatter.format(new QueryExpression().insert(result).into(model.sourceAdapter)); // and execute await context.db.executeAsync(sql); } - const key = model.getAttribute(model.primaryKey); - if (key.type === 'Counter') { - // - } } } })().then(() => { diff --git a/spec/config/models/AccessLevelType.json b/spec/config/models/AccessLevelType.json index 6889a38..ac56601 100644 --- a/spec/config/models/AccessLevelType.json +++ b/spec/config/models/AccessLevelType.json @@ -14,7 +14,8 @@ "title": "ID", "description": "The identifier of the item.", "type": "Integer", - "primary": true + "primary": true, + "nullable": false } ], "privileges": [ diff --git a/src/MSSqlAdapter.js b/src/MSSqlAdapter.js index 100e89d..2d66e24 100644 --- a/src/MSSqlAdapter.js +++ b/src/MSSqlAdapter.js @@ -2,7 +2,7 @@ import mssql from 'mssql'; import {ConnectionPool} from 'mssql'; import async from 'async'; -import util from 'util'; +import { sprintf } from 'sprintf-js'; import { TraceUtils } from '@themost/common'; import { SqlUtils } from '@themost/query'; import { MSSqlFormatter } from './MSSqlFormatter'; @@ -351,7 +351,7 @@ class MSSqlAdapter { return callback(err); } if (process.env.NODE_ENV === 'development') { - TraceUtils.debug(util.format('SQL (Execution Time:%sms):%s, Parameters:%s', (new Date()).getTime() - startTime, sql, JSON.stringify(values))); + TraceUtils.debug(sprintf('SQL (Execution Time:%sms):%s, Parameters:%s', (new Date()).getTime() - startTime, sql, JSON.stringify(values))); } if (typeof query.$insert === 'undefined') { if (result.recordsets.length === 1) { @@ -442,7 +442,7 @@ class MSSqlAdapter { s = size > 0 ? (size <= 10 ? 'smallmoney' : 'money') : 'money'; break; case 'Decimal': - s = util.format('decimal(%s,%s)', (size > 0 ? size : 19), (scale > 0 ? scale : 4)); + s = sprintf('decimal(%s,%s)', (size > 0 ? size : 19), (scale > 0 ? scale : 4)); break; case 'Date': s = 'date'; @@ -457,23 +457,23 @@ class MSSqlAdapter { s = 'int'; break; case 'Duration': - s = size > 0 ? util.format('varchar(%s)', size) : 'varchar(48)'; + s = size > 0 ? sprintf('varchar(%s)', size) : 'varchar(48)'; break; case 'URL': if (size > 0) - s = util.format('varchar(%s)', size); + s = sprintf('varchar(%s)', size); else s = 'varchar(512)'; break; case 'Text': if (size > 0) - s = util.format('varchar(%s)', size); + s = sprintf('varchar(%s)', size); else s = 'varchar(512)'; break; case 'Note': if (size > 0) - s = util.format('varchar(%s)', size); + s = sprintf('varchar(%s)', size); else s = 'text'; break; @@ -634,10 +634,10 @@ class MSSqlAdapter { return self.format('[%f]', x); }).join(', '); if (strPKFields.length > 0) { - strFields += ', ' + util.format('PRIMARY KEY (%s)', strPKFields); + strFields += ', ' + sprintf('PRIMARY KEY (%s)', strPKFields); } - const strTable = util.format('[%s].[%s]', owner, table); - const sql = util.format('CREATE TABLE %s (%s)', strTable, strFields); + const strTable = sprintf('[%s].[%s]', owner, table); + const sql = sprintf('CREATE TABLE %s (%s)', strTable, strFields); self.execute(sql, null, function (err) { callback(err); }); @@ -669,7 +669,7 @@ class MSSqlAdapter { //do nothing return callback(); } - const strTable = util.format('[%s].[%s]', owner, table); + const strTable = sprintf('[%s].[%s]', owner, table); //generate SQL statement const sql = fields.map((x) => { return self.format('ALTER TABLE ' + strTable + ' ADD [%f] %t', x); @@ -705,7 +705,7 @@ class MSSqlAdapter { //do nothing return callback(); } - const strTable = util.format('[%s].[%s]', owner, table); + const strTable = sprintf('[%s].[%s]', owner, table); //generate SQL statement const sql = fields.map((x) => { return self.format('ALTER TABLE ' + strTable + ' ALTER COLUMN [%f] %t', x); @@ -716,7 +716,7 @@ class MSSqlAdapter { }, changeAsync: function (fields) { return new Promise((resolve, reject) => { - this.add(fields, (err, res) => { + this.change(fields, (err, res) => { if (err) { return reject(err); } @@ -787,7 +787,7 @@ class MSSqlAdapter { const exists = (result[0].count > 0); if (exists) { const formatter = new MSSqlFormatter(); - const sql = util.format('DROP VIEW %s.%s', formatter.escapeName(owner), formatter.escapeName(view)); + const sql = sprintf('DROP VIEW %s.%s', formatter.escapeName(owner), formatter.escapeName(view)); self.execute(sql, [], function (err) { if (err) { callback(err); @@ -826,7 +826,7 @@ class MSSqlAdapter { } try { const formatter = new MSSqlFormatter(); - const sql = 'EXECUTE(\'' + util.format('CREATE VIEW %s.%s AS ', formatter.escapeName(owner), formatter.escapeName(view)) + formatter.format(q) + '\')'; + const sql = 'EXECUTE(\'' + sprintf('CREATE VIEW %s.%s AS ', formatter.escapeName(owner), formatter.escapeName(view)) + formatter.format(q) + '\')'; self.execute(sql, [], tr); } catch (e) { diff --git a/src/MSSqlFormatter.js b/src/MSSqlFormatter.js index d6aa3f6..193a479 100644 --- a/src/MSSqlFormatter.js +++ b/src/MSSqlFormatter.js @@ -1,5 +1,5 @@ // MOST Web Framework Codename Zero Gravity Copyright (c) 2017-2022, THEMOST LP All rights reserved -import util from 'util'; +import { sprintf } from 'sprintf-js'; import { QueryField, SqlUtils, SqlFormatter } from '@themost/query'; function zeroPad(number, length) { @@ -71,7 +71,7 @@ class MSSqlFormatter extends SqlFormatter { fields.push(field.as() || field.getName()); } }); - sql = util.format('SELECT %s FROM (%s) [t0] WHERE [__RowIndex] BETWEEN %s AND %s', fields.map((x) => { + sql = sprintf('SELECT %s FROM (%s) [t0] WHERE [__RowIndex] BETWEEN %s AND %s', fields.map((x) => { return self.format(x, '%f'); }).join(', '), subQuery, parseInt(obj.$skip, 10) + 1, parseInt(obj.$skip, 10) + parseInt(obj.$take, 10)); } @@ -79,13 +79,26 @@ class MSSqlFormatter extends SqlFormatter { } /** * Implements indexOf(str,substr) expression formatter. - * @param {String} p0 The source string - * @param {String} p1 The string to search for + * @param {*} p0 The source string + * @param {*} p1 The string to search for */ $indexof(p0, p1) { + return this.$indexOf(p0, p1); + } + /** + * Implements indexOf(str,substr) expression formatter. + * @param {*} p0 The source string + * @param {*} p1 The string to search for + */ + $indexOf(p0, p1) { p1 = '%' + p1 + '%'; return '(PATINDEX('.concat(this.escape(p1), ',', this.escape(p0), ')-1)'); } + + $length(p0) { + return sprintf('LEN(%s)', this.escape(p0)); + } + /** * Implements simple regular expression formatter. Important Note: MS SQL Server does not provide a core sql function for regular expression matching. * @param {string|*} p0 The source string or field @@ -108,10 +121,10 @@ class MSSqlFormatter extends SqlFormatter { s1 = s1 + '%'; } //use PATINDEX for text searching - return util.format('PATINDEX(%s,%s) >= 1', this.escape(s1), this.escape(p0)); + return sprintf('PATINDEX(%s,%s) >= 1', this.escape(s1), this.escape(p0)); } $date(p0) { - return util.format(' TODATETIMEOFFSET (%s,datepart(TZ,SYSDATETIMEOFFSET()))', this.escape(p0)); + return sprintf('CONVERT(date, %s)', this.escape(p0)); } /** * Escapes an object or a value and returns the equivalent sql value. @@ -160,7 +173,7 @@ class MSSqlFormatter extends SqlFormatter { */ $startswith(p0, p1) { p1 = '%' + p1 + '%'; - return util.format('PATINDEX (%s,%s)', this.escape(p1), this.escape(p0)); + return sprintf('PATINDEX (%s,%s)', this.escape(p1), this.escape(p0)); } /** * Implements contains(a,b) expression formatter. @@ -168,7 +181,7 @@ class MSSqlFormatter extends SqlFormatter { * @param p1 {*} */ $text(p0, p1) { - return util.format('(PATINDEX (%s,%s) - 1)', this.escape('%' + p1 + '%'), this.escape(p0)); + return sprintf('(PATINDEX (%s,%s) - 1)', this.escape('%' + p1 + '%'), this.escape(p0)); } /** * Implements endsWith(a,b) expression formatter. @@ -178,7 +191,7 @@ class MSSqlFormatter extends SqlFormatter { $endswith(p0, p1) { p1 = '%' + p1; // (PATINDEX('%S%', UserData.alternateName)) - return util.format('(CASE WHEN %s LIKE %s THEN 1 ELSE 0 END)', this.escape(p0), this.escape(p1)); + return sprintf('(CASE WHEN %s LIKE %s THEN 1 ELSE 0 END)', this.escape(p0), this.escape(p1)); } /** * Implements substring(str,pos) expression formatter. @@ -189,16 +202,16 @@ class MSSqlFormatter extends SqlFormatter { */ $substring(p0, pos, length) { if (length) - return util.format('SUBSTRING(%s,%s,%s)', this.escape(p0), pos.valueOf() + 1, length.valueOf()); + return sprintf('SUBSTRING(%s,%s,%s)', this.escape(p0), pos.valueOf() + 1, length.valueOf()); else - return util.format('SUBSTRING(%s,%s,%s)', this.escape(p0), pos.valueOf() + 1, 255); + return sprintf('SUBSTRING(%s,%s,%s)', this.escape(p0), pos.valueOf() + 1, 255); } /** * Implements trim(a) expression formatter. * @param p0 {*} */ $trim(p0) { - return util.format('LTRIM(RTRIM((%s)))', this.escape(p0)); + return sprintf('LTRIM(RTRIM((%s)))', this.escape(p0)); } /** * @param {*=} order @@ -208,8 +221,45 @@ class MSSqlFormatter extends SqlFormatter { if (order == null) { return 'ROW_NUMBER() OVER(ORDER BY (SELECT NULL))'; } - return util.format('ROW_NUMBER() OVER(%s)', this.format(order, '%o')); + return sprintf('ROW_NUMBER() OVER(%s)', this.format(order, '%o')); + } + + $year(p0) { + return sprintf('DATEPART(year, %s)', this.escape(p0)); + } + + $month(p0) { + return sprintf('DATEPART(month, %s)', this.escape(p0)); + } + + $dayOfMonth(p0) { + return sprintf('DATEPART(day, %s)', this.escape(p0)); } + + $day(p0) { + return this.$dayOfMonth(p0); + } + + $hour(p0) { + return sprintf('DATEPART(hour, %s)', this.escape(p0)); + } + + $minute(p0) { + return sprintf('DATEPART(minute, %s)', this.escape(p0)); + } + + $minutes(p0) { + return this.$minute(p0); + } + + $second(p0) { + return sprintf('DATEPART(second, %s)', this.escape(p0)); + } + + $seconds(p0) { + return this.$second(p0); + } + } export { From 966253736f33c97014cbc4292c703a6b31b0350c Mon Sep 17 00:00:00 2001 From: Kyriakos Barbounakis Date: Mon, 23 May 2022 10:58:06 +0000 Subject: [PATCH 3/3] 2.6.2 --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 01e405a..862170b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@themost/mssql", - "version": "2.6.1", + "version": "2.6.2", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index aa6e8a9..76438dd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@themost/mssql", - "version": "2.6.1", + "version": "2.6.2", "description": "MOST Web Framework MSSQL Data Adapter", "main": "dist/index.js", "module": "dist/index.esm.js",