From 8a9f1b2fc83c82d23457590139372a54ab27ffc0 Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Fri, 30 Jul 2021 00:02:49 +0800 Subject: [PATCH 1/6] - npm: Update devDeps. - Linting: Remove remark --- .remarkrc | 6 - package.json | 24 +- pnpm-lock.yaml | 1375 +++++++++++++++++++----------------------------- 3 files changed, 557 insertions(+), 848 deletions(-) delete mode 100644 .remarkrc diff --git a/.remarkrc b/.remarkrc deleted file mode 100644 index 0a489d0..0000000 --- a/.remarkrc +++ /dev/null @@ -1,6 +0,0 @@ -{ - "plugins": { - "lint-code-block-style": "fenced", - "lint-ordered-list-marker-value": "one" - } -} diff --git a/package.json b/package.json index 7166177..ef07f4b 100644 --- a/package.json +++ b/package.json @@ -58,25 +58,25 @@ "vm": false }, "devDependencies": { - "@babel/core": "^7.14.6", - "@babel/preset-env": "^7.14.7", + "@babel/core": "^7.14.8", + "@babel/preset-env": "^7.14.8", "@brettz9/eslint-plugin": "^1.0.3", "@rollup/plugin-babel": "^5.3.0", - "c8": "^7.7.3", + "c8": "^7.8.0", "chai": "^4.3.4", "core-js-bundle": "^3.15.2", "coveradge": "^0.7.0", - "eslint": "^7.30.0", - "eslint-config-ash-nazg": "^30.1.0", + "eslint": "^7.31.0", + "eslint-config-ash-nazg": "^31.1.1", "eslint-config-standard": "^16.0.3", "eslint-plugin-array-func": "^3.1.7", "eslint-plugin-chai-expect": "^2.2.0", "eslint-plugin-chai-friendly": "^0.7.1", - "eslint-plugin-compat": "^3.9.0", + "eslint-plugin-compat": "^3.11.1", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-html": "^6.1.2", "eslint-plugin-import": "^2.23.4", - "eslint-plugin-jsdoc": "^35.4.1", + "eslint-plugin-jsdoc": "^36.0.6", "eslint-plugin-markdown": "^2.2.0", "eslint-plugin-no-unsanitized": "^3.1.5", "eslint-plugin-no-use-extend-native": "^0.5.0", @@ -87,16 +87,13 @@ "eslint-plugin-unicorn": "^34.0.1", "http-server": "^0.12.3", "license-badger": "^0.19.0", - "mocha": "^9.0.2", + "mocha": "^9.0.3", "mocha-badge-generator": "^0.9.0", "mocha-multi-reporters": "^1.5.1", "open-cli": "^7.0.0", - "remark-cli": "^9.0.0", - "remark-lint-code-block-style": "^2.0.1", - "remark-lint-ordered-list-marker-value": "^2.0.1", - "rollup": "2.52.7", + "rollup": "2.55.0", "rollup-plugin-terser": "^7.0.2", - "typedoc": "^0.21.2", + "typedoc": "^0.21.4", "typescript": "^4.3.5" }, "keywords": [ @@ -132,7 +129,6 @@ "license-badge": "license-badger --corrections --uncategorizedLicenseTemplate \"\\${license} (\\${name} (\\${version}))\" --filteredTypes=nonempty --textTemplate \"License types\n(project, deps, and bundled devDeps)\" --packageJson --production badges/licenses-badge.svg", "license-badge-dev": "license-badger --corrections --filteredTypes=nonempty --textTemplate \"License types\n(all devDeps)\" --allDevelopment badges/licenses-badge-dev.svg", "license-badges": "npm run license-badge && npm run license-badge-dev", - "remark": "remark -q -f .", "build-docs": "typedoc --out docs/ts src --excludeExternals --tsconfig src/tsconfig.json", "open-docs": "open-cli http://localhost:8084/docs/ts/ && npm start", "coverage": "open-cli http://localhost:8084/coverage/ && npm start", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index efbd431..767d160 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,25 +1,25 @@ lockfileVersion: 5.3 specifiers: - '@babel/core': ^7.14.6 - '@babel/preset-env': ^7.14.7 + '@babel/core': ^7.14.8 + '@babel/preset-env': ^7.14.8 '@brettz9/eslint-plugin': ^1.0.3 '@rollup/plugin-babel': ^5.3.0 - c8: ^7.7.3 + c8: ^7.8.0 chai: ^4.3.4 core-js-bundle: ^3.15.2 coveradge: ^0.7.0 - eslint: ^7.30.0 - eslint-config-ash-nazg: ^30.1.0 + eslint: ^7.31.0 + eslint-config-ash-nazg: ^31.1.1 eslint-config-standard: ^16.0.3 eslint-plugin-array-func: ^3.1.7 eslint-plugin-chai-expect: ^2.2.0 eslint-plugin-chai-friendly: ^0.7.1 - eslint-plugin-compat: ^3.9.0 + eslint-plugin-compat: ^3.11.1 eslint-plugin-eslint-comments: ^3.2.0 eslint-plugin-html: ^6.1.2 eslint-plugin-import: ^2.23.4 - eslint-plugin-jsdoc: ^35.4.1 + eslint-plugin-jsdoc: ^36.0.6 eslint-plugin-markdown: ^2.2.0 eslint-plugin-no-unsanitized: ^3.1.5 eslint-plugin-no-use-extend-native: ^0.5.0 @@ -30,58 +30,52 @@ specifiers: eslint-plugin-unicorn: ^34.0.1 http-server: ^0.12.3 license-badger: ^0.19.0 - mocha: ^9.0.2 + mocha: ^9.0.3 mocha-badge-generator: ^0.9.0 mocha-multi-reporters: ^1.5.1 open-cli: ^7.0.0 - remark-cli: ^9.0.0 - remark-lint-code-block-style: ^2.0.1 - remark-lint-ordered-list-marker-value: ^2.0.1 - rollup: 2.52.7 + rollup: 2.55.0 rollup-plugin-terser: ^7.0.2 - typedoc: ^0.21.2 + typedoc: ^0.21.4 typescript: ^4.3.5 devDependencies: - '@babel/core': 7.14.6 - '@babel/preset-env': 7.14.7_@babel+core@7.14.6 - '@brettz9/eslint-plugin': 1.0.3_eslint@7.30.0 - '@rollup/plugin-babel': 5.3.0_@babel+core@7.14.6+rollup@2.52.7 - c8: 7.7.3 + '@babel/core': 7.14.8 + '@babel/preset-env': 7.14.8_@babel+core@7.14.8 + '@brettz9/eslint-plugin': 1.0.3_eslint@7.31.0 + '@rollup/plugin-babel': 5.3.0_@babel+core@7.14.8+rollup@2.55.0 + c8: 7.8.0 chai: 4.3.4 core-js-bundle: 3.15.2 coveradge: 0.7.0 - eslint: 7.30.0 - eslint-config-ash-nazg: 30.1.0_969b17ffd376dc695d41d55c1cc9088b - eslint-config-standard: 16.0.3_68aba462ebcb9819879db75ba6ea05da - eslint-plugin-array-func: 3.1.7_eslint@7.30.0 - eslint-plugin-chai-expect: 2.2.0_eslint@7.30.0 - eslint-plugin-chai-friendly: 0.7.1_eslint@7.30.0 - eslint-plugin-compat: 3.9.0_eslint@7.30.0 - eslint-plugin-eslint-comments: 3.2.0_eslint@7.30.0 + eslint: 7.31.0 + eslint-config-ash-nazg: 31.1.1_d44c2d58ce49bef429031687aa966e24 + eslint-config-standard: 16.0.3_ebdb84fef5122eacd2d98bd9212a56af + eslint-plugin-array-func: 3.1.7_eslint@7.31.0 + eslint-plugin-chai-expect: 2.2.0_eslint@7.31.0 + eslint-plugin-chai-friendly: 0.7.1_eslint@7.31.0 + eslint-plugin-compat: 3.11.1_eslint@7.31.0 + eslint-plugin-eslint-comments: 3.2.0_eslint@7.31.0 eslint-plugin-html: 6.1.2 - eslint-plugin-import: 2.23.4_eslint@7.30.0 - eslint-plugin-jsdoc: 35.4.1_eslint@7.30.0 - eslint-plugin-markdown: 2.2.0_eslint@7.30.0 - eslint-plugin-no-unsanitized: 3.1.5_eslint@7.30.0 + eslint-plugin-import: 2.23.4_eslint@7.31.0 + eslint-plugin-jsdoc: 36.0.6_eslint@7.31.0 + eslint-plugin-markdown: 2.2.0_eslint@7.31.0 + eslint-plugin-no-unsanitized: 3.1.5_eslint@7.31.0 eslint-plugin-no-use-extend-native: 0.5.0 - eslint-plugin-node: 11.1.0_eslint@7.30.0 - eslint-plugin-promise: 5.1.0_eslint@7.30.0 - eslint-plugin-sonarjs: 0.9.1_eslint@7.30.0 - eslint-plugin-standard: 4.1.0_eslint@7.30.0 - eslint-plugin-unicorn: 34.0.1_eslint@7.30.0 + eslint-plugin-node: 11.1.0_eslint@7.31.0 + eslint-plugin-promise: 5.1.0_eslint@7.31.0 + eslint-plugin-sonarjs: 0.9.1_eslint@7.31.0 + eslint-plugin-standard: 4.1.0_eslint@7.31.0 + eslint-plugin-unicorn: 34.0.1_eslint@7.31.0 http-server: 0.12.3 license-badger: 0.19.0 - mocha: 9.0.2 + mocha: 9.0.3 mocha-badge-generator: 0.9.0 - mocha-multi-reporters: 1.5.1_mocha@9.0.2 + mocha-multi-reporters: 1.5.1_mocha@9.0.3 open-cli: 7.0.0 - remark-cli: 9.0.0 - remark-lint-code-block-style: 2.0.1 - remark-lint-ordered-list-marker-value: 2.0.1 - rollup: 2.52.7 - rollup-plugin-terser: 7.0.2_rollup@2.52.7 - typedoc: 0.21.2_typescript@4.3.5 + rollup: 2.55.0 + rollup-plugin-terser: 7.0.2_rollup@2.55.0 + typedoc: 0.21.4_typescript@4.3.5 typescript: 4.3.5 packages: @@ -133,7 +127,30 @@ packages: - supports-color dev: true - /@babel/eslint-parser/7.13.14_@babel+core@7.14.6+eslint@7.30.0: + /@babel/core/7.14.8: + resolution: {integrity: sha512-/AtaeEhT6ErpDhInbXmjHcUQXH0L0TEgscfcxk1qbOvLuKCa5aZT0SOOtDKFY96/CLROwbLSKyFor6idgNaU4Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.14.5 + '@babel/generator': 7.14.8 + '@babel/helper-compilation-targets': 7.14.5_@babel+core@7.14.8 + '@babel/helper-module-transforms': 7.14.8 + '@babel/helpers': 7.14.8 + '@babel/parser': 7.14.8 + '@babel/template': 7.14.5 + '@babel/traverse': 7.14.8 + '@babel/types': 7.14.8 + convert-source-map: 1.8.0 + debug: 4.3.1 + gensync: 1.0.0-beta.2 + json5: 2.2.0 + semver: 6.3.0 + source-map: 0.5.7 + transitivePeerDependencies: + - supports-color + dev: true + + /@babel/eslint-parser/7.13.14_@babel+core@7.14.6+eslint@7.31.0: resolution: {integrity: sha512-I0HweR36D73Ibn/FfrRDMKlMqJHFwidIUgYdMpH+aXYuQC+waq59YaJ6t9e9N36axJ82v1jR041wwqDrDXEwRA==} engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} peerDependencies: @@ -141,7 +158,7 @@ packages: eslint: '>=7.5.0' dependencies: '@babel/core': 7.14.6 - eslint: 7.30.0 + eslint: 7.31.0 eslint-scope: 5.1.1 eslint-visitor-keys: 1.3.0 semver: 6.3.0 @@ -156,11 +173,20 @@ packages: source-map: 0.5.7 dev: true + /@babel/generator/7.14.8: + resolution: {integrity: sha512-cYDUpvIzhBVnMzRoY1fkSEhK/HmwEVwlyULYgn/tMQYd6Obag3ylCjONle3gdErfXBW61SVTlR9QR7uWlgeIkg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.14.8 + jsesc: 2.5.2 + source-map: 0.5.7 + dev: true + /@babel/helper-annotate-as-pure/7.14.5: resolution: {integrity: sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.14.5 + '@babel/types': 7.14.8 dev: true /@babel/helper-builder-binary-assignment-operator-visitor/7.14.5: @@ -168,7 +194,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/helper-explode-assignable-expression': 7.14.5 - '@babel/types': 7.14.5 + '@babel/types': 7.14.8 dev: true /@babel/helper-compilation-targets/7.14.5_@babel+core@7.14.6: @@ -184,13 +210,26 @@ packages: semver: 6.3.0 dev: true - /@babel/helper-create-class-features-plugin/7.14.6_@babel+core@7.14.6: + /@babel/helper-compilation-targets/7.14.5_@babel+core@7.14.8: + resolution: {integrity: sha512-v+QtZqXEiOnpO6EYvlImB6zCD2Lel06RzOPzmkz/D/XgQiUu3C/Jb1LOqSt/AIA34TYi/Q+KlT8vTQrgdxkbLw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/compat-data': 7.14.7 + '@babel/core': 7.14.8 + '@babel/helper-validator-option': 7.14.5 + browserslist: 4.16.6 + semver: 6.3.0 + dev: true + + /@babel/helper-create-class-features-plugin/7.14.6_@babel+core@7.14.8: resolution: {integrity: sha512-Z6gsfGofTxH/+LQXqYEK45kxmcensbzmk/oi8DmaQytlQCgqNZt9XQF8iqlI/SeXWVjaMNxvYvzaYw+kh42mDg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-annotate-as-pure': 7.14.5 '@babel/helper-function-name': 7.14.5 '@babel/helper-member-expression-to-functions': 7.14.7 @@ -201,28 +240,28 @@ packages: - supports-color dev: true - /@babel/helper-create-regexp-features-plugin/7.14.5_@babel+core@7.14.6: + /@babel/helper-create-regexp-features-plugin/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-annotate-as-pure': 7.14.5 regexpu-core: 4.7.1 dev: true - /@babel/helper-define-polyfill-provider/0.2.3_@babel+core@7.14.6: + /@babel/helper-define-polyfill-provider/0.2.3_@babel+core@7.14.8: resolution: {integrity: sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==} peerDependencies: '@babel/core': ^7.4.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-compilation-targets': 7.14.5_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-compilation-targets': 7.14.5_@babel+core@7.14.8 '@babel/helper-module-imports': 7.14.5 '@babel/helper-plugin-utils': 7.14.5 - '@babel/traverse': 7.14.7 - debug: 4.3.1 + '@babel/traverse': 7.14.8 + debug: 4.3.2 lodash.debounce: 4.0.8 resolve: 1.20.0 semver: 6.3.0 @@ -234,7 +273,7 @@ packages: resolution: {integrity: sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.14.5 + '@babel/types': 7.14.8 dev: true /@babel/helper-function-name/7.14.5: @@ -296,6 +335,22 @@ packages: - supports-color dev: true + /@babel/helper-module-transforms/7.14.8: + resolution: {integrity: sha512-RyE+NFOjXn5A9YU1dkpeBaduagTlZ0+fccnIcAGbv1KGUlReBj7utF7oEth8IdIBQPcux0DDgW5MFBH2xu9KcA==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-module-imports': 7.14.5 + '@babel/helper-replace-supers': 7.14.5 + '@babel/helper-simple-access': 7.14.8 + '@babel/helper-split-export-declaration': 7.14.5 + '@babel/helper-validator-identifier': 7.14.8 + '@babel/template': 7.14.5 + '@babel/traverse': 7.14.8 + '@babel/types': 7.14.8 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/helper-optimise-call-expression/7.14.5: resolution: {integrity: sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==} engines: {node: '>=6.9.0'} @@ -314,7 +369,7 @@ packages: dependencies: '@babel/helper-annotate-as-pure': 7.14.5 '@babel/helper-wrap-function': 7.14.5 - '@babel/types': 7.14.5 + '@babel/types': 7.14.8 transitivePeerDependencies: - supports-color dev: true @@ -338,11 +393,18 @@ packages: '@babel/types': 7.14.5 dev: true + /@babel/helper-simple-access/7.14.8: + resolution: {integrity: sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.14.8 + dev: true + /@babel/helper-skip-transparent-expression-wrappers/7.14.5: resolution: {integrity: sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.14.5 + '@babel/types': 7.14.8 dev: true /@babel/helper-split-export-declaration/7.14.5: @@ -361,6 +423,11 @@ packages: engines: {node: '>=6.9.0'} dev: true + /@babel/helper-validator-identifier/7.14.8: + resolution: {integrity: sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==} + engines: {node: '>=6.9.0'} + dev: true + /@babel/helper-validator-option/7.14.5: resolution: {integrity: sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==} engines: {node: '>=6.9.0'} @@ -372,8 +439,8 @@ packages: dependencies: '@babel/helper-function-name': 7.14.5 '@babel/template': 7.14.5 - '@babel/traverse': 7.14.7 - '@babel/types': 7.14.5 + '@babel/traverse': 7.14.8 + '@babel/types': 7.14.8 transitivePeerDependencies: - supports-color dev: true @@ -389,6 +456,17 @@ packages: - supports-color dev: true + /@babel/helpers/7.14.8: + resolution: {integrity: sha512-ZRDmI56pnV+p1dH6d+UN6GINGz7Krps3+270qqI9UJ4wxYThfAIcI5i7j5vXC4FJ3Wap+S9qcebxeYiqn87DZw==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/template': 7.14.5 + '@babel/traverse': 7.14.8 + '@babel/types': 7.14.8 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/highlight/7.12.13: resolution: {integrity: sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==} dependencies: @@ -401,7 +479,7 @@ packages: resolution: {integrity: sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.14.5 + '@babel/helper-validator-identifier': 7.14.8 chalk: 2.4.2 js-tokens: 4.0.0 dev: true @@ -412,347 +490,353 @@ packages: hasBin: true dev: true - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.14.5_@babel+core@7.14.6: + /@babel/parser/7.14.8: + resolution: {integrity: sha512-syoCQFOoo/fzkWDeM0dLEZi5xqurb5vuyzwIMNZRNun+N/9A4cUZeQaE7dTrB8jGaKuJRBtEOajtnmw0I5hvvA==} + engines: {node: '>=6.0.0'} + hasBin: true + dev: true + + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-ZoJS2XCKPBfTmL122iP6NM9dOg+d4lc9fFk3zxc8iDjvt8Pk4+TlsHSKhIPf6X+L5ORCdBzqMZDjL/WHj7WknQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 '@babel/helper-skip-transparent-expression-wrappers': 7.14.5 - '@babel/plugin-proposal-optional-chaining': 7.14.5_@babel+core@7.14.6 + '@babel/plugin-proposal-optional-chaining': 7.14.5_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-async-generator-functions/7.14.7_@babel+core@7.14.6: + /@babel/plugin-proposal-async-generator-functions/7.14.7_@babel+core@7.14.8: resolution: {integrity: sha512-RK8Wj7lXLY3bqei69/cc25gwS5puEc3dknoFPFbqfy3XxYQBQFvu4ioWpafMBAB+L9NyptQK4nMOa5Xz16og8Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 '@babel/helper-remap-async-to-generator': 7.14.5 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.14.6 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.14.8 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-proposal-class-properties/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-class-properties/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-proposal-class-static-block/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-class-static-block/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-KBAH5ksEnYHCegqseI5N9skTdxgJdmDoAOc0uXa+4QMYKeZD0w5IARh4FMlTNtaHhbB8v+KzMdTgxMMzsIy6Yg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.14.6 + '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.14.8 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-proposal-dynamic-import/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-dynamic-import/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.14.6 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-export-namespace-from/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-export-namespace-from/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.14.6 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-json-strings/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-json-strings/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.14.6 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-logical-assignment-operators/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-logical-assignment-operators/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.14.6 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-nullish-coalescing-operator/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-nullish-coalescing-operator/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.14.6 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-numeric-separator/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-numeric-separator/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.14.6 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-object-rest-spread/7.14.7_@babel+core@7.14.6: + /@babel/plugin-proposal-object-rest-spread/7.14.7_@babel+core@7.14.8: resolution: {integrity: sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/compat-data': 7.14.7 - '@babel/core': 7.14.6 - '@babel/helper-compilation-targets': 7.14.5_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-compilation-targets': 7.14.5_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.14.6 - '@babel/plugin-transform-parameters': 7.14.5_@babel+core@7.14.6 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.14.8 + '@babel/plugin-transform-parameters': 7.14.5_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-optional-catch-binding/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-optional-catch-binding/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.14.6 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-optional-chaining/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-optional-chaining/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 '@babel/helper-skip-transparent-expression-wrappers': 7.14.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.14.6 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.14.8 dev: true - /@babel/plugin-proposal-private-methods/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-private-methods/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-proposal-private-property-in-object/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-private-property-in-object/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-62EyfyA3WA0mZiF2e2IV9mc9Ghwxcg8YTu8BS4Wss4Y3PY725OmS9M0qLORbJwLqFtGh+jiE4wAmocK2CTUK2Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-annotate-as-pure': 7.14.5 - '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.6 + '@babel/helper-create-class-features-plugin': 7.14.6_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.14.6 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.14.8 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-proposal-unicode-property-regex/7.14.5_@babel+core@7.14.6: + /@babel/plugin-proposal-unicode-property-regex/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==} engines: {node: '>=4'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-create-regexp-features-plugin': 7.14.5_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-create-regexp-features-plugin': 7.14.5_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.14.6: + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.14.8: resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.14.6: + /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.14.8: resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.14.6: + /@babel/plugin-syntax-class-static-block/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.14.6: + /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.14.8: resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.14.6: + /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.14.8: resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.14.6: + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.14.8: resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.14.6: + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.14.8: resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.14.6: + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.14.8: resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.14.6: + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.14.8: resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.14.6: + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.14.8: resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.14.6: + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.14.8: resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.14.6: + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.14.8: resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.14.6: + /@babel/plugin-syntax-private-property-in-object/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.14.6: + /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-arrow-functions/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-arrow-functions/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-async-to-generator/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-async-to-generator/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-module-imports': 7.14.5 '@babel/helper-plugin-utils': 7.14.5 '@babel/helper-remap-async-to-generator': 7.14.5 @@ -760,33 +844,33 @@ packages: - supports-color dev: true - /@babel/plugin-transform-block-scoped-functions/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-block-scoped-functions/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-block-scoping/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-block-scoping/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-classes/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-classes/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-annotate-as-pure': 7.14.5 '@babel/helper-function-name': 7.14.5 '@babel/helper-optimise-call-expression': 7.14.5 @@ -798,396 +882,396 @@ packages: - supports-color dev: true - /@babel/plugin-transform-computed-properties/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-computed-properties/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-destructuring/7.14.7_@babel+core@7.14.6: + /@babel/plugin-transform-destructuring/7.14.7_@babel+core@7.14.8: resolution: {integrity: sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-dotall-regex/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-dotall-regex/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-create-regexp-features-plugin': 7.14.5_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-create-regexp-features-plugin': 7.14.5_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-duplicate-keys/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-duplicate-keys/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-exponentiation-operator/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-exponentiation-operator/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-builder-binary-assignment-operator-visitor': 7.14.5 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-for-of/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-for-of/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-function-name/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-function-name/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-function-name': 7.14.5 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-literals/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-literals/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-member-expression-literals/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-member-expression-literals/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-modules-amd/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-modules-amd/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-module-transforms': 7.14.5 + '@babel/core': 7.14.8 + '@babel/helper-module-transforms': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 babel-plugin-dynamic-import-node: 2.3.3 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-transform-modules-commonjs/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-modules-commonjs/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-module-transforms': 7.14.5 + '@babel/core': 7.14.8 + '@babel/helper-module-transforms': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/helper-simple-access': 7.14.5 + '@babel/helper-simple-access': 7.14.8 babel-plugin-dynamic-import-node: 2.3.3 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-transform-modules-systemjs/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-modules-systemjs/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-mNMQdvBEE5DcMQaL5LbzXFMANrQjd2W7FPzg34Y4yEz7dBgdaC+9B84dSO+/1Wba98zoDbInctCDo4JGxz1VYA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-hoist-variables': 7.14.5 - '@babel/helper-module-transforms': 7.14.5 + '@babel/helper-module-transforms': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/helper-validator-identifier': 7.14.5 + '@babel/helper-validator-identifier': 7.14.8 babel-plugin-dynamic-import-node: 2.3.3 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-transform-modules-umd/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-modules-umd/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-module-transforms': 7.14.5 + '@babel/core': 7.14.8 + '@babel/helper-module-transforms': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-transform-named-capturing-groups-regex/7.14.7_@babel+core@7.14.6: + /@babel/plugin-transform-named-capturing-groups-regex/7.14.7_@babel+core@7.14.8: resolution: {integrity: sha512-DTNOTaS7TkW97xsDMrp7nycUVh6sn/eq22VaxWfEdzuEbRsiaOU0pqU7DlyUGHVsbQbSghvjKRpEl+nUCKGQSg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-create-regexp-features-plugin': 7.14.5_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-create-regexp-features-plugin': 7.14.5_@babel+core@7.14.8 dev: true - /@babel/plugin-transform-new-target/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-new-target/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-object-super/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-object-super/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 '@babel/helper-replace-supers': 7.14.5 transitivePeerDependencies: - supports-color dev: true - /@babel/plugin-transform-parameters/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-parameters/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-property-literals/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-property-literals/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-regenerator/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-regenerator/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 regenerator-transform: 0.14.5 dev: true - /@babel/plugin-transform-reserved-words/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-reserved-words/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-shorthand-properties/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-shorthand-properties/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-spread/7.14.6_@babel+core@7.14.6: + /@babel/plugin-transform-spread/7.14.6_@babel+core@7.14.8: resolution: {integrity: sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 '@babel/helper-skip-transparent-expression-wrappers': 7.14.5 dev: true - /@babel/plugin-transform-sticky-regex/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-sticky-regex/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-template-literals/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-template-literals/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-typeof-symbol/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-typeof-symbol/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-unicode-escapes/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-unicode-escapes/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/plugin-transform-unicode-regex/7.14.5_@babel+core@7.14.6: + /@babel/plugin-transform-unicode-regex/7.14.5_@babel+core@7.14.8: resolution: {integrity: sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-create-regexp-features-plugin': 7.14.5_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-create-regexp-features-plugin': 7.14.5_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 dev: true - /@babel/preset-env/7.14.7_@babel+core@7.14.6: - resolution: {integrity: sha512-itOGqCKLsSUl0Y+1nSfhbuuOlTs0MJk2Iv7iSH+XT/mR8U1zRLO7NjWlYXB47yhK4J/7j+HYty/EhFZDYKa/VA==} + /@babel/preset-env/7.14.8_@babel+core@7.14.8: + resolution: {integrity: sha512-a9aOppDU93oArQ51H+B8M1vH+tayZbuBqzjOhntGetZVa+4tTu5jp+XTwqHGG2lxslqomPYVSjIxQkFwXzgnxg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/compat-data': 7.14.7 - '@babel/core': 7.14.6 - '@babel/helper-compilation-targets': 7.14.5_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-compilation-targets': 7.14.5_@babel+core@7.14.8 '@babel/helper-plugin-utils': 7.14.5 '@babel/helper-validator-option': 7.14.5 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-async-generator-functions': 7.14.7_@babel+core@7.14.6 - '@babel/plugin-proposal-class-properties': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-class-static-block': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-dynamic-import': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-export-namespace-from': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-json-strings': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-logical-assignment-operators': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-nullish-coalescing-operator': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-numeric-separator': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-object-rest-spread': 7.14.7_@babel+core@7.14.6 - '@babel/plugin-proposal-optional-catch-binding': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-optional-chaining': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-private-methods': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-private-property-in-object': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-proposal-unicode-property-regex': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.14.6 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.14.6 - '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.14.6 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.14.6 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.14.6 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.14.6 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.14.6 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.14.6 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.14.6 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.14.6 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.14.6 - '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-arrow-functions': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-async-to-generator': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-block-scoped-functions': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-block-scoping': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-classes': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-computed-properties': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-destructuring': 7.14.7_@babel+core@7.14.6 - '@babel/plugin-transform-dotall-regex': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-duplicate-keys': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-exponentiation-operator': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-for-of': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-function-name': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-literals': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-member-expression-literals': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-modules-amd': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-modules-commonjs': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-modules-systemjs': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-modules-umd': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-named-capturing-groups-regex': 7.14.7_@babel+core@7.14.6 - '@babel/plugin-transform-new-target': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-object-super': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-parameters': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-property-literals': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-regenerator': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-reserved-words': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-shorthand-properties': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-spread': 7.14.6_@babel+core@7.14.6 - '@babel/plugin-transform-sticky-regex': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-template-literals': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-typeof-symbol': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-unicode-escapes': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-unicode-regex': 7.14.5_@babel+core@7.14.6 - '@babel/preset-modules': 0.1.4_@babel+core@7.14.6 - '@babel/types': 7.14.5 - babel-plugin-polyfill-corejs2: 0.2.2_@babel+core@7.14.6 - babel-plugin-polyfill-corejs3: 0.2.3_@babel+core@7.14.6 - babel-plugin-polyfill-regenerator: 0.2.2_@babel+core@7.14.6 + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-async-generator-functions': 7.14.7_@babel+core@7.14.8 + '@babel/plugin-proposal-class-properties': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-class-static-block': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-dynamic-import': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-export-namespace-from': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-json-strings': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-logical-assignment-operators': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-numeric-separator': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-object-rest-spread': 7.14.7_@babel+core@7.14.8 + '@babel/plugin-proposal-optional-catch-binding': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-optional-chaining': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-private-methods': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-private-property-in-object': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-proposal-unicode-property-regex': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.14.8 + '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.14.8 + '@babel/plugin-syntax-class-static-block': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.14.8 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.14.8 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.14.8 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.14.8 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.14.8 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.14.8 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.14.8 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.14.8 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.14.8 + '@babel/plugin-syntax-private-property-in-object': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-arrow-functions': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-async-to-generator': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-block-scoped-functions': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-block-scoping': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-classes': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-computed-properties': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-destructuring': 7.14.7_@babel+core@7.14.8 + '@babel/plugin-transform-dotall-regex': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-duplicate-keys': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-exponentiation-operator': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-for-of': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-function-name': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-literals': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-member-expression-literals': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-modules-amd': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-modules-commonjs': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-modules-systemjs': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-modules-umd': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-named-capturing-groups-regex': 7.14.7_@babel+core@7.14.8 + '@babel/plugin-transform-new-target': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-object-super': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-parameters': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-property-literals': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-regenerator': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-reserved-words': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-shorthand-properties': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-spread': 7.14.6_@babel+core@7.14.8 + '@babel/plugin-transform-sticky-regex': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-template-literals': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-typeof-symbol': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-unicode-escapes': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-unicode-regex': 7.14.5_@babel+core@7.14.8 + '@babel/preset-modules': 0.1.4_@babel+core@7.14.8 + '@babel/types': 7.14.8 + babel-plugin-polyfill-corejs2: 0.2.2_@babel+core@7.14.8 + babel-plugin-polyfill-corejs3: 0.2.3_@babel+core@7.14.8 + babel-plugin-polyfill-regenerator: 0.2.2_@babel+core@7.14.8 core-js-compat: 3.15.1 semver: 6.3.0 transitivePeerDependencies: - supports-color dev: true - /@babel/preset-modules/0.1.4_@babel+core@7.14.6: + /@babel/preset-modules/0.1.4_@babel+core@7.14.8: resolution: {integrity: sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-plugin-utils': 7.14.5 - '@babel/plugin-proposal-unicode-property-regex': 7.14.5_@babel+core@7.14.6 - '@babel/plugin-transform-dotall-regex': 7.14.5_@babel+core@7.14.6 - '@babel/types': 7.14.5 + '@babel/plugin-proposal-unicode-property-regex': 7.14.5_@babel+core@7.14.8 + '@babel/plugin-transform-dotall-regex': 7.14.5_@babel+core@7.14.8 + '@babel/types': 7.14.8 esutils: 2.0.3 dev: true @@ -1223,6 +1307,23 @@ packages: - supports-color dev: true + /@babel/traverse/7.14.8: + resolution: {integrity: sha512-kexHhzCljJcFNn1KYAQ6A5wxMRzq9ebYpEDV4+WdNyr3i7O44tanbDOR/xjiG2F3sllan+LgwK+7OMk0EmydHg==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/code-frame': 7.14.5 + '@babel/generator': 7.14.8 + '@babel/helper-function-name': 7.14.5 + '@babel/helper-hoist-variables': 7.14.5 + '@babel/helper-split-export-declaration': 7.14.5 + '@babel/parser': 7.14.8 + '@babel/types': 7.14.8 + debug: 4.3.2 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + dev: true + /@babel/types/7.13.0: resolution: {integrity: sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA==} dependencies: @@ -1239,6 +1340,14 @@ packages: to-fast-properties: 2.0.0 dev: true + /@babel/types/7.14.8: + resolution: {integrity: sha512-iob4soQa7dZw8nodR/KlOQkPh9S4I8RwCxwRIFuiMRYjOzH/KJzdUfDgz6cGi5dDaclXF4P2PAhCdrBJNIg68Q==} + engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.14.8 + to-fast-properties: 2.0.0 + dev: true + /@bcoe/v8-coverage/0.2.3: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true @@ -1247,30 +1356,30 @@ packages: resolution: {integrity: sha512-yQ6/CTy6DYvmJOAIw/BJjKeNG2ZyF8uxgTN8Yvcv4L9YavoVp9xUgmoVUKN5l24NGPDQpswavNanHOqB00ZNXg==} dev: true - /@brettz9/eslint-plugin/1.0.3_eslint@7.30.0: + /@brettz9/eslint-plugin/1.0.3_eslint@7.31.0: resolution: {integrity: sha512-2ESGw4oZJ5IvkFitzRXzfdUY8hzSPSanQ8i+adzWMQPK7jxxUHkZ6GEslOd7GjHFZIcwqc1xVXVU0itf8zYFGA==} engines: {node: '>=10.0.0'} peerDependencies: eslint: '>=7.20.0' dependencies: - eslint: 7.30.0 + eslint: 7.31.0 dev: true - /@es-joy/jsdoccomment/0.8.0: - resolution: {integrity: sha512-Xd3GzYsL2sz2pcdtYt5Q0Wz1ol/o9Nt2UQL4nFPDcaEomvPmwjJsbjkKx1SKhl2h3TgwazNBLdcNr2m0UiGiFA==} - engines: {node: '>=10.0.0'} + /@es-joy/jsdoccomment/0.10.7: + resolution: {integrity: sha512-aNKZEoMESDzOBjKxCWrFuG50mcpMeKVBnBNko4+IZZ5t9zXYs8GT1KB0ZaOq1YUsKumDRc6YII/TQm309MJ0KQ==} + engines: {node: ^12.20 || ^14.14.0 || ^16} dependencies: - comment-parser: 1.1.5 + comment-parser: 1.2.3 esquery: 1.4.0 - jsdoc-type-pratt-parser: 1.0.4 + jsdoc-type-pratt-parser: 1.1.1 dev: true - /@eslint/eslintrc/0.4.2: - resolution: {integrity: sha512-8nmGq/4ycLpIwzvhI4tNDmQztZ8sp+hI7cyG8i1nQDhkAbRzHpXPidRAHlNvCZQpJTKw5ItIpMw9RSToGF00mg==} + /@eslint/eslintrc/0.4.3: + resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==} engines: {node: ^10.12.0 || >=12.0.0} dependencies: ajv: 6.12.6 - debug: 4.3.1 + debug: 4.3.2 espree: 7.3.1 globals: 13.9.0 ignore: 4.0.6 @@ -1287,7 +1396,7 @@ packages: engines: {node: '>=10.10.0'} dependencies: '@humanwhocodes/object-schema': 1.2.0 - debug: 4.3.1 + debug: 4.3.2 minimatch: 3.0.4 transitivePeerDependencies: - supports-color @@ -1313,11 +1422,8 @@ packages: engines: {node: '>=8'} dev: true - /@mdn/browser-compat-data/2.0.7: - resolution: {integrity: sha512-GeeM827DlzFFidn1eKkMBiqXFD2oLsnZbaiGhByPl0vcapsRzUL+t9hDoov1swc9rB2jw64R+ihtzC8qOE9wXw==} - engines: {node: '>=10.0.0'} - dependencies: - extend: 3.0.2 + /@mdn/browser-compat-data/3.3.12: + resolution: {integrity: sha512-XC9Agp7J5JuD/yfSk212MS2iWZnmcdK+JGPh8bULBrTiduFNttcuBGrHfhyy8YNY3BSIO46J8GkcWPln7fe6wA==} dev: true /@nodelib/fs.scandir/2.1.4: @@ -1341,7 +1447,7 @@ packages: fastq: 1.10.1 dev: true - /@rollup/plugin-babel/5.3.0_@babel+core@7.14.6+rollup@2.52.7: + /@rollup/plugin-babel/5.3.0_@babel+core@7.14.8+rollup@2.55.0: resolution: {integrity: sha512-9uIC8HZOnVLrLHxayq/PTzw+uS25E14KPUBh5ktF+18Mjo5yK0ToMMx6epY0uEgkjwJw0aBW4x2horYXh8juWw==} engines: {node: '>= 10.0.0'} peerDependencies: @@ -1352,13 +1458,13 @@ packages: '@types/babel__core': optional: true dependencies: - '@babel/core': 7.14.6 + '@babel/core': 7.14.8 '@babel/helper-module-imports': 7.12.13 - '@rollup/pluginutils': 3.1.0_rollup@2.52.7 - rollup: 2.52.7 + '@rollup/pluginutils': 3.1.0_rollup@2.55.0 + rollup: 2.55.0 dev: true - /@rollup/pluginutils/3.1.0_rollup@2.52.7: + /@rollup/pluginutils/3.1.0_rollup@2.55.0: resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==} engines: {node: '>= 8.0.0'} peerDependencies: @@ -1367,7 +1473,7 @@ packages: '@types/estree': 0.0.39 estree-walker: 1.0.1 picomatch: 2.2.2 - rollup: 2.52.7 + rollup: 2.55.0 dev: true /@sindresorhus/is/0.14.0: @@ -1519,14 +1625,6 @@ packages: color-convert: 2.0.1 dev: true - /anymatch/3.1.1: - resolution: {integrity: sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==} - engines: {node: '>= 8'} - dependencies: - normalize-path: 3.0.0 - picomatch: 2.2.2 - dev: true - /anymatch/3.1.2: resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} engines: {node: '>= 8'} @@ -1603,8 +1701,10 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true - /ast-metadata-inferer/0.4.0: - resolution: {integrity: sha512-tKHdBe8N/Vq2nLAm4YPBVREVZjMux6KrqyPfNQgIbDl0t7HaNSmy8w4OyVHYg/cvyn5BW7o7pVwpjPte89Zhcg==} + /ast-metadata-inferer/0.5.1: + resolution: {integrity: sha512-fj+QuB47ODy18p5gJ4BFnpenk992o7gx7oPid6oUK9+Uy/F3/5cvZ13harpQPN5Y8MlcjYf0y1LwgOV1J31k+A==} + dependencies: + '@mdn/browser-compat-data': 3.3.12 dev: true /astral-regex/2.0.0: @@ -1624,38 +1724,38 @@ packages: object.assign: 4.1.2 dev: true - /babel-plugin-polyfill-corejs2/0.2.2_@babel+core@7.14.6: + /babel-plugin-polyfill-corejs2/0.2.2_@babel+core@7.14.8: resolution: {integrity: sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/compat-data': 7.14.7 - '@babel/core': 7.14.6 - '@babel/helper-define-polyfill-provider': 0.2.3_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-define-polyfill-provider': 0.2.3_@babel+core@7.14.8 semver: 6.3.0 transitivePeerDependencies: - supports-color dev: true - /babel-plugin-polyfill-corejs3/0.2.3_@babel+core@7.14.6: + /babel-plugin-polyfill-corejs3/0.2.3_@babel+core@7.14.8: resolution: {integrity: sha512-rCOFzEIJpJEAU14XCcV/erIf/wZQMmMT5l5vXOpL5uoznyOGfDIjPj6FVytMvtzaKSTSVKouOCTPJ5OMUZH30g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-define-polyfill-provider': 0.2.3_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-define-polyfill-provider': 0.2.3_@babel+core@7.14.8 core-js-compat: 3.15.1 transitivePeerDependencies: - supports-color dev: true - /babel-plugin-polyfill-regenerator/0.2.2_@babel+core@7.14.6: + /babel-plugin-polyfill-regenerator/0.2.2_@babel+core@7.14.8: resolution: {integrity: sha512-Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.14.6 - '@babel/helper-define-polyfill-provider': 0.2.3_@babel+core@7.14.6 + '@babel/core': 7.14.8 + '@babel/helper-define-polyfill-provider': 0.2.3_@babel+core@7.14.8 transitivePeerDependencies: - supports-color dev: true @@ -1669,10 +1769,6 @@ packages: svgo: 1.3.2 dev: true - /bail/1.0.5: - resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==} - dev: true - /balanced-match/1.0.0: resolution: {integrity: sha1-ibTRmasr7kneFk6gK4nORi1xt2c=} dev: true @@ -1723,18 +1819,6 @@ packages: resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} dev: true - /browserslist/4.16.3: - resolution: {integrity: sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - dependencies: - caniuse-lite: 1.0.30001185 - colorette: 1.2.1 - electron-to-chromium: 1.3.655 - escalade: 3.1.1 - node-releases: 1.1.70 - dev: true - /browserslist/4.16.6: resolution: {integrity: sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} @@ -1756,8 +1840,8 @@ packages: engines: {node: '>=6'} dev: true - /c8/7.7.3: - resolution: {integrity: sha512-ZyA7n3w8i4ETV25tVYMHwJxCSnaOf/LfA8vOcuZOPbonuQfD7tBT/gMWZy7eczRpCDuHcvMXwoqAemg6R0p3+A==} + /c8/7.8.0: + resolution: {integrity: sha512-x2Bx+IIEd608B1LmjiNQ/kizRPkCWo5XzuV57J9afPjAHSnYXALwbCSOkQ7cSaNXBNblfqcvdycj+klmL+j6yA==} engines: {node: '>=10.12.0'} hasBin: true dependencies: @@ -1819,14 +1903,14 @@ packages: engines: {node: '>=10'} dev: true - /caniuse-lite/1.0.30001185: - resolution: {integrity: sha512-Fpi4kVNtNvJ15H0F6vwmXtb3tukv3Zg3qhKkOGUq7KJ1J6b9kf4dnNgtEAFXhRsJo0gNj9W60+wBvn0JcTvdTg==} - dev: true - /caniuse-lite/1.0.30001239: resolution: {integrity: sha512-cyBkXJDMeI4wthy8xJ2FvDU6+0dtcZSJW3voUF8+e9f1bBeuvyZfc3PNbkOETyhbR+dGCPzn9E7MA3iwzusOhQ==} dev: true + /caniuse-lite/1.0.30001248: + resolution: {integrity: sha512-NwlQbJkxUFJ8nMErnGtT0QTM2TJ33xgz4KXJSMIrjXIbDVdaYueGyjOrLKRtJC+rTiWfi6j5cnZN1NBiSBJGNw==} + dev: true + /chai/4.3.4: resolution: {integrity: sha512-yS5H68VYOCtN1cjfwumDSuzn/9c+yza4f3reKXlE5rUg7SFcCEy90gJvydNgOYtblyf4Zi6jIWRnXOgErta0KA==} engines: {node: '>=4'} @@ -1880,21 +1964,6 @@ packages: resolution: {integrity: sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=} dev: true - /chokidar/3.5.1: - resolution: {integrity: sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==} - engines: {node: '>= 8.10.0'} - dependencies: - anymatch: 3.1.1 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.1 - normalize-path: 3.0.0 - readdirp: 3.5.0 - optionalDependencies: - fsevents: 2.3.2 - dev: true - /chokidar/3.5.2: resolution: {integrity: sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==} engines: {node: '>= 8.10.0'} @@ -1949,10 +2018,6 @@ packages: mimic-response: 1.0.1 dev: true - /co/3.1.0: - resolution: {integrity: sha1-TqVOpaCJOBUxheFSEMaNkJK8G3g=} - dev: true - /coa/2.0.2: resolution: {integrity: sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==} engines: {node: '>= 4.0'} @@ -1983,10 +2048,6 @@ packages: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true - /colorette/1.2.1: - resolution: {integrity: sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==} - dev: true - /colorette/1.2.2: resolution: {integrity: sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==} dev: true @@ -2029,25 +2090,15 @@ packages: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: true - /comment-parser/1.1.5: - resolution: {integrity: sha512-RePCE4leIhBlmrqiYTvaqEeGYg7qpSl4etaIabKtdOQVi+mSTIBBklGUwIr79GXYnl3LpMwmDw4KeR2stNc6FA==} - engines: {node: '>= 10.0.0'} + /comment-parser/1.2.3: + resolution: {integrity: sha512-vnqDwBSXSsdAkGS5NjwMIPelE47q+UkEgWKHvCDNhVIIaQSUFY6sNnEYGzdoPGMdpV+7KR3ZkRd7oyWIjtuvJg==} + engines: {node: ^12.20 || ^14.14.0 || ^16} dev: true /concat-map/0.0.1: resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} dev: true - /concat-stream/2.0.0: - resolution: {integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==} - engines: {'0': node >= 6.0} - dependencies: - buffer-from: 1.1.1 - inherits: 2.0.4 - readable-stream: 3.6.0 - typedarray: 0.0.6 - dev: true - /configstore/5.0.1: resolution: {integrity: sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==} engines: {node: '>=8'} @@ -2084,8 +2135,8 @@ packages: semver: 7.0.0 dev: true - /core-js/3.8.3: - resolution: {integrity: sha512-KPYXeVZYemC2TkNEkX/01I+7yd+nX3KddKwZ1Ww7SKWdI2wQprSgLmrTddT8nw92AjEklTsPBoSdQBhbI1bQ6Q==} + /core-js/3.15.2: + resolution: {integrity: sha512-tKs41J7NJVuaya8DxIOCnl8QuPHx5/ZVbFo1oKgVl1qHFBBrDctzQGtuLjPpRdNTWmKPH6oEvgN/MUID+l485Q==} requiresBuild: true dev: true @@ -2216,6 +2267,18 @@ packages: supports-color: 8.1.1 dev: true + /debug/4.3.2: + resolution: {integrity: sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.2 + dev: true + /debuglog/1.0.1: resolution: {integrity: sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=} dev: true @@ -2417,10 +2480,6 @@ packages: url-join: 2.0.5 dev: true - /electron-to-chromium/1.3.655: - resolution: {integrity: sha512-b+V6KreLR1SvNBY1WOZWsm5Dc/ZC/B5/E1m5TpUrWnEwrd1pJgKgsrLYtQYTDgdTj1/QoZE7qMPIeJ6hZwpsVA==} - dev: true - /electron-to-chromium/1.3.756: resolution: {integrity: sha512-WsmJym1TMeHVndjPjczTFbnRR/c4sbzg8fBFtuhlb2Sru3i/S1VGpzDSrv/It8ctMU2bj8G7g7/O3FzYMGw6eA==} dev: true @@ -2557,19 +2616,19 @@ packages: engines: {node: '>=10'} dev: true - /eslint-config-ash-nazg/30.1.0_969b17ffd376dc695d41d55c1cc9088b: - resolution: {integrity: sha512-2i4zjl8QvBGn/RAqQ3Mw4Vux1XyZZcXIR2Qn4+SO7H44IpupoyzfcVnmmEm4J+hXgqMEYXlYm5gHo2gEZmacAQ==} + /eslint-config-ash-nazg/31.1.1_d44c2d58ce49bef429031687aa966e24: + resolution: {integrity: sha512-oVF+mOvD6X7O0ZBh00yRBmbZVZu2Xl5FBUgHgNeKWL/SrTd2V2kP4V3mzBIefYFOZojT/8LUrAuoauoJIxGw5w==} engines: {node: '>=10.0.0'} peerDependencies: '@brettz9/eslint-plugin': ^1.0.3 - eslint: ^7.30.0 + eslint: ^7.31.0 eslint-config-standard: ^16.0.3 eslint-plugin-array-func: ^3.1.7 - eslint-plugin-compat: ^3.9.0 + eslint-plugin-compat: ^3.11.1 eslint-plugin-eslint-comments: ^3.2.0 eslint-plugin-html: ^6.1.2 eslint-plugin-import: ^2.23.4 - eslint-plugin-jsdoc: ^35.4.1 + eslint-plugin-jsdoc: ^36.0.6 eslint-plugin-markdown: ^2.2.0 eslint-plugin-no-unsanitized: ^3.1.5 eslint-plugin-no-use-extend-native: ^0.5.0 @@ -2578,26 +2637,26 @@ packages: eslint-plugin-sonarjs: ^0.9.1 eslint-plugin-unicorn: ^34.0.1 dependencies: - '@brettz9/eslint-plugin': 1.0.3_eslint@7.30.0 - eslint: 7.30.0 - eslint-config-standard: 16.0.3_68aba462ebcb9819879db75ba6ea05da - eslint-plugin-array-func: 3.1.7_eslint@7.30.0 - eslint-plugin-compat: 3.9.0_eslint@7.30.0 - eslint-plugin-eslint-comments: 3.2.0_eslint@7.30.0 + '@brettz9/eslint-plugin': 1.0.3_eslint@7.31.0 + eslint: 7.31.0 + eslint-config-standard: 16.0.3_ebdb84fef5122eacd2d98bd9212a56af + eslint-plugin-array-func: 3.1.7_eslint@7.31.0 + eslint-plugin-compat: 3.11.1_eslint@7.31.0 + eslint-plugin-eslint-comments: 3.2.0_eslint@7.31.0 eslint-plugin-html: 6.1.2 - eslint-plugin-import: 2.23.4_eslint@7.30.0 - eslint-plugin-jsdoc: 35.4.1_eslint@7.30.0 - eslint-plugin-markdown: 2.2.0_eslint@7.30.0 - eslint-plugin-no-unsanitized: 3.1.5_eslint@7.30.0 + eslint-plugin-import: 2.23.4_eslint@7.31.0 + eslint-plugin-jsdoc: 36.0.6_eslint@7.31.0 + eslint-plugin-markdown: 2.2.0_eslint@7.31.0 + eslint-plugin-no-unsanitized: 3.1.5_eslint@7.31.0 eslint-plugin-no-use-extend-native: 0.5.0 - eslint-plugin-node: 11.1.0_eslint@7.30.0 - eslint-plugin-promise: 5.1.0_eslint@7.30.0 - eslint-plugin-sonarjs: 0.9.1_eslint@7.30.0 - eslint-plugin-unicorn: 34.0.1_eslint@7.30.0 + eslint-plugin-node: 11.1.0_eslint@7.31.0 + eslint-plugin-promise: 5.1.0_eslint@7.31.0 + eslint-plugin-sonarjs: 0.9.1_eslint@7.31.0 + eslint-plugin-unicorn: 34.0.1_eslint@7.31.0 semver: 7.3.5 dev: true - /eslint-config-standard/16.0.3_68aba462ebcb9819879db75ba6ea05da: + /eslint-config-standard/16.0.3_ebdb84fef5122eacd2d98bd9212a56af: resolution: {integrity: sha512-x4fmJL5hGqNJKGHSjnLdgA6U6h1YW/G2dW9fA+cyVur4SK6lyue8+UgNKWlZtUDTXvgKDD/Oa3GQjmB5kjtVvg==} peerDependencies: eslint: ^7.12.1 @@ -2605,10 +2664,10 @@ packages: eslint-plugin-node: ^11.1.0 eslint-plugin-promise: ^4.2.1 || ^5.0.0 dependencies: - eslint: 7.30.0 - eslint-plugin-import: 2.23.4_eslint@7.30.0 - eslint-plugin-node: 11.1.0_eslint@7.30.0 - eslint-plugin-promise: 5.1.0_eslint@7.30.0 + eslint: 7.31.0 + eslint-plugin-import: 2.23.4_eslint@7.31.0 + eslint-plugin-node: 11.1.0_eslint@7.31.0 + eslint-plugin-promise: 5.1.0_eslint@7.31.0 dev: true /eslint-import-resolver-node/0.3.4: @@ -2626,69 +2685,69 @@ packages: pkg-dir: 2.0.0 dev: true - /eslint-plugin-array-func/3.1.7_eslint@7.30.0: + /eslint-plugin-array-func/3.1.7_eslint@7.31.0: resolution: {integrity: sha512-fB5TBICjHSTGToNTbCCgR8zsngpUkoCM31EMh/M/NEAyNg90i5rUuG0dnNNBML2n0BzM0nBE3sPvo2SEWf6jlA==} engines: {node: '>= 6.8.0'} peerDependencies: eslint: '>=3.0.0' dependencies: - eslint: 7.30.0 + eslint: 7.31.0 dev: true - /eslint-plugin-chai-expect/2.2.0_eslint@7.30.0: + /eslint-plugin-chai-expect/2.2.0_eslint@7.31.0: resolution: {integrity: sha512-ExTJKhgeYMfY8wDj3UiZmgpMKJOUHGNHmWMlxT49JUDB1vTnw0sSNfXJSxnX+LcebyBD/gudXzjzD136WqPJrQ==} engines: {node: 6.* || 8.* || >= 10.*} peerDependencies: eslint: '>=2.0.0 <= 7.x' dependencies: - eslint: 7.30.0 + eslint: 7.31.0 dev: true - /eslint-plugin-chai-friendly/0.7.1_eslint@7.30.0: + /eslint-plugin-chai-friendly/0.7.1_eslint@7.31.0: resolution: {integrity: sha512-0xhGiSQ+9oWtNc6IZPUR+6ChKbEvLXwT9oZZ5NcGlPzHVKGn1YKwQFj7a9yL3rnRKbWF7b3RkRYEP8kN6dPOwQ==} engines: {node: '>=0.10.0'} peerDependencies: eslint: '>=3.0.0' dependencies: - eslint: 7.30.0 + eslint: 7.31.0 dev: true - /eslint-plugin-compat/3.9.0_eslint@7.30.0: - resolution: {integrity: sha512-lt3l5PHFHVEYSZ5zijcoYvtQJPsBifRiH5N0Et57KwVu7l/yxmHhSG6VJiLMa/lXrg93Qu8049RNQOMn0+yJBg==} + /eslint-plugin-compat/3.11.1_eslint@7.31.0: + resolution: {integrity: sha512-iJyltnaVN9g/MYL3WGb6GFyJs+4mMkumq2E5srxsQIfPqQh14HEE0dtQC/HKDWze+hkwQtSo5DvC3IW5Gmxdtw==} engines: {node: '>=9.x'} peerDependencies: eslint: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 dependencies: - '@mdn/browser-compat-data': 2.0.7 - ast-metadata-inferer: 0.4.0 - browserslist: 4.16.3 - caniuse-lite: 1.0.30001185 - core-js: 3.8.3 - eslint: 7.30.0 - find-up: 4.1.0 + '@mdn/browser-compat-data': 3.3.12 + ast-metadata-inferer: 0.5.1 + browserslist: 4.16.6 + caniuse-lite: 1.0.30001248 + core-js: 3.15.2 + eslint: 7.31.0 + find-up: 5.0.0 lodash.memoize: 4.1.2 - semver: 7.3.2 + semver: 7.3.5 dev: true - /eslint-plugin-es/3.0.1_eslint@7.30.0: + /eslint-plugin-es/3.0.1_eslint@7.31.0: resolution: {integrity: sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==} engines: {node: '>=8.10.0'} peerDependencies: eslint: '>=4.19.1' dependencies: - eslint: 7.30.0 + eslint: 7.31.0 eslint-utils: 2.1.0 regexpp: 3.1.0 dev: true - /eslint-plugin-eslint-comments/3.2.0_eslint@7.30.0: + /eslint-plugin-eslint-comments/3.2.0_eslint@7.31.0: resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} engines: {node: '>=6.5.0'} peerDependencies: eslint: '>=4.19.1' dependencies: escape-string-regexp: 1.0.5 - eslint: 7.30.0 + eslint: 7.31.0 ignore: 5.1.8 dev: true @@ -2698,7 +2757,7 @@ packages: htmlparser2: 6.1.0 dev: true - /eslint-plugin-import/2.23.4_eslint@7.30.0: + /eslint-plugin-import/2.23.4_eslint@7.31.0: resolution: {integrity: sha512-6/wP8zZRsnQFiR3iaPFgh5ImVRM1WN5NUWfTIRqwOdeiGJlBcSk82o1FEVq8yXmy4lkIzTo7YhHCIxlU/2HyEQ==} engines: {node: '>=4'} peerDependencies: @@ -2708,7 +2767,7 @@ packages: array.prototype.flat: 1.2.4 debug: 2.6.9 doctrine: 2.1.0 - eslint: 7.30.0 + eslint: 7.31.0 eslint-import-resolver-node: 0.3.4 eslint-module-utils: 2.6.1 find-up: 2.1.0 @@ -2722,18 +2781,18 @@ packages: tsconfig-paths: 3.9.0 dev: true - /eslint-plugin-jsdoc/35.4.1_eslint@7.30.0: - resolution: {integrity: sha512-lnpu2Bj+ta2eAqwCWnb6f3Xjc78TWKo/oMCpDH5NfpPhYnePNtGZJzoAMgU5uo9BQqmXJ8pql8aiodOhg82ofw==} - engines: {node: '>=12'} + /eslint-plugin-jsdoc/36.0.6_eslint@7.31.0: + resolution: {integrity: sha512-vOm27rI2SMfi1bOAYmzzGkanMCD/boquKwvN5ECi8EF9ASsXJwlnCzYtiOYpsDpbC2+6JXEHAmWMkqYNA3BWRw==} + engines: {node: ^12.20 || ^14.14.0 || ^16} peerDependencies: eslint: ^6.0.0 || ^7.0.0 dependencies: - '@es-joy/jsdoccomment': 0.8.0 - comment-parser: 1.1.5 - debug: 4.3.1 - eslint: 7.30.0 + '@es-joy/jsdoccomment': 0.10.7 + comment-parser: 1.2.3 + debug: 4.3.2 + eslint: 7.31.0 esquery: 1.4.0 - jsdoc-type-pratt-parser: 1.0.4 + jsdoc-type-pratt-parser: 1.1.1 lodash: 4.17.21 regextras: 0.8.0 semver: 7.3.5 @@ -2742,24 +2801,24 @@ packages: - supports-color dev: true - /eslint-plugin-markdown/2.2.0_eslint@7.30.0: + /eslint-plugin-markdown/2.2.0_eslint@7.31.0: resolution: {integrity: sha512-Ctuc7aP1tU92qnFwVO1wDLEzf1jqMxwRkcSTw7gjbvnEqfh5CKUcTXM0sxg8CB2KDXrqpTuMZPgJ1XE9Olr7KA==} engines: {node: ^8.10.0 || ^10.12.0 || >= 12.0.0} peerDependencies: eslint: '>=6.0.0' dependencies: - eslint: 7.30.0 + eslint: 7.31.0 mdast-util-from-markdown: 0.8.5 transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-no-unsanitized/3.1.5_eslint@7.30.0: + /eslint-plugin-no-unsanitized/3.1.5_eslint@7.31.0: resolution: {integrity: sha512-s/6w++p1590h/H/dE2Wo660bOkaM/3OEK14Y7xm1UT0bafxkKw1Cq0ksjxkxLdH/WWd014DlsLKuD6CyNrR2Dw==} peerDependencies: eslint: ^5 || ^6 || ^7 dependencies: - eslint: 7.30.0 + eslint: 7.31.0 dev: true /eslint-plugin-no-use-extend-native/0.5.0: @@ -2772,14 +2831,14 @@ packages: is-proto-prop: 2.0.0 dev: true - /eslint-plugin-node/11.1.0_eslint@7.30.0: + /eslint-plugin-node/11.1.0_eslint@7.31.0: resolution: {integrity: sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==} engines: {node: '>=8.10.0'} peerDependencies: eslint: '>=5.16.0' dependencies: - eslint: 7.30.0 - eslint-plugin-es: 3.0.1_eslint@7.30.0 + eslint: 7.31.0 + eslint-plugin-es: 3.0.1_eslint@7.31.0 eslint-utils: 2.1.0 ignore: 5.1.8 minimatch: 3.0.4 @@ -2787,33 +2846,33 @@ packages: semver: 6.3.0 dev: true - /eslint-plugin-promise/5.1.0_eslint@7.30.0: + /eslint-plugin-promise/5.1.0_eslint@7.31.0: resolution: {integrity: sha512-NGmI6BH5L12pl7ScQHbg7tvtk4wPxxj8yPHH47NvSmMtFneC077PSeY3huFj06ZWZvtbfxSPt3RuOQD5XcR4ng==} engines: {node: ^10.12.0 || >=12.0.0} peerDependencies: eslint: ^7.0.0 dependencies: - eslint: 7.30.0 + eslint: 7.31.0 dev: true - /eslint-plugin-sonarjs/0.9.1_eslint@7.30.0: + /eslint-plugin-sonarjs/0.9.1_eslint@7.31.0: resolution: {integrity: sha512-KKFofk1LPjGHWeAZijYWv32c/C4mz+OAeBNVxhxHu1hknrTOhu415MWC8qKdAdsmOlBPShs9evM4mI1o7MNMhw==} engines: {node: '>=10'} peerDependencies: eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 dependencies: - eslint: 7.30.0 + eslint: 7.31.0 dev: true - /eslint-plugin-standard/4.1.0_eslint@7.30.0: + /eslint-plugin-standard/4.1.0_eslint@7.31.0: resolution: {integrity: sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ==} peerDependencies: eslint: '>=5.0.0' dependencies: - eslint: 7.30.0 + eslint: 7.31.0 dev: true - /eslint-plugin-unicorn/34.0.1_eslint@7.30.0: + /eslint-plugin-unicorn/34.0.1_eslint@7.31.0: resolution: {integrity: sha512-GUBtRYRhPVOW/GDu6QtOjrneSZxY/MulOT8puJU+47VKCzNmMgS/iHO2gZqoQ7KPMrpNYlebUlvCWy3IR1USVQ==} engines: {node: '>=12'} peerDependencies: @@ -2821,9 +2880,9 @@ packages: dependencies: ci-info: 3.2.0 clean-regexp: 1.0.0 - eslint: 7.30.0 - eslint-template-visitor: 2.3.2_eslint@7.30.0 - eslint-utils: 3.0.0_eslint@7.30.0 + eslint: 7.31.0 + eslint-template-visitor: 2.3.2_eslint@7.31.0 + eslint-utils: 3.0.0_eslint@7.31.0 is-builtin-module: 3.1.0 lodash: 4.17.21 pluralize: 8.0.0 @@ -2844,14 +2903,14 @@ packages: estraverse: 4.3.0 dev: true - /eslint-template-visitor/2.3.2_eslint@7.30.0: + /eslint-template-visitor/2.3.2_eslint@7.31.0: resolution: {integrity: sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA==} peerDependencies: eslint: '>=7.0.0' dependencies: '@babel/core': 7.14.6 - '@babel/eslint-parser': 7.13.14_@babel+core@7.14.6+eslint@7.30.0 - eslint: 7.30.0 + '@babel/eslint-parser': 7.13.14_@babel+core@7.14.6+eslint@7.31.0 + eslint: 7.31.0 eslint-visitor-keys: 2.0.0 esquery: 1.4.0 multimap: 1.1.0 @@ -2866,13 +2925,13 @@ packages: eslint-visitor-keys: 1.3.0 dev: true - /eslint-utils/3.0.0_eslint@7.30.0: + /eslint-utils/3.0.0_eslint@7.31.0: resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} peerDependencies: eslint: '>=5' dependencies: - eslint: 7.30.0 + eslint: 7.31.0 eslint-visitor-keys: 2.0.0 dev: true @@ -2886,13 +2945,13 @@ packages: engines: {node: '>=10'} dev: true - /eslint/7.30.0: - resolution: {integrity: sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg==} + /eslint/7.31.0: + resolution: {integrity: sha512-vafgJpSh2ia8tnTkNUkwxGmnumgckLh5aAbLa1xRmIn9+owi8qBNGKL+B881kNKNTy7FFqTEkpNkUvmw0n6PkA==} engines: {node: ^10.12.0 || >=12.0.0} hasBin: true dependencies: '@babel/code-frame': 7.12.11 - '@eslint/eslintrc': 0.4.2 + '@eslint/eslintrc': 0.4.3 '@humanwhocodes/config-array': 0.5.0 ajv: 6.12.6 chalk: 4.1.0 @@ -3000,10 +3059,6 @@ packages: type: 2.1.0 dev: true - /extend/3.0.2: - resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - dev: true - /fast-deep-equal/3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true @@ -3034,23 +3089,6 @@ packages: reusify: 1.0.4 dev: true - /fault/1.0.4: - resolution: {integrity: sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==} - dependencies: - format: 0.2.2 - dev: true - - /figgy-pudding/3.5.2: - resolution: {integrity: sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==} - dev: true - - /figures/3.2.0: - resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} - engines: {node: '>=8'} - dependencies: - escape-string-regexp: 1.0.5 - dev: true - /file-entry-cache/6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -3088,13 +3126,6 @@ packages: locate-path: 2.0.0 dev: true - /find-up/3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - dependencies: - locate-path: 3.0.0 - dev: true - /find-up/4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -3146,11 +3177,6 @@ packages: signal-exit: 3.0.3 dev: true - /format/0.2.2: - resolution: {integrity: sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=} - engines: {node: '>=0.4.x'} - dev: true - /fs-access/2.0.0: resolution: {integrity: sha512-Vt45hBKJrYDQeAD9ja43liw8JfK75uB7XexIXWEtDKwFLQNmzmvuulh28hRxexxuFm0zsGGq7nISGQSK6KnGrA==} engines: {node: '>=0.10.0'} @@ -3197,7 +3223,7 @@ packages: dependencies: function-bind: 1.1.1 has: 1.0.3 - has-symbols: 1.0.1 + has-symbols: 1.0.2 dev: true /get-package-type/0.1.0: @@ -3236,17 +3262,6 @@ packages: is-glob: 4.0.1 dev: true - /glob/7.1.6: - resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.0.4 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: true - /glob/7.1.7: resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} dependencies: @@ -3526,11 +3541,6 @@ packages: call-bind: 1.0.2 dev: true - /is-buffer/2.0.5: - resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} - engines: {node: '>=4'} - dev: true - /is-builtin-module/3.1.0: resolution: {integrity: sha512-OV7JjAgOTfAFJmHZLvpSTb4qi0nIILDV1gWPYDnDJUTNFM5aGlRAhk4QcT8i7TuAleeEV5Fdkqn3t4mS+Q11fg==} engines: {node: '>=6'} @@ -3577,10 +3587,6 @@ packages: hasBin: true dev: true - /is-empty/1.2.0: - resolution: {integrity: sha1-3pu1snhzigWgsJpX4ftNSjQan2s=} - dev: true - /is-extglob/2.1.1: resolution: {integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=} engines: {node: '>=0.10.0'} @@ -3804,8 +3810,8 @@ packages: argparse: 2.0.1 dev: true - /jsdoc-type-pratt-parser/1.0.4: - resolution: {integrity: sha512-jzmW9gokeq9+bHPDR1nCeidMyFUikdZlbOhKzh9+/nJqB75XhpNKec1/UuxW5c4+O+Pi31Gc/dCboyfSm/pSpQ==} + /jsdoc-type-pratt-parser/1.1.1: + resolution: {integrity: sha512-uelRmpghNwPBuZScwgBG/OzodaFk5RbO5xaivBdsAY70icWfShwZ7PCMO0x1zSkOa8T1FzHThmrdoyg/0AwV5g==} engines: {node: '>=12.0.0'} dev: true @@ -3889,14 +3895,6 @@ packages: type-check: 0.4.0 dev: true - /libnpmconfig/1.2.1: - resolution: {integrity: sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA==} - dependencies: - figgy-pudding: 3.5.2 - find-up: 3.0.0 - ini: 1.3.8 - dev: true - /license-badger/0.19.0: resolution: {integrity: sha512-v7JWC3SxaF5GBlgVzBuvA5uqFKMRF1TIPgM07BubJ4zFXpIUnqWNXNr8a3Fpu2ztArVseQum7Gg8VEuLxCM6Gg==} engines: {node: '>=8.3.0'} @@ -3953,13 +3951,6 @@ packages: strip-bom: 3.0.0 dev: true - /load-plugin/3.0.0: - resolution: {integrity: sha512-od7eKCCZ62ITvFf8nHHrIiYmgOHb4xVNDRDqxBWSaao5FZyyZVX8OmRCbwjDGPrSrgIulwPNyBsWCGnhiDC0oQ==} - dependencies: - libnpmconfig: 1.2.1 - resolve-from: 5.0.0 - dev: true - /locate-path/2.0.0: resolution: {integrity: sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=} engines: {node: '>=4'} @@ -3968,14 +3959,6 @@ packages: path-exists: 3.0.0 dev: true - /locate-path/3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - dev: true - /locate-path/5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -4030,10 +4013,6 @@ packages: is-unicode-supported: 0.1.0 dev: true - /longest-streak/2.0.4: - resolution: {integrity: sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==} - dev: true - /lowercase-keys/1.0.1: resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} engines: {node: '>=0.10.0'} @@ -4078,11 +4057,6 @@ packages: engines: {node: '>=8'} dev: true - /markdown-extensions/1.1.1: - resolution: {integrity: sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q==} - engines: {node: '>=0.10.0'} - dev: true - /marked/2.1.2: resolution: {integrity: sha512-ueJhIvklJJw04qxQbGIAu63EXwwOCYc7yKMBjgagTM4rjC5QtWyqSNgW7jCosV1/Km/1TUfs5qEpAqcGG0Mo5g==} engines: {node: '>= 10'} @@ -4101,17 +4075,6 @@ packages: - supports-color dev: true - /mdast-util-to-markdown/0.6.5: - resolution: {integrity: sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==} - dependencies: - '@types/unist': 2.0.3 - longest-streak: 2.0.4 - mdast-util-to-string: 2.0.0 - parse-entities: 2.0.0 - repeat-string: 1.6.1 - zwitch: 1.0.5 - dev: true - /mdast-util-to-string/2.0.0: resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} dev: true @@ -4220,7 +4183,7 @@ packages: fast-glob: 3.2.5 dev: true - /mocha-multi-reporters/1.5.1_mocha@9.0.2: + /mocha-multi-reporters/1.5.1_mocha@9.0.3: resolution: {integrity: sha512-Yb4QJOaGLIcmB0VY7Wif5AjvLMUFAdV57D2TWEva1Y0kU/3LjKpeRVmlMIfuO1SVbauve459kgtIizADqxMWPg==} engines: {node: '>=6.0.0'} peerDependencies: @@ -4228,13 +4191,13 @@ packages: dependencies: debug: 4.3.1 lodash: 4.17.20 - mocha: 9.0.2 + mocha: 9.0.3 transitivePeerDependencies: - supports-color dev: true - /mocha/9.0.2: - resolution: {integrity: sha512-FpspiWU+UT9Sixx/wKimvnpkeW0mh6ROAKkIaPokj3xZgxeRhcna/k5X57jJghEr8X+Cgu/Vegf8zCX5ugSuTA==} + /mocha/9.0.3: + resolution: {integrity: sha512-hnYFrSefHxYS2XFGtN01x8un0EwNu2bzKvhpRFhgoybIvMaOkkL60IVPmkb5h6XDmUl4IMSB+rT5cIO4/4bJgg==} engines: {node: '>= 12.0.0'} hasBin: true dependencies: @@ -4299,10 +4262,6 @@ packages: resolution: {integrity: sha1-yobR/ogoFpsBICCOPchCS524NCw=} dev: true - /node-releases/1.1.70: - resolution: {integrity: sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==} - dev: true - /node-releases/1.1.73: resolution: {integrity: sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg==} dev: true @@ -4484,13 +4443,6 @@ packages: p-limit: 1.3.0 dev: true - /p-locate/3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} - dependencies: - p-limit: 2.3.0 - dev: true - /p-locate/4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -4819,13 +4771,6 @@ packages: once: 1.4.0 dev: true - /readdirp/3.5.0: - resolution: {integrity: sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==} - engines: {node: '>=8.10.0'} - dependencies: - picomatch: 2.2.2 - dev: true - /readdirp/3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} @@ -4919,64 +4864,6 @@ packages: jsesc: 0.5.0 dev: true - /remark-cli/9.0.0: - resolution: {integrity: sha512-y6kCXdwZoMoh0Wo4Och1tDW50PmMc86gW6GpF08v9d+xUCEJE2wwXdQ+TnTaUamRnfFdU+fE+eNf2PJ53cyq8g==} - hasBin: true - dependencies: - markdown-extensions: 1.1.1 - remark: 13.0.0 - unified-args: 8.1.0 - transitivePeerDependencies: - - supports-color - dev: true - - /remark-lint-code-block-style/2.0.1: - resolution: {integrity: sha512-eRhmnColmSxJhO61GHZkvO67SpHDshVxs2j3+Zoc5Y1a4zQT2133ZAij04XKaBFfsVLjhbY/+YOWxgvtjx2nmA==} - dependencies: - unified-lint-rule: 1.0.6 - unist-util-generated: 1.1.6 - unist-util-position: 3.1.0 - unist-util-visit: 2.0.3 - dev: true - - /remark-lint-ordered-list-marker-value/2.0.1: - resolution: {integrity: sha512-blt9rS7OKxZ2NW8tqojELeyNEwPhhTJGVa+YpUkdEH+KnrdcD7Nzhnj6zfLWOx6jFNZk3jpq5nvLFAPteHaNKg==} - dependencies: - unified-lint-rule: 1.0.6 - unist-util-generated: 1.1.6 - unist-util-position: 3.1.0 - unist-util-visit: 2.0.3 - dev: true - - /remark-parse/9.0.0: - resolution: {integrity: sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==} - dependencies: - mdast-util-from-markdown: 0.8.5 - transitivePeerDependencies: - - supports-color - dev: true - - /remark-stringify/9.0.1: - resolution: {integrity: sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==} - dependencies: - mdast-util-to-markdown: 0.6.5 - dev: true - - /remark/13.0.0: - resolution: {integrity: sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA==} - dependencies: - remark-parse: 9.0.0 - remark-stringify: 9.0.1 - unified: 9.2.0 - transitivePeerDependencies: - - supports-color - dev: true - - /repeat-string/1.6.1: - resolution: {integrity: sha1-jcrkcOHIirwtYA//Sndihtp15jc=} - engines: {node: '>=0.10'} - dev: true - /require-directory/2.1.1: resolution: {integrity: sha1-jGStX9MNqxyXbiNE/+f3kqam30I=} engines: {node: '>=0.10.0'} @@ -5037,20 +4924,20 @@ packages: glob: 7.1.7 dev: true - /rollup-plugin-terser/7.0.2_rollup@2.52.7: + /rollup-plugin-terser/7.0.2_rollup@2.55.0: resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==} peerDependencies: rollup: ^2.0.0 dependencies: '@babel/code-frame': 7.12.13 jest-worker: 26.6.2 - rollup: 2.52.7 + rollup: 2.55.0 serialize-javascript: 4.0.0 terser: 5.5.1 dev: true - /rollup/2.52.7: - resolution: {integrity: sha512-55cSH4CCU6MaPr9TAOyrIC+7qFCHscL7tkNsm1MBfIJRRqRbCEY0mmeFn4Wg8FKsHtEH8r389Fz38r/o+kgXLg==} + /rollup/2.55.0: + resolution: {integrity: sha512-Atc3QqelKzrKwRkqnSdq0d2Mi8e0iGuL+kZebKMZ4ysyWHD5hw9VfVCAuODIW5837RENV8LXcbAEHurYf+ArvA==} engines: {node: '>=10.0.0'} hasBin: true optionalDependencies: @@ -5105,12 +4992,6 @@ packages: hasBin: true dev: true - /semver/7.3.2: - resolution: {integrity: sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==} - engines: {node: '>=10'} - hasBin: true - dev: true - /semver/7.3.5: resolution: {integrity: sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==} engines: {node: '>=10'} @@ -5172,10 +5053,6 @@ packages: is-fullwidth-code-point: 3.0.0 dev: true - /sliced/1.0.1: - resolution: {integrity: sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=} - dev: true - /source-map-support/0.5.19: resolution: {integrity: sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==} dependencies: @@ -5384,13 +5261,6 @@ packages: has-flag: 3.0.0 dev: true - /supports-color/6.1.0: - resolution: {integrity: sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==} - engines: {node: '>=6'} - dependencies: - has-flag: 3.0.0 - dev: true - /supports-color/7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -5508,13 +5378,6 @@ packages: is-number: 7.0.0 dev: true - /to-vfile/6.1.0: - resolution: {integrity: sha512-BxX8EkCxOAZe+D/ToHdDsJcVI4HqQfmw0tCkp31zf3dNP/XWIAjU4CmeuSwsSoOzOTqHPOL0KUzyZqJplkD0Qw==} - dependencies: - is-buffer: 2.0.5 - vfile: 4.2.1 - dev: true - /token-types/2.1.1: resolution: {integrity: sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==} engines: {node: '>=0.1.98'} @@ -5528,10 +5391,6 @@ packages: engines: {node: '>=12'} dev: true - /trough/1.0.5: - resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} - dev: true - /tsconfig-paths/3.9.0: resolution: {integrity: sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==} dependencies: @@ -5592,17 +5451,13 @@ packages: is-typedarray: 1.0.0 dev: true - /typedarray/0.0.6: - resolution: {integrity: sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=} - dev: true - /typedoc-default-themes/0.12.10: resolution: {integrity: sha512-fIS001cAYHkyQPidWXmHuhs8usjP5XVJjWB8oZGqkTowZaz3v7g3KDZeeqE82FBrmkAnIBOY3jgy7lnPnqATbA==} engines: {node: '>= 8'} dev: true - /typedoc/0.21.2_typescript@4.3.5: - resolution: {integrity: sha512-SR1ByJB3USg+jxoxwzMRP07g/0f/cQUE5t7gOh1iTUyjTPyJohu9YSKRlK+MSXXqlhIq+m0jkEHEG5HoY7/Adg==} + /typedoc/0.21.4_typescript@4.3.5: + resolution: {integrity: sha512-slZQhvD9U0d9KacktYAyuNMMOXJRFNHy+Gd8xY2Qrqq3eTTTv3frv3N4au/cFnab9t3T5WA0Orb6QUjMc+1bDA==} engines: {node: '>= 12.20.0'} hasBin: true peerDependencies: @@ -5610,7 +5465,6 @@ packages: dependencies: glob: 7.1.7 handlebars: 4.7.7 - lodash: 4.17.21 lunr: 2.3.9 marked: 2.1.2 minimatch: 3.0.4 @@ -5675,62 +5529,6 @@ packages: engines: {node: '>=4'} dev: true - /unified-args/8.1.0: - resolution: {integrity: sha512-t1HPS1cQPsVvt/6EtyWIbQGurza5684WGRigNghZRvzIdHm3LPgMdXPyGx0npORKzdiy5+urkF0rF5SXM8lBuQ==} - dependencies: - camelcase: 5.3.1 - chalk: 3.0.0 - chokidar: 3.5.1 - fault: 1.0.4 - json5: 2.2.0 - minimist: 1.2.5 - text-table: 0.2.0 - unified-engine: 8.0.0 - transitivePeerDependencies: - - supports-color - dev: true - - /unified-engine/8.0.0: - resolution: {integrity: sha512-vLUezxCnjzz+ya4pYouRQVMT8k82Rk4fIj406UidRnSFJdGXFaQyQklAnalsQHJrLqAlaYPkXPUa1upfVSHGCA==} - dependencies: - concat-stream: 2.0.0 - debug: 4.3.1 - fault: 1.0.4 - figures: 3.2.0 - glob: 7.1.6 - ignore: 5.1.8 - is-buffer: 2.0.5 - is-empty: 1.2.0 - is-plain-obj: 2.1.0 - js-yaml: 3.14.1 - load-plugin: 3.0.0 - parse-json: 5.2.0 - to-vfile: 6.1.0 - trough: 1.0.5 - unist-util-inspect: 5.0.1 - vfile-reporter: 6.0.2 - vfile-statistics: 1.1.4 - transitivePeerDependencies: - - supports-color - dev: true - - /unified-lint-rule/1.0.6: - resolution: {integrity: sha512-YPK15YBFwnsVorDFG/u0cVVQN5G2a3V8zv5/N6KN3TCG+ajKtaALcy7u14DCSrJI+gZeyYquFL9cioJXOGXSvg==} - dependencies: - wrapped: 1.0.1 - dev: true - - /unified/9.2.0: - resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==} - dependencies: - bail: 1.0.5 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 2.1.0 - trough: 1.0.5 - vfile: 4.2.1 - dev: true - /union/0.5.0: resolution: {integrity: sha512-N6uOhuW6zO95P3Mel2I2zMsbsanvvtgn6jVqJv4vbVcz/JN0OkL9suomjQGmWtxJQXOCqUJvquc1sMeNz/IwlA==} engines: {node: '>= 0.8.0'} @@ -5745,45 +5543,12 @@ packages: crypto-random-string: 2.0.0 dev: true - /unist-util-generated/1.1.6: - resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==} - dev: true - - /unist-util-inspect/5.0.1: - resolution: {integrity: sha512-fPNWewS593JSmg49HbnE86BJKuBi1/nMWhDSccBvbARfxezEuJV85EaARR9/VplveiwCoLm2kWq+DhP8TBaDpw==} - dependencies: - is-empty: 1.2.0 - dev: true - - /unist-util-is/4.0.4: - resolution: {integrity: sha512-3dF39j/u423v4BBQrk1AQ2Ve1FxY5W3JKwXxVFzBODQ6WEvccguhgp802qQLKSnxPODE6WuRZtV+ohlUg4meBA==} - dev: true - - /unist-util-position/3.1.0: - resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==} - dev: true - /unist-util-stringify-position/2.0.3: resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} dependencies: '@types/unist': 2.0.3 dev: true - /unist-util-visit-parents/3.1.1: - resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==} - dependencies: - '@types/unist': 2.0.3 - unist-util-is: 4.0.4 - dev: true - - /unist-util-visit/2.0.3: - resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==} - dependencies: - '@types/unist': 2.0.3 - unist-util-is: 4.0.4 - unist-util-visit-parents: 3.1.1 - dev: true - /unquote/1.1.1: resolution: {integrity: sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=} dev: true @@ -5863,41 +5628,6 @@ packages: spdx-expression-parse: 3.0.1 dev: true - /vfile-message/2.0.4: - resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==} - dependencies: - '@types/unist': 2.0.3 - unist-util-stringify-position: 2.0.3 - dev: true - - /vfile-reporter/6.0.2: - resolution: {integrity: sha512-GN2bH2gs4eLnw/4jPSgfBjo+XCuvnX9elHICJZjVD4+NM0nsUrMTvdjGY5Sc/XG69XVTgLwj7hknQVc6M9FukA==} - dependencies: - repeat-string: 1.6.1 - string-width: 4.2.0 - supports-color: 6.1.0 - unist-util-stringify-position: 2.0.3 - vfile-sort: 2.2.2 - vfile-statistics: 1.1.4 - dev: true - - /vfile-sort/2.2.2: - resolution: {integrity: sha512-tAyUqD2R1l/7Rn7ixdGkhXLD3zsg+XLAeUDUhXearjfIcpL1Hcsj5hHpCoy/gvfK/Ws61+e972fm0F7up7hfYA==} - dev: true - - /vfile-statistics/1.1.4: - resolution: {integrity: sha512-lXhElVO0Rq3frgPvFBwahmed3X03vjPF8OcjKMy8+F1xU/3Q3QU3tKEDp743SFtb74PdF0UWpxPvtOP0GCLheA==} - dev: true - - /vfile/4.2.1: - resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} - dependencies: - '@types/unist': 2.0.3 - is-buffer: 2.0.5 - unist-util-stringify-position: 2.0.3 - vfile-message: 2.0.4 - dev: true - /vscode-textmate/5.2.0: resolution: {integrity: sha512-Uw5ooOQxRASHgu6C7GVvUxisKXfSgW4oFlO+aa+PAkgmH89O3CXxEEzNRNtHSqtXFTl0nAC1uYj0GMSH27uwtQ==} dev: true @@ -5963,13 +5693,6 @@ packages: strip-ansi: 6.0.0 dev: true - /wrapped/1.0.1: - resolution: {integrity: sha1-x4PZ2Aeyc+mwHoUWgKk4yHyQckI=} - dependencies: - co: 3.1.0 - sliced: 1.0.1 - dev: true - /wrappy/1.0.2: resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=} dev: true @@ -6038,7 +5761,3 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} dev: true - - /zwitch/1.0.5: - resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} - dev: true From 0f8ff1aed286448fb7eecda07a1441af1c54a6ed Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Tue, 14 Jan 2020 16:28:29 +0800 Subject: [PATCH 2/6] - Enhancement: jsdoc/typescript type for better clarity and specificty --- src/jsonpath.d.ts | 29 ++++++++++++++--------------- src/jsonpath.js | 8 ++++---- 2 files changed, 18 insertions(+), 19 deletions(-) diff --git a/src/jsonpath.d.ts b/src/jsonpath.d.ts index 109bc9a..0e77210 100644 --- a/src/jsonpath.d.ts +++ b/src/jsonpath.d.ts @@ -3,22 +3,24 @@ */ declare module 'jsonpath-plus' { type JSONPathCallback = ( - payload: any, payloadType: any, fullPayload: any - ) => any + payload: any, payloadType: "value"|"property", fullPayload: any + ) => void - type JSONPathOtherTypeCallback = (...args: any[]) => void + type JSONPathOtherTypeCallback = (...args: any[]) => boolean + + type JSON = null|boolean|number|string|{[key: string]: JSON}|JSON[] interface JSONPathOptions { /** * The JSONPath expression as a (normalized or unnormalized) string or * array. */ - path: string | any[] + path?: string | string[] /** * The JSON object to evaluate (whether of null, boolean, number, * string, object, or array type). */ - json: null | boolean | number | string | object | any[] + json?: JSON|any /** * If this is supplied as false, one may call the evaluate method * manually. @@ -54,7 +56,7 @@ declare module 'jsonpath-plus' { * (Note that the current path and value will also be available to those * expressions; see the Syntax section for details.) */ - sandbox?: Map + sandbox?: { [k: string]: any } /** * Whether or not to wrap the results in an array. * @@ -95,7 +97,7 @@ declare module 'jsonpath-plus' { * * @default null */ - parentProperty?: null | any + parentProperty?: null | string /** * If supplied, a callback will be called immediately upon retrieval of * an end point value. @@ -146,7 +148,9 @@ declare module 'jsonpath-plus' { * Exposes the cache object for those who wish to preserve and reuse * it for optimization purposes. */ - cache: any + cache: { + [key: string]: string[] + } /** * Accepts a normalized or unnormalized path as string and @@ -174,7 +178,7 @@ declare module 'jsonpath-plus' { * The JSONPath terminal constructions `~` and `^` and type operators * like `@string()` are silently stripped. */ - toPointer(path: string[]): any + toPointer(path: string[]): string evaluate( path: JSONPathOptions['path'], @@ -182,12 +186,7 @@ declare module 'jsonpath-plus' { callback: JSONPathOptions['callback'], otherTypeCallback: JSONPathOptions['otherTypeCallback'] ): any - evaluate(options: { - path: JSONPathOptions['path'], - json: JSONPathOptions['json'], - callback: JSONPathOptions['callback'], - otherTypeCallback: JSONPathOptions['otherTypeCallback'] - }): any + evaluate(options?: JSONPathOptions): any } type JSONPathType = JSONPathCallable & JSONPathClass diff --git a/src/jsonpath.js b/src/jsonpath.js index 4f0c6de..56d3f2b 100644 --- a/src/jsonpath.js +++ b/src/jsonpath.js @@ -1,7 +1,7 @@ const {hasOwnProperty: hasOwnProp} = Object.prototype; /** -* @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject +* @typedef {null|boolean|number|string|object|JSON[]} JSON */ /** @@ -49,7 +49,7 @@ class NewError extends Error { /** * @typedef {PlainObject} ReturnObject * @property {string} path -* @property {JSONObject} value +* @property {JSON} value * @property {PlainObject|GenericArray} parent * @property {string} parentProperty */ @@ -64,7 +64,7 @@ class NewError extends Error { /** * @callback OtherTypeCallback -* @param {JSONObject} val +* @param {JSON} val * @param {string} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName @@ -287,7 +287,7 @@ JSONPath.prototype._handleCallback = function (fullRetObj, callback, type) { /** * * @param {string} expr - * @param {JSONObject} val + * @param {JSON} val * @param {string} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName From 9b94ddeb98c9ce44ef6ca9a4d6d5217acaa9e8b7 Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Tue, 14 Jan 2020 16:42:06 +0800 Subject: [PATCH 3/6] - Further type fixes/clarifications --- src/jsonpath.d.ts | 4 +++- src/jsonpath.js | 6 +++--- test/test.type-operators.js | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/jsonpath.d.ts b/src/jsonpath.d.ts index 0e77210..70d212f 100644 --- a/src/jsonpath.d.ts +++ b/src/jsonpath.d.ts @@ -6,7 +6,9 @@ declare module 'jsonpath-plus' { payload: any, payloadType: "value"|"property", fullPayload: any ) => void - type JSONPathOtherTypeCallback = (...args: any[]) => boolean + type JSONPathOtherTypeCallback = ( + val: JSON|any, path: string[], parent: object|array, parentPropName: string + ) => boolean type JSON = null|boolean|number|string|{[key: string]: JSON}|JSON[] diff --git a/src/jsonpath.js b/src/jsonpath.js index 56d3f2b..d42ff9a 100644 --- a/src/jsonpath.js +++ b/src/jsonpath.js @@ -48,7 +48,7 @@ class NewError extends Error { /** * @typedef {PlainObject} ReturnObject -* @property {string} path +* @property {string[]} path * @property {JSON} value * @property {PlainObject|GenericArray} parent * @property {string} parentProperty @@ -65,7 +65,7 @@ class NewError extends Error { /** * @callback OtherTypeCallback * @param {JSON} val -* @param {string} path +* @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @returns {boolean} @@ -288,7 +288,7 @@ JSONPath.prototype._handleCallback = function (fullRetObj, callback, type) { * * @param {string} expr * @param {JSON} val - * @param {string} path + * @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @param {JSONPathCallback} callback diff --git a/test/test.type-operators.js b/test/test.type-operators.js index b2df9d3..2c0f054 100644 --- a/test/test.type-operators.js +++ b/test/test.type-operators.js @@ -70,7 +70,7 @@ describe('JSONPath - Type Operators', function () { /** * * @param {any} val - * @param {string} path + * @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @returns {boolean} From 38c7be1fba1e2d26e186a62b33a4d24a48653644 Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Tue, 14 Jan 2020 16:43:29 +0800 Subject: [PATCH 4/6] - Fix --- src/jsonpath.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jsonpath.d.ts b/src/jsonpath.d.ts index 70d212f..387f381 100644 --- a/src/jsonpath.d.ts +++ b/src/jsonpath.d.ts @@ -7,7 +7,7 @@ declare module 'jsonpath-plus' { ) => void type JSONPathOtherTypeCallback = ( - val: JSON|any, path: string[], parent: object|array, parentPropName: string + val: JSON|any, path: string[], parent: object|any[], parentPropName: string ) => boolean type JSON = null|boolean|number|string|{[key: string]: JSON}|JSON[] From e1660d89f945b7abc75567aa20530e1b6f7ecc4b Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Fri, 30 Jul 2021 00:27:10 +0800 Subject: [PATCH 5/6] rename k to key --- src/jsonpath.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jsonpath.d.ts b/src/jsonpath.d.ts index 387f381..e4559cf 100644 --- a/src/jsonpath.d.ts +++ b/src/jsonpath.d.ts @@ -58,7 +58,7 @@ declare module 'jsonpath-plus' { * (Note that the current path and value will also be available to those * expressions; see the Syntax section for details.) */ - sandbox?: { [k: string]: any } + sandbox?: { [key: string]: any } /** * Whether or not to wrap the results in an array. * From 2b6090a29ea418c3bfcf902d01ef84bf1f44f389 Mon Sep 17 00:00:00 2001 From: Brett Zamir Date: Sat, 19 Mar 2022 07:01:49 +0800 Subject: [PATCH 6/6] - Update: Build --- dist/index-browser-esm.js | 14 +++++++------- dist/index-browser-esm.min.js.map | 2 +- dist/index-browser-umd.cjs | 14 +++++++------- dist/index-browser-umd.min.cjs.map | 2 +- dist/index-node-cjs.cjs | 14 +++++++------- dist/index-node-esm.js | 14 +++++++------- 6 files changed, 30 insertions(+), 30 deletions(-) diff --git a/dist/index-browser-esm.js b/dist/index-browser-esm.js index 0b00d23..d10fb2a 100644 --- a/dist/index-browser-esm.js +++ b/dist/index-browser-esm.js @@ -246,7 +246,7 @@ function _createForOfIteratorHelper(o, allowArrayLike) { var hasOwnProp = Object.prototype.hasOwnProperty; /** -* @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject +* @typedef {null|boolean|number|string|object|JSON[]} JSON */ /** @@ -304,8 +304,8 @@ var NewError = /*#__PURE__*/function (_Error) { }( /*#__PURE__*/_wrapNativeSuper(Error)); /** * @typedef {PlainObject} ReturnObject -* @property {string} path -* @property {JSONObject} value +* @property {string[]} path +* @property {JSON} value * @property {PlainObject|GenericArray} parent * @property {string} parentProperty */ @@ -320,8 +320,8 @@ var NewError = /*#__PURE__*/function (_Error) { /** * @callback OtherTypeCallback -* @param {JSONObject} val -* @param {string} path +* @param {JSON} val +* @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @returns {boolean} @@ -549,8 +549,8 @@ JSONPath.prototype._handleCallback = function (fullRetObj, callback, type) { /** * * @param {string} expr - * @param {JSONObject} val - * @param {string} path + * @param {JSON} val + * @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @param {JSONPathCallback} callback diff --git a/dist/index-browser-esm.min.js.map b/dist/index-browser-esm.min.js.map index 1e92192..fba7231 100644 --- a/dist/index-browser-esm.min.js.map +++ b/dist/index-browser-esm.min.js.map @@ -1 +1 @@ -{"version":3,"file":"index-browser-esm.min.js","sources":["../src/jsonpath.js","../src/jsonpath-browser.js"],"sourcesContent":["const {hasOwnProperty: hasOwnProp} = Object.prototype;\n\n/**\n* @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject\n*/\n\n/**\n * Copies array and then pushes item into it.\n * @param {GenericArray} arr Array to copy and into which to push\n * @param {any} item Array item to add (to end)\n * @returns {GenericArray} Copy of the original array\n */\nfunction push (arr, item) {\n arr = arr.slice();\n arr.push(item);\n return arr;\n}\n/**\n * Copies array and then unshifts item into it.\n * @param {any} item Array item to add (to beginning)\n * @param {GenericArray} arr Array to copy and into which to unshift\n * @returns {GenericArray} Copy of the original array\n */\nfunction unshift (item, arr) {\n arr = arr.slice();\n arr.unshift(item);\n return arr;\n}\n\n/**\n * Caught when JSONPath is used without `new` but rethrown if with `new`\n * @extends Error\n */\nclass NewError extends Error {\n /**\n * @param {any} value The evaluated scalar value\n */\n constructor (value) {\n super(\n 'JSONPath should not be called with \"new\" (it prevents return ' +\n 'of (unwrapped) scalar values)'\n );\n this.avoidNew = true;\n this.value = value;\n this.name = 'NewError';\n }\n}\n\n/**\n* @typedef {PlainObject} ReturnObject\n* @property {string} path\n* @property {JSONObject} value\n* @property {PlainObject|GenericArray} parent\n* @property {string} parentProperty\n*/\n\n/**\n* @callback JSONPathCallback\n* @param {string|PlainObject} preferredOutput\n* @param {\"value\"|\"property\"} type\n* @param {ReturnObject} fullRetObj\n* @returns {void}\n*/\n\n/**\n* @callback OtherTypeCallback\n* @param {JSONObject} val\n* @param {string} path\n* @param {PlainObject|GenericArray} parent\n* @param {string} parentPropName\n* @returns {boolean}\n*/\n\n/* eslint-disable max-len -- Can make multiline type after https://github.com/syavorsky/comment-parser/issues/109 */\n/**\n * @typedef {PlainObject} JSONPathOptions\n * @property {JSON} json\n * @property {string|string[]} path\n * @property {\"value\"|\"path\"|\"pointer\"|\"parent\"|\"parentProperty\"|\"all\"} [resultType=\"value\"]\n * @property {boolean} [flatten=false]\n * @property {boolean} [wrap=true]\n * @property {PlainObject} [sandbox={}]\n * @property {boolean} [preventEval=false]\n * @property {PlainObject|GenericArray|null} [parent=null]\n * @property {string|null} [parentProperty=null]\n * @property {JSONPathCallback} [callback]\n * @property {OtherTypeCallback} [otherTypeCallback] Defaults to\n * function which throws on encountering `@other`\n * @property {boolean} [autostart=true]\n */\n/* eslint-enable max-len -- Can make multiline type after https://github.com/syavorsky/comment-parser/issues/109 */\n\n/**\n * @param {string|JSONPathOptions} opts If a string, will be treated as `expr`\n * @param {string} [expr] JSON path to evaluate\n * @param {JSON} [obj] JSON object to evaluate against\n * @param {JSONPathCallback} [callback] Passed 3 arguments: 1) desired payload\n * per `resultType`, 2) `\"value\"|\"property\"`, 3) Full returned object with\n * all payloads\n * @param {OtherTypeCallback} [otherTypeCallback] If `@other()` is at the end\n * of one's query, this will be invoked with the value of the item, its\n * path, its parent, and its parent's property name, and it should return\n * a boolean indicating whether the supplied value belongs to the \"other\"\n * type or not (or it may handle transformations and return `false`).\n * @returns {JSONPath}\n * @class\n */\nfunction JSONPath (opts, expr, obj, callback, otherTypeCallback) {\n // eslint-disable-next-line no-restricted-syntax\n if (!(this instanceof JSONPath)) {\n try {\n return new JSONPath(opts, expr, obj, callback, otherTypeCallback);\n } catch (e) {\n if (!e.avoidNew) {\n throw e;\n }\n return e.value;\n }\n }\n\n if (typeof opts === 'string') {\n otherTypeCallback = callback;\n callback = obj;\n obj = expr;\n expr = opts;\n opts = null;\n }\n const optObj = opts && typeof opts === 'object';\n opts = opts || {};\n this.json = opts.json || obj;\n this.path = opts.path || expr;\n this.resultType = opts.resultType || 'value';\n this.flatten = opts.flatten || false;\n this.wrap = hasOwnProp.call(opts, 'wrap') ? opts.wrap : true;\n this.sandbox = opts.sandbox || {};\n this.preventEval = opts.preventEval || false;\n this.parent = opts.parent || null;\n this.parentProperty = opts.parentProperty || null;\n this.callback = opts.callback || callback || null;\n this.otherTypeCallback = opts.otherTypeCallback ||\n otherTypeCallback ||\n function () {\n throw new TypeError(\n 'You must supply an otherTypeCallback callback option ' +\n 'with the @other() operator.'\n );\n };\n\n if (opts.autostart !== false) {\n const args = {\n path: (optObj ? opts.path : expr)\n };\n if (!optObj) {\n args.json = obj;\n } else if ('json' in opts) {\n args.json = opts.json;\n }\n const ret = this.evaluate(args);\n if (!ret || typeof ret !== 'object') {\n throw new NewError(ret);\n }\n return ret;\n }\n}\n\n// PUBLIC METHODS\nJSONPath.prototype.evaluate = function (\n expr, json, callback, otherTypeCallback\n) {\n let currParent = this.parent,\n currParentProperty = this.parentProperty;\n let {flatten, wrap} = this;\n\n this.currResultType = this.resultType;\n this.currPreventEval = this.preventEval;\n this.currSandbox = this.sandbox;\n callback = callback || this.callback;\n this.currOtherTypeCallback = otherTypeCallback || this.otherTypeCallback;\n\n json = json || this.json;\n expr = expr || this.path;\n if (expr && typeof expr === 'object' && !Array.isArray(expr)) {\n if (!expr.path && expr.path !== '') {\n throw new TypeError(\n 'You must supply a \"path\" property when providing an object ' +\n 'argument to JSONPath.evaluate().'\n );\n }\n if (!(hasOwnProp.call(expr, 'json'))) {\n throw new TypeError(\n 'You must supply a \"json\" property when providing an object ' +\n 'argument to JSONPath.evaluate().'\n );\n }\n ({json} = expr);\n flatten = hasOwnProp.call(expr, 'flatten') ? expr.flatten : flatten;\n this.currResultType = hasOwnProp.call(expr, 'resultType')\n ? expr.resultType\n : this.currResultType;\n this.currSandbox = hasOwnProp.call(expr, 'sandbox')\n ? expr.sandbox\n : this.currSandbox;\n wrap = hasOwnProp.call(expr, 'wrap') ? expr.wrap : wrap;\n this.currPreventEval = hasOwnProp.call(expr, 'preventEval')\n ? expr.preventEval\n : this.currPreventEval;\n callback = hasOwnProp.call(expr, 'callback') ? expr.callback : callback;\n this.currOtherTypeCallback = hasOwnProp.call(expr, 'otherTypeCallback')\n ? expr.otherTypeCallback\n : this.currOtherTypeCallback;\n currParent = hasOwnProp.call(expr, 'parent') ? expr.parent : currParent;\n currParentProperty = hasOwnProp.call(expr, 'parentProperty')\n ? expr.parentProperty\n : currParentProperty;\n expr = expr.path;\n }\n currParent = currParent || null;\n currParentProperty = currParentProperty || null;\n\n if (Array.isArray(expr)) {\n expr = JSONPath.toPathString(expr);\n }\n if ((!expr && expr !== '') || !json) {\n return undefined;\n }\n\n const exprList = JSONPath.toPathArray(expr);\n if (exprList[0] === '$' && exprList.length > 1) { exprList.shift(); }\n this._hasParentSelector = null;\n const result = this\n ._trace(\n exprList, json, ['$'], currParent, currParentProperty, callback\n )\n .filter(function (ea) { return ea && !ea.isParentSelector; });\n\n if (!result.length) { return wrap ? [] : undefined; }\n if (!wrap && result.length === 1 && !result[0].hasArrExpr) {\n return this._getPreferredOutput(result[0]);\n }\n return result.reduce((rslt, ea) => {\n const valOrPath = this._getPreferredOutput(ea);\n if (flatten && Array.isArray(valOrPath)) {\n rslt = rslt.concat(valOrPath);\n } else {\n rslt.push(valOrPath);\n }\n return rslt;\n }, []);\n};\n\n// PRIVATE METHODS\n\nJSONPath.prototype._getPreferredOutput = function (ea) {\n const resultType = this.currResultType;\n switch (resultType) {\n case 'all': {\n const path = Array.isArray(ea.path)\n ? ea.path\n : JSONPath.toPathArray(ea.path);\n ea.pointer = JSONPath.toPointer(path);\n ea.path = typeof ea.path === 'string'\n ? ea.path\n : JSONPath.toPathString(ea.path);\n return ea;\n } case 'value': case 'parent': case 'parentProperty':\n return ea[resultType];\n case 'path':\n return JSONPath.toPathString(ea[resultType]);\n case 'pointer':\n return JSONPath.toPointer(ea.path);\n default:\n throw new TypeError('Unknown result type');\n }\n};\n\nJSONPath.prototype._handleCallback = function (fullRetObj, callback, type) {\n if (callback) {\n const preferredOutput = this._getPreferredOutput(fullRetObj);\n fullRetObj.path = typeof fullRetObj.path === 'string'\n ? fullRetObj.path\n : JSONPath.toPathString(fullRetObj.path);\n // eslint-disable-next-line node/callback-return\n callback(preferredOutput, type, fullRetObj);\n }\n};\n\n/**\n *\n * @param {string} expr\n * @param {JSONObject} val\n * @param {string} path\n * @param {PlainObject|GenericArray} parent\n * @param {string} parentPropName\n * @param {JSONPathCallback} callback\n * @param {boolean} hasArrExpr\n * @param {boolean} literalPriority\n * @returns {ReturnObject|ReturnObject[]}\n */\nJSONPath.prototype._trace = function (\n expr, val, path, parent, parentPropName, callback, hasArrExpr,\n literalPriority\n) {\n // No expr to follow? return path and value as the result of\n // this trace branch\n let retObj;\n if (!expr.length) {\n retObj = {\n path,\n value: val,\n parent,\n parentProperty: parentPropName,\n hasArrExpr\n };\n this._handleCallback(retObj, callback, 'value');\n return retObj;\n }\n\n const loc = expr[0], x = expr.slice(1);\n\n // We need to gather the return value of recursive trace calls in order to\n // do the parent sel computation.\n const ret = [];\n /**\n *\n * @param {ReturnObject|ReturnObject[]} elems\n * @returns {void}\n */\n function addRet (elems) {\n if (Array.isArray(elems)) {\n // This was causing excessive stack size in Node (with or\n // without Babel) against our performance test:\n // `ret.push(...elems);`\n elems.forEach((t) => {\n ret.push(t);\n });\n } else {\n ret.push(elems);\n }\n }\n if ((typeof loc !== 'string' || literalPriority) && val &&\n hasOwnProp.call(val, loc)\n ) { // simple case--directly follow property\n addRet(this._trace(x, val[loc], push(path, loc), val, loc, callback,\n hasArrExpr));\n // eslint-disable-next-line unicorn/prefer-switch -- Part of larger `if`\n } else if (loc === '*') { // all child properties\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n addRet(this._trace(unshift(m, _x), v, p, par, pr, cb,\n true, true));\n }\n );\n } else if (loc === '..') { // all descendent parent properties\n // Check remaining expression with val's immediate children\n addRet(\n this._trace(x, val, path, parent, parentPropName, callback,\n hasArrExpr)\n );\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n // We don't join m and x here because we only want parents,\n // not scalar values\n if (typeof v[m] === 'object') {\n // Keep going with recursive descent on val's\n // object children\n addRet(this._trace(\n unshift(l, _x), v[m], push(p, m), v, m, cb, true\n ));\n }\n }\n );\n // The parent sel computation is handled in the frame above using the\n // ancestor object of val\n } else if (loc === '^') {\n // This is not a final endpoint, so we do not invoke the callback here\n this._hasParentSelector = true;\n return {\n path: path.slice(0, -1),\n expr: x,\n isParentSelector: true\n };\n } else if (loc === '~') { // property name\n retObj = {\n path: push(path, loc),\n value: parentPropName,\n parent,\n parentProperty: null\n };\n this._handleCallback(retObj, callback, 'property');\n return retObj;\n } else if (loc === '$') { // root only\n addRet(this._trace(x, val, path, null, null, callback, hasArrExpr));\n } else if ((/^(-?\\d*):(-?\\d*):?(\\d*)$/u).test(loc)) { // [start:end:step] Python slice syntax\n addRet(\n this._slice(loc, x, val, path, parent, parentPropName, callback)\n );\n } else if (loc.indexOf('?(') === 0) { // [?(expr)] (filtering)\n if (this.currPreventEval) {\n throw new Error('Eval [?(expr)] prevented in JSONPath expression.');\n }\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n if (this._eval(l.replace(/^\\?\\((.*?)\\)$/u, '$1'), v[m], m, p, par, pr)) {\n addRet(this._trace(unshift(m, _x), v, p, par, pr, cb,\n true));\n }\n }\n );\n } else if (loc[0] === '(') { // [(expr)] (dynamic property/index)\n if (this.currPreventEval) {\n throw new Error('Eval [(expr)] prevented in JSONPath expression.');\n }\n // As this will resolve to a property name (but we don't know it\n // yet), property and parent information is relative to the\n // parent of the property to which this expression will resolve\n addRet(this._trace(unshift(\n this._eval(\n loc, val, path[path.length - 1],\n path.slice(0, -1), parent, parentPropName\n ),\n x\n ), val, path, parent, parentPropName, callback, hasArrExpr));\n } else if (loc[0] === '@') { // value type: @boolean(), etc.\n let addType = false;\n const valueType = loc.slice(1, -2);\n switch (valueType) {\n case 'scalar':\n if (!val || !(['object', 'function'].includes(typeof val))) {\n addType = true;\n }\n break;\n case 'boolean': case 'string': case 'undefined': case 'function':\n // eslint-disable-next-line valid-typeof\n if (typeof val === valueType) {\n addType = true;\n }\n break;\n case 'integer':\n if (Number.isFinite(val) && !(val % 1)) {\n addType = true;\n }\n break;\n case 'number':\n if (Number.isFinite(val)) {\n addType = true;\n }\n break;\n case 'nonFinite':\n if (typeof val === 'number' && !Number.isFinite(val)) {\n addType = true;\n }\n break;\n case 'object':\n // eslint-disable-next-line valid-typeof\n if (val && typeof val === valueType) {\n addType = true;\n }\n break;\n case 'array':\n if (Array.isArray(val)) {\n addType = true;\n }\n break;\n case 'other':\n addType = this.currOtherTypeCallback(\n val, path, parent, parentPropName\n );\n break;\n case 'null':\n if (val === null) {\n addType = true;\n }\n break;\n /* c8 ignore next 2 */\n default:\n throw new TypeError('Unknown value type ' + valueType);\n }\n if (addType) {\n retObj = {path, value: val, parent, parentProperty: parentPropName};\n this._handleCallback(retObj, callback, 'value');\n return retObj;\n }\n // `-escaped property\n } else if (loc[0] === '`' && val && hasOwnProp.call(val, loc.slice(1))) {\n const locProp = loc.slice(1);\n addRet(this._trace(\n x, val[locProp], push(path, locProp), val, locProp, callback,\n hasArrExpr, true\n ));\n } else if (loc.includes(',')) { // [name1,name2,...]\n const parts = loc.split(',');\n for (const part of parts) {\n addRet(this._trace(\n unshift(part, x), val, path, parent, parentPropName, callback,\n true\n ));\n }\n // simple case--directly follow property\n } else if (\n !literalPriority && val && hasOwnProp.call(val, loc)\n ) {\n addRet(\n this._trace(x, val[loc], push(path, loc), val, loc, callback,\n hasArrExpr, true)\n );\n }\n\n // We check the resulting values for parent selections. For parent\n // selections we discard the value object and continue the trace with the\n // current val object\n if (this._hasParentSelector) {\n for (let t = 0; t < ret.length; t++) {\n const rett = ret[t];\n if (rett && rett.isParentSelector) {\n const tmp = this._trace(\n rett.expr, val, rett.path, parent, parentPropName, callback,\n hasArrExpr\n );\n if (Array.isArray(tmp)) {\n ret[t] = tmp[0];\n const tl = tmp.length;\n for (let tt = 1; tt < tl; tt++) {\n t++;\n ret.splice(t, 0, tmp[tt]);\n }\n } else {\n ret[t] = tmp;\n }\n }\n }\n }\n return ret;\n};\n\nJSONPath.prototype._walk = function (\n loc, expr, val, path, parent, parentPropName, callback, f\n) {\n if (Array.isArray(val)) {\n const n = val.length;\n for (let i = 0; i < n; i++) {\n f(i, loc, expr, val, path, parent, parentPropName, callback);\n }\n } else if (val && typeof val === 'object') {\n Object.keys(val).forEach((m) => {\n f(m, loc, expr, val, path, parent, parentPropName, callback);\n });\n }\n};\n\nJSONPath.prototype._slice = function (\n loc, expr, val, path, parent, parentPropName, callback\n) {\n if (!Array.isArray(val)) { return undefined; }\n const len = val.length, parts = loc.split(':'),\n step = (parts[2] && Number.parseInt(parts[2])) || 1;\n let start = (parts[0] && Number.parseInt(parts[0])) || 0,\n end = (parts[1] && Number.parseInt(parts[1])) || len;\n start = (start < 0) ? Math.max(0, start + len) : Math.min(len, start);\n end = (end < 0) ? Math.max(0, end + len) : Math.min(len, end);\n const ret = [];\n for (let i = start; i < end; i += step) {\n const tmp = this._trace(\n unshift(i, expr), val, path, parent, parentPropName, callback, true\n );\n // Should only be possible to be an array here since first part of\n // ``unshift(i, expr)` passed in above would not be empty, nor `~`,\n // nor begin with `@` (as could return objects)\n // This was causing excessive stack size in Node (with or\n // without Babel) against our performance test: `ret.push(...tmp);`\n tmp.forEach((t) => {\n ret.push(t);\n });\n }\n return ret;\n};\n\nJSONPath.prototype._eval = function (\n code, _v, _vname, path, parent, parentPropName\n) {\n if (code.includes('@parentProperty')) {\n this.currSandbox._$_parentProperty = parentPropName;\n code = code.replace(/@parentProperty/gu, '_$_parentProperty');\n }\n if (code.includes('@parent')) {\n this.currSandbox._$_parent = parent;\n code = code.replace(/@parent/gu, '_$_parent');\n }\n if (code.includes('@property')) {\n this.currSandbox._$_property = _vname;\n code = code.replace(/@property/gu, '_$_property');\n }\n if (code.includes('@path')) {\n this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));\n code = code.replace(/@path/gu, '_$_path');\n }\n if (code.includes('@root')) {\n this.currSandbox._$_root = this.json;\n code = code.replace(/@root/gu, '_$_root');\n }\n if ((/@([.\\s)[])/u).test(code)) {\n this.currSandbox._$_v = _v;\n code = code.replace(/@([.\\s)[])/gu, '_$_v$1');\n }\n try {\n return this.vm.runInNewContext(code, this.currSandbox);\n } catch (e) {\n // eslint-disable-next-line no-console\n console.log(e);\n throw new Error('jsonPath: ' + e.message + ': ' + code);\n }\n};\n\n// PUBLIC CLASS PROPERTIES AND METHODS\n\n// Could store the cache object itself\nJSONPath.cache = {};\n\n/**\n * @param {string[]} pathArr Array to convert\n * @returns {string} The path string\n */\nJSONPath.toPathString = function (pathArr) {\n const x = pathArr, n = x.length;\n let p = '$';\n for (let i = 1; i < n; i++) {\n if (!(/^(~|\\^|@.*?\\(\\))$/u).test(x[i])) {\n p += (/^[0-9*]+$/u).test(x[i]) ? ('[' + x[i] + ']') : (\"['\" + x[i] + \"']\");\n }\n }\n return p;\n};\n\n/**\n * @param {string} pointer JSON Path\n * @returns {string} JSON Pointer\n */\nJSONPath.toPointer = function (pointer) {\n const x = pointer, n = x.length;\n let p = '';\n for (let i = 1; i < n; i++) {\n if (!(/^(~|\\^|@.*?\\(\\))$/u).test(x[i])) {\n p += '/' + x[i].toString()\n .replace(/~/gu, '~0')\n .replace(/\\//gu, '~1');\n }\n }\n return p;\n};\n\n/**\n * @param {string} expr Expression to convert\n * @returns {string[]}\n */\nJSONPath.toPathArray = function (expr) {\n const {cache} = JSONPath;\n if (cache[expr]) { return cache[expr].concat(); }\n const subx = [];\n const normalized = expr\n // Properties\n .replace(\n /@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\\(\\)/gu,\n ';$&;'\n )\n // Parenthetical evaluations (filtering and otherwise), directly\n // within brackets or single quotes\n .replace(/[['](\\??\\(.*?\\))[\\]']/gu, function ($0, $1) {\n return '[#' + (subx.push($1) - 1) + ']';\n })\n // Escape periods and tildes within properties\n .replace(/\\[['\"]([^'\\]]*)['\"]\\]/gu, function ($0, prop) {\n return \"['\" + prop\n .replace(/\\./gu, '%@%')\n .replace(/~/gu, '%%@@%%') +\n \"']\";\n })\n // Properties operator\n .replace(/~/gu, ';~;')\n // Split by property boundaries\n .replace(/['\"]?\\.['\"]?(?![^[]*\\])|\\[['\"]?/gu, ';')\n // Reinsert periods within properties\n .replace(/%@%/gu, '.')\n // Reinsert tildes within properties\n .replace(/%%@@%%/gu, '~')\n // Parent\n .replace(/(?:;)?(\\^+)(?:;)?/gu, function ($0, ups) {\n return ';' + ups.split('').join(';') + ';';\n })\n // Descendents\n .replace(/;;;|;;/gu, ';..;')\n // Remove trailing\n .replace(/;$|'?\\]|'$/gu, '');\n\n const exprList = normalized.split(';').map(function (exp) {\n const match = exp.match(/#(\\d+)/u);\n return !match || !match[1] ? exp : subx[match[1]];\n });\n cache[expr] = exprList;\n return cache[expr].concat();\n};\n\nexport {JSONPath};\n","import {JSONPath} from './jsonpath.js';\n\n/**\n* @callback ConditionCallback\n* @param {any} item\n* @returns {boolean}\n*/\n\n/**\n * Copy items out of one array into another.\n * @param {GenericArray} source Array with items to copy\n * @param {GenericArray} target Array to which to copy\n * @param {ConditionCallback} conditionCb Callback passed the current item;\n * will move item if evaluates to `true`\n * @returns {void}\n */\nconst moveToAnotherArray = function (source, target, conditionCb) {\n const il = source.length;\n for (let i = 0; i < il; i++) {\n const item = source[i];\n if (conditionCb(item)) {\n target.push(source.splice(i--, 1)[0]);\n }\n }\n};\n\nJSONPath.prototype.vm = {\n /**\n * @param {string} expr Expression to evaluate\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {any} Result of evaluated code\n */\n runInNewContext (expr, context) {\n const keys = Object.keys(context);\n const funcs = [];\n moveToAnotherArray(keys, funcs, (key) => {\n return typeof context[key] === 'function';\n });\n const values = keys.map((vr, i) => {\n return context[vr];\n });\n\n const funcString = funcs.reduce((s, func) => {\n let fString = context[func].toString();\n if (!(/function/u).test(fString)) {\n fString = 'function ' + fString;\n }\n return 'var ' + func + '=' + fString + ';' + s;\n }, '');\n\n expr = funcString + expr;\n\n // Mitigate http://perfectionkills.com/global-eval-what-are-the-options/#new_function\n if (!(/(['\"])use strict\\1/u).test(expr) &&\n !keys.includes('arguments')\n ) {\n expr = 'var arguments = undefined;' + expr;\n }\n\n // Remove last semi so `return` will be inserted before\n // the previous one instead, allowing for the return\n // of a bare ending expression\n expr = expr.replace(/;\\s*$/u, '');\n\n // Insert `return`\n const lastStatementEnd = expr.lastIndexOf(';');\n const code = (lastStatementEnd > -1\n ? expr.slice(0, lastStatementEnd + 1) +\n ' return ' + expr.slice(lastStatementEnd + 1)\n : ' return ' + expr);\n\n // eslint-disable-next-line no-new-func\n return (new Function(...keys, code))(...values);\n }\n};\n\nexport {JSONPath};\n"],"names":["hasOwnProp","Object","prototype","hasOwnProperty","push","arr","item","slice","unshift","NewError","Error","value","avoidNew","name","JSONPath","opts","expr","obj","callback","otherTypeCallback","this","e","optObj","_typeof","json","path","resultType","flatten","wrap","call","sandbox","preventEval","parent","parentProperty","TypeError","autostart","args","ret","evaluate","currParent","currParentProperty","currResultType","currPreventEval","currSandbox","currOtherTypeCallback","Array","isArray","toPathString","exprList","toPathArray","length","shift","_hasParentSelector","result","_trace","filter","ea","isParentSelector","hasArrExpr","reduce","rslt","valOrPath","_this2","_getPreferredOutput","concat","undefined","pointer","toPointer","_handleCallback","fullRetObj","type","preferredOutput","val","parentPropName","literalPriority","retObj","loc","x","addRet","elems","forEach","t","_walk","m","l","_x","v","p","par","pr","cb","_this3","test","_slice","indexOf","_eval","replace","addType","valueType","includes","Number","isFinite","locProp","split","part","rett","tmp","tl","tt","splice","f","n","i","keys","len","parts","step","parseInt","start","end","Math","max","min","code","_v","_vname","_$_parentProperty","_$_parent","_$_property","_$_path","_$_root","_$_v","vm","runInNewContext","console","log","message","cache","pathArr","toString","subx","$0","$1","prop","ups","join","map","exp","match","context","funcs","source","target","conditionCb","il","moveToAnotherArray","key","values","vr","funcString","s","func","fString","lastStatementEnd","lastIndexOf","_construct","Function"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index-browser-esm.min.js","sources":["../src/jsonpath.js","../src/jsonpath-browser.js"],"sourcesContent":["const {hasOwnProperty: hasOwnProp} = Object.prototype;\n\n/**\n* @typedef {null|boolean|number|string|object|JSON[]} JSON\n*/\n\n/**\n * Copies array and then pushes item into it.\n * @param {GenericArray} arr Array to copy and into which to push\n * @param {any} item Array item to add (to end)\n * @returns {GenericArray} Copy of the original array\n */\nfunction push (arr, item) {\n arr = arr.slice();\n arr.push(item);\n return arr;\n}\n/**\n * Copies array and then unshifts item into it.\n * @param {any} item Array item to add (to beginning)\n * @param {GenericArray} arr Array to copy and into which to unshift\n * @returns {GenericArray} Copy of the original array\n */\nfunction unshift (item, arr) {\n arr = arr.slice();\n arr.unshift(item);\n return arr;\n}\n\n/**\n * Caught when JSONPath is used without `new` but rethrown if with `new`\n * @extends Error\n */\nclass NewError extends Error {\n /**\n * @param {any} value The evaluated scalar value\n */\n constructor (value) {\n super(\n 'JSONPath should not be called with \"new\" (it prevents return ' +\n 'of (unwrapped) scalar values)'\n );\n this.avoidNew = true;\n this.value = value;\n this.name = 'NewError';\n }\n}\n\n/**\n* @typedef {PlainObject} ReturnObject\n* @property {string[]} path\n* @property {JSON} value\n* @property {PlainObject|GenericArray} parent\n* @property {string} parentProperty\n*/\n\n/**\n* @callback JSONPathCallback\n* @param {string|PlainObject} preferredOutput\n* @param {\"value\"|\"property\"} type\n* @param {ReturnObject} fullRetObj\n* @returns {void}\n*/\n\n/**\n* @callback OtherTypeCallback\n* @param {JSON} val\n* @param {string[]} path\n* @param {PlainObject|GenericArray} parent\n* @param {string} parentPropName\n* @returns {boolean}\n*/\n\n/* eslint-disable max-len -- Can make multiline type after https://github.com/syavorsky/comment-parser/issues/109 */\n/**\n * @typedef {PlainObject} JSONPathOptions\n * @property {JSON} json\n * @property {string|string[]} path\n * @property {\"value\"|\"path\"|\"pointer\"|\"parent\"|\"parentProperty\"|\"all\"} [resultType=\"value\"]\n * @property {boolean} [flatten=false]\n * @property {boolean} [wrap=true]\n * @property {PlainObject} [sandbox={}]\n * @property {boolean} [preventEval=false]\n * @property {PlainObject|GenericArray|null} [parent=null]\n * @property {string|null} [parentProperty=null]\n * @property {JSONPathCallback} [callback]\n * @property {OtherTypeCallback} [otherTypeCallback] Defaults to\n * function which throws on encountering `@other`\n * @property {boolean} [autostart=true]\n */\n/* eslint-enable max-len -- Can make multiline type after https://github.com/syavorsky/comment-parser/issues/109 */\n\n/**\n * @param {string|JSONPathOptions} opts If a string, will be treated as `expr`\n * @param {string} [expr] JSON path to evaluate\n * @param {JSON} [obj] JSON object to evaluate against\n * @param {JSONPathCallback} [callback] Passed 3 arguments: 1) desired payload\n * per `resultType`, 2) `\"value\"|\"property\"`, 3) Full returned object with\n * all payloads\n * @param {OtherTypeCallback} [otherTypeCallback] If `@other()` is at the end\n * of one's query, this will be invoked with the value of the item, its\n * path, its parent, and its parent's property name, and it should return\n * a boolean indicating whether the supplied value belongs to the \"other\"\n * type or not (or it may handle transformations and return `false`).\n * @returns {JSONPath}\n * @class\n */\nfunction JSONPath (opts, expr, obj, callback, otherTypeCallback) {\n // eslint-disable-next-line no-restricted-syntax\n if (!(this instanceof JSONPath)) {\n try {\n return new JSONPath(opts, expr, obj, callback, otherTypeCallback);\n } catch (e) {\n if (!e.avoidNew) {\n throw e;\n }\n return e.value;\n }\n }\n\n if (typeof opts === 'string') {\n otherTypeCallback = callback;\n callback = obj;\n obj = expr;\n expr = opts;\n opts = null;\n }\n const optObj = opts && typeof opts === 'object';\n opts = opts || {};\n this.json = opts.json || obj;\n this.path = opts.path || expr;\n this.resultType = opts.resultType || 'value';\n this.flatten = opts.flatten || false;\n this.wrap = hasOwnProp.call(opts, 'wrap') ? opts.wrap : true;\n this.sandbox = opts.sandbox || {};\n this.preventEval = opts.preventEval || false;\n this.parent = opts.parent || null;\n this.parentProperty = opts.parentProperty || null;\n this.callback = opts.callback || callback || null;\n this.otherTypeCallback = opts.otherTypeCallback ||\n otherTypeCallback ||\n function () {\n throw new TypeError(\n 'You must supply an otherTypeCallback callback option ' +\n 'with the @other() operator.'\n );\n };\n\n if (opts.autostart !== false) {\n const args = {\n path: (optObj ? opts.path : expr)\n };\n if (!optObj) {\n args.json = obj;\n } else if ('json' in opts) {\n args.json = opts.json;\n }\n const ret = this.evaluate(args);\n if (!ret || typeof ret !== 'object') {\n throw new NewError(ret);\n }\n return ret;\n }\n}\n\n// PUBLIC METHODS\nJSONPath.prototype.evaluate = function (\n expr, json, callback, otherTypeCallback\n) {\n let currParent = this.parent,\n currParentProperty = this.parentProperty;\n let {flatten, wrap} = this;\n\n this.currResultType = this.resultType;\n this.currPreventEval = this.preventEval;\n this.currSandbox = this.sandbox;\n callback = callback || this.callback;\n this.currOtherTypeCallback = otherTypeCallback || this.otherTypeCallback;\n\n json = json || this.json;\n expr = expr || this.path;\n if (expr && typeof expr === 'object' && !Array.isArray(expr)) {\n if (!expr.path && expr.path !== '') {\n throw new TypeError(\n 'You must supply a \"path\" property when providing an object ' +\n 'argument to JSONPath.evaluate().'\n );\n }\n if (!(hasOwnProp.call(expr, 'json'))) {\n throw new TypeError(\n 'You must supply a \"json\" property when providing an object ' +\n 'argument to JSONPath.evaluate().'\n );\n }\n ({json} = expr);\n flatten = hasOwnProp.call(expr, 'flatten') ? expr.flatten : flatten;\n this.currResultType = hasOwnProp.call(expr, 'resultType')\n ? expr.resultType\n : this.currResultType;\n this.currSandbox = hasOwnProp.call(expr, 'sandbox')\n ? expr.sandbox\n : this.currSandbox;\n wrap = hasOwnProp.call(expr, 'wrap') ? expr.wrap : wrap;\n this.currPreventEval = hasOwnProp.call(expr, 'preventEval')\n ? expr.preventEval\n : this.currPreventEval;\n callback = hasOwnProp.call(expr, 'callback') ? expr.callback : callback;\n this.currOtherTypeCallback = hasOwnProp.call(expr, 'otherTypeCallback')\n ? expr.otherTypeCallback\n : this.currOtherTypeCallback;\n currParent = hasOwnProp.call(expr, 'parent') ? expr.parent : currParent;\n currParentProperty = hasOwnProp.call(expr, 'parentProperty')\n ? expr.parentProperty\n : currParentProperty;\n expr = expr.path;\n }\n currParent = currParent || null;\n currParentProperty = currParentProperty || null;\n\n if (Array.isArray(expr)) {\n expr = JSONPath.toPathString(expr);\n }\n if ((!expr && expr !== '') || !json) {\n return undefined;\n }\n\n const exprList = JSONPath.toPathArray(expr);\n if (exprList[0] === '$' && exprList.length > 1) { exprList.shift(); }\n this._hasParentSelector = null;\n const result = this\n ._trace(\n exprList, json, ['$'], currParent, currParentProperty, callback\n )\n .filter(function (ea) { return ea && !ea.isParentSelector; });\n\n if (!result.length) { return wrap ? [] : undefined; }\n if (!wrap && result.length === 1 && !result[0].hasArrExpr) {\n return this._getPreferredOutput(result[0]);\n }\n return result.reduce((rslt, ea) => {\n const valOrPath = this._getPreferredOutput(ea);\n if (flatten && Array.isArray(valOrPath)) {\n rslt = rslt.concat(valOrPath);\n } else {\n rslt.push(valOrPath);\n }\n return rslt;\n }, []);\n};\n\n// PRIVATE METHODS\n\nJSONPath.prototype._getPreferredOutput = function (ea) {\n const resultType = this.currResultType;\n switch (resultType) {\n case 'all': {\n const path = Array.isArray(ea.path)\n ? ea.path\n : JSONPath.toPathArray(ea.path);\n ea.pointer = JSONPath.toPointer(path);\n ea.path = typeof ea.path === 'string'\n ? ea.path\n : JSONPath.toPathString(ea.path);\n return ea;\n } case 'value': case 'parent': case 'parentProperty':\n return ea[resultType];\n case 'path':\n return JSONPath.toPathString(ea[resultType]);\n case 'pointer':\n return JSONPath.toPointer(ea.path);\n default:\n throw new TypeError('Unknown result type');\n }\n};\n\nJSONPath.prototype._handleCallback = function (fullRetObj, callback, type) {\n if (callback) {\n const preferredOutput = this._getPreferredOutput(fullRetObj);\n fullRetObj.path = typeof fullRetObj.path === 'string'\n ? fullRetObj.path\n : JSONPath.toPathString(fullRetObj.path);\n // eslint-disable-next-line node/callback-return\n callback(preferredOutput, type, fullRetObj);\n }\n};\n\n/**\n *\n * @param {string} expr\n * @param {JSON} val\n * @param {string[]} path\n * @param {PlainObject|GenericArray} parent\n * @param {string} parentPropName\n * @param {JSONPathCallback} callback\n * @param {boolean} hasArrExpr\n * @param {boolean} literalPriority\n * @returns {ReturnObject|ReturnObject[]}\n */\nJSONPath.prototype._trace = function (\n expr, val, path, parent, parentPropName, callback, hasArrExpr,\n literalPriority\n) {\n // No expr to follow? return path and value as the result of\n // this trace branch\n let retObj;\n if (!expr.length) {\n retObj = {\n path,\n value: val,\n parent,\n parentProperty: parentPropName,\n hasArrExpr\n };\n this._handleCallback(retObj, callback, 'value');\n return retObj;\n }\n\n const loc = expr[0], x = expr.slice(1);\n\n // We need to gather the return value of recursive trace calls in order to\n // do the parent sel computation.\n const ret = [];\n /**\n *\n * @param {ReturnObject|ReturnObject[]} elems\n * @returns {void}\n */\n function addRet (elems) {\n if (Array.isArray(elems)) {\n // This was causing excessive stack size in Node (with or\n // without Babel) against our performance test:\n // `ret.push(...elems);`\n elems.forEach((t) => {\n ret.push(t);\n });\n } else {\n ret.push(elems);\n }\n }\n if ((typeof loc !== 'string' || literalPriority) && val &&\n hasOwnProp.call(val, loc)\n ) { // simple case--directly follow property\n addRet(this._trace(x, val[loc], push(path, loc), val, loc, callback,\n hasArrExpr));\n // eslint-disable-next-line unicorn/prefer-switch -- Part of larger `if`\n } else if (loc === '*') { // all child properties\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n addRet(this._trace(unshift(m, _x), v, p, par, pr, cb,\n true, true));\n }\n );\n } else if (loc === '..') { // all descendent parent properties\n // Check remaining expression with val's immediate children\n addRet(\n this._trace(x, val, path, parent, parentPropName, callback,\n hasArrExpr)\n );\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n // We don't join m and x here because we only want parents,\n // not scalar values\n if (typeof v[m] === 'object') {\n // Keep going with recursive descent on val's\n // object children\n addRet(this._trace(\n unshift(l, _x), v[m], push(p, m), v, m, cb, true\n ));\n }\n }\n );\n // The parent sel computation is handled in the frame above using the\n // ancestor object of val\n } else if (loc === '^') {\n // This is not a final endpoint, so we do not invoke the callback here\n this._hasParentSelector = true;\n return {\n path: path.slice(0, -1),\n expr: x,\n isParentSelector: true\n };\n } else if (loc === '~') { // property name\n retObj = {\n path: push(path, loc),\n value: parentPropName,\n parent,\n parentProperty: null\n };\n this._handleCallback(retObj, callback, 'property');\n return retObj;\n } else if (loc === '$') { // root only\n addRet(this._trace(x, val, path, null, null, callback, hasArrExpr));\n } else if ((/^(-?\\d*):(-?\\d*):?(\\d*)$/u).test(loc)) { // [start:end:step] Python slice syntax\n addRet(\n this._slice(loc, x, val, path, parent, parentPropName, callback)\n );\n } else if (loc.indexOf('?(') === 0) { // [?(expr)] (filtering)\n if (this.currPreventEval) {\n throw new Error('Eval [?(expr)] prevented in JSONPath expression.');\n }\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n if (this._eval(l.replace(/^\\?\\((.*?)\\)$/u, '$1'), v[m], m, p, par, pr)) {\n addRet(this._trace(unshift(m, _x), v, p, par, pr, cb,\n true));\n }\n }\n );\n } else if (loc[0] === '(') { // [(expr)] (dynamic property/index)\n if (this.currPreventEval) {\n throw new Error('Eval [(expr)] prevented in JSONPath expression.');\n }\n // As this will resolve to a property name (but we don't know it\n // yet), property and parent information is relative to the\n // parent of the property to which this expression will resolve\n addRet(this._trace(unshift(\n this._eval(\n loc, val, path[path.length - 1],\n path.slice(0, -1), parent, parentPropName\n ),\n x\n ), val, path, parent, parentPropName, callback, hasArrExpr));\n } else if (loc[0] === '@') { // value type: @boolean(), etc.\n let addType = false;\n const valueType = loc.slice(1, -2);\n switch (valueType) {\n case 'scalar':\n if (!val || !(['object', 'function'].includes(typeof val))) {\n addType = true;\n }\n break;\n case 'boolean': case 'string': case 'undefined': case 'function':\n // eslint-disable-next-line valid-typeof\n if (typeof val === valueType) {\n addType = true;\n }\n break;\n case 'integer':\n if (Number.isFinite(val) && !(val % 1)) {\n addType = true;\n }\n break;\n case 'number':\n if (Number.isFinite(val)) {\n addType = true;\n }\n break;\n case 'nonFinite':\n if (typeof val === 'number' && !Number.isFinite(val)) {\n addType = true;\n }\n break;\n case 'object':\n // eslint-disable-next-line valid-typeof\n if (val && typeof val === valueType) {\n addType = true;\n }\n break;\n case 'array':\n if (Array.isArray(val)) {\n addType = true;\n }\n break;\n case 'other':\n addType = this.currOtherTypeCallback(\n val, path, parent, parentPropName\n );\n break;\n case 'null':\n if (val === null) {\n addType = true;\n }\n break;\n /* c8 ignore next 2 */\n default:\n throw new TypeError('Unknown value type ' + valueType);\n }\n if (addType) {\n retObj = {path, value: val, parent, parentProperty: parentPropName};\n this._handleCallback(retObj, callback, 'value');\n return retObj;\n }\n // `-escaped property\n } else if (loc[0] === '`' && val && hasOwnProp.call(val, loc.slice(1))) {\n const locProp = loc.slice(1);\n addRet(this._trace(\n x, val[locProp], push(path, locProp), val, locProp, callback,\n hasArrExpr, true\n ));\n } else if (loc.includes(',')) { // [name1,name2,...]\n const parts = loc.split(',');\n for (const part of parts) {\n addRet(this._trace(\n unshift(part, x), val, path, parent, parentPropName, callback,\n true\n ));\n }\n // simple case--directly follow property\n } else if (\n !literalPriority && val && hasOwnProp.call(val, loc)\n ) {\n addRet(\n this._trace(x, val[loc], push(path, loc), val, loc, callback,\n hasArrExpr, true)\n );\n }\n\n // We check the resulting values for parent selections. For parent\n // selections we discard the value object and continue the trace with the\n // current val object\n if (this._hasParentSelector) {\n for (let t = 0; t < ret.length; t++) {\n const rett = ret[t];\n if (rett && rett.isParentSelector) {\n const tmp = this._trace(\n rett.expr, val, rett.path, parent, parentPropName, callback,\n hasArrExpr\n );\n if (Array.isArray(tmp)) {\n ret[t] = tmp[0];\n const tl = tmp.length;\n for (let tt = 1; tt < tl; tt++) {\n t++;\n ret.splice(t, 0, tmp[tt]);\n }\n } else {\n ret[t] = tmp;\n }\n }\n }\n }\n return ret;\n};\n\nJSONPath.prototype._walk = function (\n loc, expr, val, path, parent, parentPropName, callback, f\n) {\n if (Array.isArray(val)) {\n const n = val.length;\n for (let i = 0; i < n; i++) {\n f(i, loc, expr, val, path, parent, parentPropName, callback);\n }\n } else if (val && typeof val === 'object') {\n Object.keys(val).forEach((m) => {\n f(m, loc, expr, val, path, parent, parentPropName, callback);\n });\n }\n};\n\nJSONPath.prototype._slice = function (\n loc, expr, val, path, parent, parentPropName, callback\n) {\n if (!Array.isArray(val)) { return undefined; }\n const len = val.length, parts = loc.split(':'),\n step = (parts[2] && Number.parseInt(parts[2])) || 1;\n let start = (parts[0] && Number.parseInt(parts[0])) || 0,\n end = (parts[1] && Number.parseInt(parts[1])) || len;\n start = (start < 0) ? Math.max(0, start + len) : Math.min(len, start);\n end = (end < 0) ? Math.max(0, end + len) : Math.min(len, end);\n const ret = [];\n for (let i = start; i < end; i += step) {\n const tmp = this._trace(\n unshift(i, expr), val, path, parent, parentPropName, callback, true\n );\n // Should only be possible to be an array here since first part of\n // ``unshift(i, expr)` passed in above would not be empty, nor `~`,\n // nor begin with `@` (as could return objects)\n // This was causing excessive stack size in Node (with or\n // without Babel) against our performance test: `ret.push(...tmp);`\n tmp.forEach((t) => {\n ret.push(t);\n });\n }\n return ret;\n};\n\nJSONPath.prototype._eval = function (\n code, _v, _vname, path, parent, parentPropName\n) {\n if (code.includes('@parentProperty')) {\n this.currSandbox._$_parentProperty = parentPropName;\n code = code.replace(/@parentProperty/gu, '_$_parentProperty');\n }\n if (code.includes('@parent')) {\n this.currSandbox._$_parent = parent;\n code = code.replace(/@parent/gu, '_$_parent');\n }\n if (code.includes('@property')) {\n this.currSandbox._$_property = _vname;\n code = code.replace(/@property/gu, '_$_property');\n }\n if (code.includes('@path')) {\n this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));\n code = code.replace(/@path/gu, '_$_path');\n }\n if (code.includes('@root')) {\n this.currSandbox._$_root = this.json;\n code = code.replace(/@root/gu, '_$_root');\n }\n if ((/@([.\\s)[])/u).test(code)) {\n this.currSandbox._$_v = _v;\n code = code.replace(/@([.\\s)[])/gu, '_$_v$1');\n }\n try {\n return this.vm.runInNewContext(code, this.currSandbox);\n } catch (e) {\n // eslint-disable-next-line no-console\n console.log(e);\n throw new Error('jsonPath: ' + e.message + ': ' + code);\n }\n};\n\n// PUBLIC CLASS PROPERTIES AND METHODS\n\n// Could store the cache object itself\nJSONPath.cache = {};\n\n/**\n * @param {string[]} pathArr Array to convert\n * @returns {string} The path string\n */\nJSONPath.toPathString = function (pathArr) {\n const x = pathArr, n = x.length;\n let p = '$';\n for (let i = 1; i < n; i++) {\n if (!(/^(~|\\^|@.*?\\(\\))$/u).test(x[i])) {\n p += (/^[0-9*]+$/u).test(x[i]) ? ('[' + x[i] + ']') : (\"['\" + x[i] + \"']\");\n }\n }\n return p;\n};\n\n/**\n * @param {string} pointer JSON Path\n * @returns {string} JSON Pointer\n */\nJSONPath.toPointer = function (pointer) {\n const x = pointer, n = x.length;\n let p = '';\n for (let i = 1; i < n; i++) {\n if (!(/^(~|\\^|@.*?\\(\\))$/u).test(x[i])) {\n p += '/' + x[i].toString()\n .replace(/~/gu, '~0')\n .replace(/\\//gu, '~1');\n }\n }\n return p;\n};\n\n/**\n * @param {string} expr Expression to convert\n * @returns {string[]}\n */\nJSONPath.toPathArray = function (expr) {\n const {cache} = JSONPath;\n if (cache[expr]) { return cache[expr].concat(); }\n const subx = [];\n const normalized = expr\n // Properties\n .replace(\n /@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\\(\\)/gu,\n ';$&;'\n )\n // Parenthetical evaluations (filtering and otherwise), directly\n // within brackets or single quotes\n .replace(/[['](\\??\\(.*?\\))[\\]']/gu, function ($0, $1) {\n return '[#' + (subx.push($1) - 1) + ']';\n })\n // Escape periods and tildes within properties\n .replace(/\\[['\"]([^'\\]]*)['\"]\\]/gu, function ($0, prop) {\n return \"['\" + prop\n .replace(/\\./gu, '%@%')\n .replace(/~/gu, '%%@@%%') +\n \"']\";\n })\n // Properties operator\n .replace(/~/gu, ';~;')\n // Split by property boundaries\n .replace(/['\"]?\\.['\"]?(?![^[]*\\])|\\[['\"]?/gu, ';')\n // Reinsert periods within properties\n .replace(/%@%/gu, '.')\n // Reinsert tildes within properties\n .replace(/%%@@%%/gu, '~')\n // Parent\n .replace(/(?:;)?(\\^+)(?:;)?/gu, function ($0, ups) {\n return ';' + ups.split('').join(';') + ';';\n })\n // Descendents\n .replace(/;;;|;;/gu, ';..;')\n // Remove trailing\n .replace(/;$|'?\\]|'$/gu, '');\n\n const exprList = normalized.split(';').map(function (exp) {\n const match = exp.match(/#(\\d+)/u);\n return !match || !match[1] ? exp : subx[match[1]];\n });\n cache[expr] = exprList;\n return cache[expr].concat();\n};\n\nexport {JSONPath};\n","import {JSONPath} from './jsonpath.js';\n\n/**\n* @callback ConditionCallback\n* @param {any} item\n* @returns {boolean}\n*/\n\n/**\n * Copy items out of one array into another.\n * @param {GenericArray} source Array with items to copy\n * @param {GenericArray} target Array to which to copy\n * @param {ConditionCallback} conditionCb Callback passed the current item;\n * will move item if evaluates to `true`\n * @returns {void}\n */\nconst moveToAnotherArray = function (source, target, conditionCb) {\n const il = source.length;\n for (let i = 0; i < il; i++) {\n const item = source[i];\n if (conditionCb(item)) {\n target.push(source.splice(i--, 1)[0]);\n }\n }\n};\n\nJSONPath.prototype.vm = {\n /**\n * @param {string} expr Expression to evaluate\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {any} Result of evaluated code\n */\n runInNewContext (expr, context) {\n const keys = Object.keys(context);\n const funcs = [];\n moveToAnotherArray(keys, funcs, (key) => {\n return typeof context[key] === 'function';\n });\n const values = keys.map((vr, i) => {\n return context[vr];\n });\n\n const funcString = funcs.reduce((s, func) => {\n let fString = context[func].toString();\n if (!(/function/u).test(fString)) {\n fString = 'function ' + fString;\n }\n return 'var ' + func + '=' + fString + ';' + s;\n }, '');\n\n expr = funcString + expr;\n\n // Mitigate http://perfectionkills.com/global-eval-what-are-the-options/#new_function\n if (!(/(['\"])use strict\\1/u).test(expr) &&\n !keys.includes('arguments')\n ) {\n expr = 'var arguments = undefined;' + expr;\n }\n\n // Remove last semi so `return` will be inserted before\n // the previous one instead, allowing for the return\n // of a bare ending expression\n expr = expr.replace(/;\\s*$/u, '');\n\n // Insert `return`\n const lastStatementEnd = expr.lastIndexOf(';');\n const code = (lastStatementEnd > -1\n ? expr.slice(0, lastStatementEnd + 1) +\n ' return ' + expr.slice(lastStatementEnd + 1)\n : ' return ' + expr);\n\n // eslint-disable-next-line no-new-func\n return (new Function(...keys, code))(...values);\n }\n};\n\nexport {JSONPath};\n"],"names":["hasOwnProp","Object","prototype","hasOwnProperty","push","arr","item","slice","unshift","NewError","Error","value","avoidNew","name","JSONPath","opts","expr","obj","callback","otherTypeCallback","this","e","optObj","_typeof","json","path","resultType","flatten","wrap","call","sandbox","preventEval","parent","parentProperty","TypeError","autostart","args","ret","evaluate","currParent","currParentProperty","currResultType","currPreventEval","currSandbox","currOtherTypeCallback","Array","isArray","toPathString","exprList","toPathArray","length","shift","_hasParentSelector","result","_trace","filter","ea","isParentSelector","hasArrExpr","reduce","rslt","valOrPath","_this2","_getPreferredOutput","concat","undefined","pointer","toPointer","_handleCallback","fullRetObj","type","preferredOutput","val","parentPropName","literalPriority","retObj","loc","x","addRet","elems","forEach","t","_walk","m","l","_x","v","p","par","pr","cb","_this3","test","_slice","indexOf","_eval","replace","addType","valueType","includes","Number","isFinite","locProp","split","part","rett","tmp","tl","tt","splice","f","n","i","keys","len","parts","step","parseInt","start","end","Math","max","min","code","_v","_vname","_$_parentProperty","_$_parent","_$_property","_$_path","_$_root","_$_v","vm","runInNewContext","console","log","message","cache","pathArr","toString","subx","$0","$1","prop","ups","join","map","exp","match","context","funcs","source","target","conditionCb","il","moveToAnotherArray","key","values","vr","funcString","s","func","fString","lastStatementEnd","lastIndexOf","_construct","Function"],"mappings":"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"} \ No newline at end of file diff --git a/dist/index-browser-umd.cjs b/dist/index-browser-umd.cjs index ba56ede..1aab701 100644 --- a/dist/index-browser-umd.cjs +++ b/dist/index-browser-umd.cjs @@ -252,7 +252,7 @@ var hasOwnProp = Object.prototype.hasOwnProperty; /** - * @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject + * @typedef {null|boolean|number|string|object|JSON[]} JSON */ /** @@ -310,8 +310,8 @@ }( /*#__PURE__*/_wrapNativeSuper(Error)); /** * @typedef {PlainObject} ReturnObject - * @property {string} path - * @property {JSONObject} value + * @property {string[]} path + * @property {JSON} value * @property {PlainObject|GenericArray} parent * @property {string} parentProperty */ @@ -326,8 +326,8 @@ /** * @callback OtherTypeCallback - * @param {JSONObject} val - * @param {string} path + * @param {JSON} val + * @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @returns {boolean} @@ -555,8 +555,8 @@ /** * * @param {string} expr - * @param {JSONObject} val - * @param {string} path + * @param {JSON} val + * @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @param {JSONPathCallback} callback diff --git a/dist/index-browser-umd.min.cjs.map b/dist/index-browser-umd.min.cjs.map index 5081b88..7524e8e 100644 --- a/dist/index-browser-umd.min.cjs.map +++ b/dist/index-browser-umd.min.cjs.map @@ -1 +1 @@ -{"version":3,"file":"index-browser-umd.min.cjs","sources":["../src/jsonpath.js","../src/jsonpath-browser.js"],"sourcesContent":["const {hasOwnProperty: hasOwnProp} = Object.prototype;\n\n/**\n* @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject\n*/\n\n/**\n * Copies array and then pushes item into it.\n * @param {GenericArray} arr Array to copy and into which to push\n * @param {any} item Array item to add (to end)\n * @returns {GenericArray} Copy of the original array\n */\nfunction push (arr, item) {\n arr = arr.slice();\n arr.push(item);\n return arr;\n}\n/**\n * Copies array and then unshifts item into it.\n * @param {any} item Array item to add (to beginning)\n * @param {GenericArray} arr Array to copy and into which to unshift\n * @returns {GenericArray} Copy of the original array\n */\nfunction unshift (item, arr) {\n arr = arr.slice();\n arr.unshift(item);\n return arr;\n}\n\n/**\n * Caught when JSONPath is used without `new` but rethrown if with `new`\n * @extends Error\n */\nclass NewError extends Error {\n /**\n * @param {any} value The evaluated scalar value\n */\n constructor (value) {\n super(\n 'JSONPath should not be called with \"new\" (it prevents return ' +\n 'of (unwrapped) scalar values)'\n );\n this.avoidNew = true;\n this.value = value;\n this.name = 'NewError';\n }\n}\n\n/**\n* @typedef {PlainObject} ReturnObject\n* @property {string} path\n* @property {JSONObject} value\n* @property {PlainObject|GenericArray} parent\n* @property {string} parentProperty\n*/\n\n/**\n* @callback JSONPathCallback\n* @param {string|PlainObject} preferredOutput\n* @param {\"value\"|\"property\"} type\n* @param {ReturnObject} fullRetObj\n* @returns {void}\n*/\n\n/**\n* @callback OtherTypeCallback\n* @param {JSONObject} val\n* @param {string} path\n* @param {PlainObject|GenericArray} parent\n* @param {string} parentPropName\n* @returns {boolean}\n*/\n\n/* eslint-disable max-len -- Can make multiline type after https://github.com/syavorsky/comment-parser/issues/109 */\n/**\n * @typedef {PlainObject} JSONPathOptions\n * @property {JSON} json\n * @property {string|string[]} path\n * @property {\"value\"|\"path\"|\"pointer\"|\"parent\"|\"parentProperty\"|\"all\"} [resultType=\"value\"]\n * @property {boolean} [flatten=false]\n * @property {boolean} [wrap=true]\n * @property {PlainObject} [sandbox={}]\n * @property {boolean} [preventEval=false]\n * @property {PlainObject|GenericArray|null} [parent=null]\n * @property {string|null} [parentProperty=null]\n * @property {JSONPathCallback} [callback]\n * @property {OtherTypeCallback} [otherTypeCallback] Defaults to\n * function which throws on encountering `@other`\n * @property {boolean} [autostart=true]\n */\n/* eslint-enable max-len -- Can make multiline type after https://github.com/syavorsky/comment-parser/issues/109 */\n\n/**\n * @param {string|JSONPathOptions} opts If a string, will be treated as `expr`\n * @param {string} [expr] JSON path to evaluate\n * @param {JSON} [obj] JSON object to evaluate against\n * @param {JSONPathCallback} [callback] Passed 3 arguments: 1) desired payload\n * per `resultType`, 2) `\"value\"|\"property\"`, 3) Full returned object with\n * all payloads\n * @param {OtherTypeCallback} [otherTypeCallback] If `@other()` is at the end\n * of one's query, this will be invoked with the value of the item, its\n * path, its parent, and its parent's property name, and it should return\n * a boolean indicating whether the supplied value belongs to the \"other\"\n * type or not (or it may handle transformations and return `false`).\n * @returns {JSONPath}\n * @class\n */\nfunction JSONPath (opts, expr, obj, callback, otherTypeCallback) {\n // eslint-disable-next-line no-restricted-syntax\n if (!(this instanceof JSONPath)) {\n try {\n return new JSONPath(opts, expr, obj, callback, otherTypeCallback);\n } catch (e) {\n if (!e.avoidNew) {\n throw e;\n }\n return e.value;\n }\n }\n\n if (typeof opts === 'string') {\n otherTypeCallback = callback;\n callback = obj;\n obj = expr;\n expr = opts;\n opts = null;\n }\n const optObj = opts && typeof opts === 'object';\n opts = opts || {};\n this.json = opts.json || obj;\n this.path = opts.path || expr;\n this.resultType = opts.resultType || 'value';\n this.flatten = opts.flatten || false;\n this.wrap = hasOwnProp.call(opts, 'wrap') ? opts.wrap : true;\n this.sandbox = opts.sandbox || {};\n this.preventEval = opts.preventEval || false;\n this.parent = opts.parent || null;\n this.parentProperty = opts.parentProperty || null;\n this.callback = opts.callback || callback || null;\n this.otherTypeCallback = opts.otherTypeCallback ||\n otherTypeCallback ||\n function () {\n throw new TypeError(\n 'You must supply an otherTypeCallback callback option ' +\n 'with the @other() operator.'\n );\n };\n\n if (opts.autostart !== false) {\n const args = {\n path: (optObj ? opts.path : expr)\n };\n if (!optObj) {\n args.json = obj;\n } else if ('json' in opts) {\n args.json = opts.json;\n }\n const ret = this.evaluate(args);\n if (!ret || typeof ret !== 'object') {\n throw new NewError(ret);\n }\n return ret;\n }\n}\n\n// PUBLIC METHODS\nJSONPath.prototype.evaluate = function (\n expr, json, callback, otherTypeCallback\n) {\n let currParent = this.parent,\n currParentProperty = this.parentProperty;\n let {flatten, wrap} = this;\n\n this.currResultType = this.resultType;\n this.currPreventEval = this.preventEval;\n this.currSandbox = this.sandbox;\n callback = callback || this.callback;\n this.currOtherTypeCallback = otherTypeCallback || this.otherTypeCallback;\n\n json = json || this.json;\n expr = expr || this.path;\n if (expr && typeof expr === 'object' && !Array.isArray(expr)) {\n if (!expr.path && expr.path !== '') {\n throw new TypeError(\n 'You must supply a \"path\" property when providing an object ' +\n 'argument to JSONPath.evaluate().'\n );\n }\n if (!(hasOwnProp.call(expr, 'json'))) {\n throw new TypeError(\n 'You must supply a \"json\" property when providing an object ' +\n 'argument to JSONPath.evaluate().'\n );\n }\n ({json} = expr);\n flatten = hasOwnProp.call(expr, 'flatten') ? expr.flatten : flatten;\n this.currResultType = hasOwnProp.call(expr, 'resultType')\n ? expr.resultType\n : this.currResultType;\n this.currSandbox = hasOwnProp.call(expr, 'sandbox')\n ? expr.sandbox\n : this.currSandbox;\n wrap = hasOwnProp.call(expr, 'wrap') ? expr.wrap : wrap;\n this.currPreventEval = hasOwnProp.call(expr, 'preventEval')\n ? expr.preventEval\n : this.currPreventEval;\n callback = hasOwnProp.call(expr, 'callback') ? expr.callback : callback;\n this.currOtherTypeCallback = hasOwnProp.call(expr, 'otherTypeCallback')\n ? expr.otherTypeCallback\n : this.currOtherTypeCallback;\n currParent = hasOwnProp.call(expr, 'parent') ? expr.parent : currParent;\n currParentProperty = hasOwnProp.call(expr, 'parentProperty')\n ? expr.parentProperty\n : currParentProperty;\n expr = expr.path;\n }\n currParent = currParent || null;\n currParentProperty = currParentProperty || null;\n\n if (Array.isArray(expr)) {\n expr = JSONPath.toPathString(expr);\n }\n if ((!expr && expr !== '') || !json) {\n return undefined;\n }\n\n const exprList = JSONPath.toPathArray(expr);\n if (exprList[0] === '$' && exprList.length > 1) { exprList.shift(); }\n this._hasParentSelector = null;\n const result = this\n ._trace(\n exprList, json, ['$'], currParent, currParentProperty, callback\n )\n .filter(function (ea) { return ea && !ea.isParentSelector; });\n\n if (!result.length) { return wrap ? [] : undefined; }\n if (!wrap && result.length === 1 && !result[0].hasArrExpr) {\n return this._getPreferredOutput(result[0]);\n }\n return result.reduce((rslt, ea) => {\n const valOrPath = this._getPreferredOutput(ea);\n if (flatten && Array.isArray(valOrPath)) {\n rslt = rslt.concat(valOrPath);\n } else {\n rslt.push(valOrPath);\n }\n return rslt;\n }, []);\n};\n\n// PRIVATE METHODS\n\nJSONPath.prototype._getPreferredOutput = function (ea) {\n const resultType = this.currResultType;\n switch (resultType) {\n case 'all': {\n const path = Array.isArray(ea.path)\n ? ea.path\n : JSONPath.toPathArray(ea.path);\n ea.pointer = JSONPath.toPointer(path);\n ea.path = typeof ea.path === 'string'\n ? ea.path\n : JSONPath.toPathString(ea.path);\n return ea;\n } case 'value': case 'parent': case 'parentProperty':\n return ea[resultType];\n case 'path':\n return JSONPath.toPathString(ea[resultType]);\n case 'pointer':\n return JSONPath.toPointer(ea.path);\n default:\n throw new TypeError('Unknown result type');\n }\n};\n\nJSONPath.prototype._handleCallback = function (fullRetObj, callback, type) {\n if (callback) {\n const preferredOutput = this._getPreferredOutput(fullRetObj);\n fullRetObj.path = typeof fullRetObj.path === 'string'\n ? fullRetObj.path\n : JSONPath.toPathString(fullRetObj.path);\n // eslint-disable-next-line node/callback-return\n callback(preferredOutput, type, fullRetObj);\n }\n};\n\n/**\n *\n * @param {string} expr\n * @param {JSONObject} val\n * @param {string} path\n * @param {PlainObject|GenericArray} parent\n * @param {string} parentPropName\n * @param {JSONPathCallback} callback\n * @param {boolean} hasArrExpr\n * @param {boolean} literalPriority\n * @returns {ReturnObject|ReturnObject[]}\n */\nJSONPath.prototype._trace = function (\n expr, val, path, parent, parentPropName, callback, hasArrExpr,\n literalPriority\n) {\n // No expr to follow? return path and value as the result of\n // this trace branch\n let retObj;\n if (!expr.length) {\n retObj = {\n path,\n value: val,\n parent,\n parentProperty: parentPropName,\n hasArrExpr\n };\n this._handleCallback(retObj, callback, 'value');\n return retObj;\n }\n\n const loc = expr[0], x = expr.slice(1);\n\n // We need to gather the return value of recursive trace calls in order to\n // do the parent sel computation.\n const ret = [];\n /**\n *\n * @param {ReturnObject|ReturnObject[]} elems\n * @returns {void}\n */\n function addRet (elems) {\n if (Array.isArray(elems)) {\n // This was causing excessive stack size in Node (with or\n // without Babel) against our performance test:\n // `ret.push(...elems);`\n elems.forEach((t) => {\n ret.push(t);\n });\n } else {\n ret.push(elems);\n }\n }\n if ((typeof loc !== 'string' || literalPriority) && val &&\n hasOwnProp.call(val, loc)\n ) { // simple case--directly follow property\n addRet(this._trace(x, val[loc], push(path, loc), val, loc, callback,\n hasArrExpr));\n // eslint-disable-next-line unicorn/prefer-switch -- Part of larger `if`\n } else if (loc === '*') { // all child properties\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n addRet(this._trace(unshift(m, _x), v, p, par, pr, cb,\n true, true));\n }\n );\n } else if (loc === '..') { // all descendent parent properties\n // Check remaining expression with val's immediate children\n addRet(\n this._trace(x, val, path, parent, parentPropName, callback,\n hasArrExpr)\n );\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n // We don't join m and x here because we only want parents,\n // not scalar values\n if (typeof v[m] === 'object') {\n // Keep going with recursive descent on val's\n // object children\n addRet(this._trace(\n unshift(l, _x), v[m], push(p, m), v, m, cb, true\n ));\n }\n }\n );\n // The parent sel computation is handled in the frame above using the\n // ancestor object of val\n } else if (loc === '^') {\n // This is not a final endpoint, so we do not invoke the callback here\n this._hasParentSelector = true;\n return {\n path: path.slice(0, -1),\n expr: x,\n isParentSelector: true\n };\n } else if (loc === '~') { // property name\n retObj = {\n path: push(path, loc),\n value: parentPropName,\n parent,\n parentProperty: null\n };\n this._handleCallback(retObj, callback, 'property');\n return retObj;\n } else if (loc === '$') { // root only\n addRet(this._trace(x, val, path, null, null, callback, hasArrExpr));\n } else if ((/^(-?\\d*):(-?\\d*):?(\\d*)$/u).test(loc)) { // [start:end:step] Python slice syntax\n addRet(\n this._slice(loc, x, val, path, parent, parentPropName, callback)\n );\n } else if (loc.indexOf('?(') === 0) { // [?(expr)] (filtering)\n if (this.currPreventEval) {\n throw new Error('Eval [?(expr)] prevented in JSONPath expression.');\n }\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n if (this._eval(l.replace(/^\\?\\((.*?)\\)$/u, '$1'), v[m], m, p, par, pr)) {\n addRet(this._trace(unshift(m, _x), v, p, par, pr, cb,\n true));\n }\n }\n );\n } else if (loc[0] === '(') { // [(expr)] (dynamic property/index)\n if (this.currPreventEval) {\n throw new Error('Eval [(expr)] prevented in JSONPath expression.');\n }\n // As this will resolve to a property name (but we don't know it\n // yet), property and parent information is relative to the\n // parent of the property to which this expression will resolve\n addRet(this._trace(unshift(\n this._eval(\n loc, val, path[path.length - 1],\n path.slice(0, -1), parent, parentPropName\n ),\n x\n ), val, path, parent, parentPropName, callback, hasArrExpr));\n } else if (loc[0] === '@') { // value type: @boolean(), etc.\n let addType = false;\n const valueType = loc.slice(1, -2);\n switch (valueType) {\n case 'scalar':\n if (!val || !(['object', 'function'].includes(typeof val))) {\n addType = true;\n }\n break;\n case 'boolean': case 'string': case 'undefined': case 'function':\n // eslint-disable-next-line valid-typeof\n if (typeof val === valueType) {\n addType = true;\n }\n break;\n case 'integer':\n if (Number.isFinite(val) && !(val % 1)) {\n addType = true;\n }\n break;\n case 'number':\n if (Number.isFinite(val)) {\n addType = true;\n }\n break;\n case 'nonFinite':\n if (typeof val === 'number' && !Number.isFinite(val)) {\n addType = true;\n }\n break;\n case 'object':\n // eslint-disable-next-line valid-typeof\n if (val && typeof val === valueType) {\n addType = true;\n }\n break;\n case 'array':\n if (Array.isArray(val)) {\n addType = true;\n }\n break;\n case 'other':\n addType = this.currOtherTypeCallback(\n val, path, parent, parentPropName\n );\n break;\n case 'null':\n if (val === null) {\n addType = true;\n }\n break;\n /* c8 ignore next 2 */\n default:\n throw new TypeError('Unknown value type ' + valueType);\n }\n if (addType) {\n retObj = {path, value: val, parent, parentProperty: parentPropName};\n this._handleCallback(retObj, callback, 'value');\n return retObj;\n }\n // `-escaped property\n } else if (loc[0] === '`' && val && hasOwnProp.call(val, loc.slice(1))) {\n const locProp = loc.slice(1);\n addRet(this._trace(\n x, val[locProp], push(path, locProp), val, locProp, callback,\n hasArrExpr, true\n ));\n } else if (loc.includes(',')) { // [name1,name2,...]\n const parts = loc.split(',');\n for (const part of parts) {\n addRet(this._trace(\n unshift(part, x), val, path, parent, parentPropName, callback,\n true\n ));\n }\n // simple case--directly follow property\n } else if (\n !literalPriority && val && hasOwnProp.call(val, loc)\n ) {\n addRet(\n this._trace(x, val[loc], push(path, loc), val, loc, callback,\n hasArrExpr, true)\n );\n }\n\n // We check the resulting values for parent selections. For parent\n // selections we discard the value object and continue the trace with the\n // current val object\n if (this._hasParentSelector) {\n for (let t = 0; t < ret.length; t++) {\n const rett = ret[t];\n if (rett && rett.isParentSelector) {\n const tmp = this._trace(\n rett.expr, val, rett.path, parent, parentPropName, callback,\n hasArrExpr\n );\n if (Array.isArray(tmp)) {\n ret[t] = tmp[0];\n const tl = tmp.length;\n for (let tt = 1; tt < tl; tt++) {\n t++;\n ret.splice(t, 0, tmp[tt]);\n }\n } else {\n ret[t] = tmp;\n }\n }\n }\n }\n return ret;\n};\n\nJSONPath.prototype._walk = function (\n loc, expr, val, path, parent, parentPropName, callback, f\n) {\n if (Array.isArray(val)) {\n const n = val.length;\n for (let i = 0; i < n; i++) {\n f(i, loc, expr, val, path, parent, parentPropName, callback);\n }\n } else if (val && typeof val === 'object') {\n Object.keys(val).forEach((m) => {\n f(m, loc, expr, val, path, parent, parentPropName, callback);\n });\n }\n};\n\nJSONPath.prototype._slice = function (\n loc, expr, val, path, parent, parentPropName, callback\n) {\n if (!Array.isArray(val)) { return undefined; }\n const len = val.length, parts = loc.split(':'),\n step = (parts[2] && Number.parseInt(parts[2])) || 1;\n let start = (parts[0] && Number.parseInt(parts[0])) || 0,\n end = (parts[1] && Number.parseInt(parts[1])) || len;\n start = (start < 0) ? Math.max(0, start + len) : Math.min(len, start);\n end = (end < 0) ? Math.max(0, end + len) : Math.min(len, end);\n const ret = [];\n for (let i = start; i < end; i += step) {\n const tmp = this._trace(\n unshift(i, expr), val, path, parent, parentPropName, callback, true\n );\n // Should only be possible to be an array here since first part of\n // ``unshift(i, expr)` passed in above would not be empty, nor `~`,\n // nor begin with `@` (as could return objects)\n // This was causing excessive stack size in Node (with or\n // without Babel) against our performance test: `ret.push(...tmp);`\n tmp.forEach((t) => {\n ret.push(t);\n });\n }\n return ret;\n};\n\nJSONPath.prototype._eval = function (\n code, _v, _vname, path, parent, parentPropName\n) {\n if (code.includes('@parentProperty')) {\n this.currSandbox._$_parentProperty = parentPropName;\n code = code.replace(/@parentProperty/gu, '_$_parentProperty');\n }\n if (code.includes('@parent')) {\n this.currSandbox._$_parent = parent;\n code = code.replace(/@parent/gu, '_$_parent');\n }\n if (code.includes('@property')) {\n this.currSandbox._$_property = _vname;\n code = code.replace(/@property/gu, '_$_property');\n }\n if (code.includes('@path')) {\n this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));\n code = code.replace(/@path/gu, '_$_path');\n }\n if (code.includes('@root')) {\n this.currSandbox._$_root = this.json;\n code = code.replace(/@root/gu, '_$_root');\n }\n if ((/@([.\\s)[])/u).test(code)) {\n this.currSandbox._$_v = _v;\n code = code.replace(/@([.\\s)[])/gu, '_$_v$1');\n }\n try {\n return this.vm.runInNewContext(code, this.currSandbox);\n } catch (e) {\n // eslint-disable-next-line no-console\n console.log(e);\n throw new Error('jsonPath: ' + e.message + ': ' + code);\n }\n};\n\n// PUBLIC CLASS PROPERTIES AND METHODS\n\n// Could store the cache object itself\nJSONPath.cache = {};\n\n/**\n * @param {string[]} pathArr Array to convert\n * @returns {string} The path string\n */\nJSONPath.toPathString = function (pathArr) {\n const x = pathArr, n = x.length;\n let p = '$';\n for (let i = 1; i < n; i++) {\n if (!(/^(~|\\^|@.*?\\(\\))$/u).test(x[i])) {\n p += (/^[0-9*]+$/u).test(x[i]) ? ('[' + x[i] + ']') : (\"['\" + x[i] + \"']\");\n }\n }\n return p;\n};\n\n/**\n * @param {string} pointer JSON Path\n * @returns {string} JSON Pointer\n */\nJSONPath.toPointer = function (pointer) {\n const x = pointer, n = x.length;\n let p = '';\n for (let i = 1; i < n; i++) {\n if (!(/^(~|\\^|@.*?\\(\\))$/u).test(x[i])) {\n p += '/' + x[i].toString()\n .replace(/~/gu, '~0')\n .replace(/\\//gu, '~1');\n }\n }\n return p;\n};\n\n/**\n * @param {string} expr Expression to convert\n * @returns {string[]}\n */\nJSONPath.toPathArray = function (expr) {\n const {cache} = JSONPath;\n if (cache[expr]) { return cache[expr].concat(); }\n const subx = [];\n const normalized = expr\n // Properties\n .replace(\n /@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\\(\\)/gu,\n ';$&;'\n )\n // Parenthetical evaluations (filtering and otherwise), directly\n // within brackets or single quotes\n .replace(/[['](\\??\\(.*?\\))[\\]']/gu, function ($0, $1) {\n return '[#' + (subx.push($1) - 1) + ']';\n })\n // Escape periods and tildes within properties\n .replace(/\\[['\"]([^'\\]]*)['\"]\\]/gu, function ($0, prop) {\n return \"['\" + prop\n .replace(/\\./gu, '%@%')\n .replace(/~/gu, '%%@@%%') +\n \"']\";\n })\n // Properties operator\n .replace(/~/gu, ';~;')\n // Split by property boundaries\n .replace(/['\"]?\\.['\"]?(?![^[]*\\])|\\[['\"]?/gu, ';')\n // Reinsert periods within properties\n .replace(/%@%/gu, '.')\n // Reinsert tildes within properties\n .replace(/%%@@%%/gu, '~')\n // Parent\n .replace(/(?:;)?(\\^+)(?:;)?/gu, function ($0, ups) {\n return ';' + ups.split('').join(';') + ';';\n })\n // Descendents\n .replace(/;;;|;;/gu, ';..;')\n // Remove trailing\n .replace(/;$|'?\\]|'$/gu, '');\n\n const exprList = normalized.split(';').map(function (exp) {\n const match = exp.match(/#(\\d+)/u);\n return !match || !match[1] ? exp : subx[match[1]];\n });\n cache[expr] = exprList;\n return cache[expr].concat();\n};\n\nexport {JSONPath};\n","import {JSONPath} from './jsonpath.js';\n\n/**\n* @callback ConditionCallback\n* @param {any} item\n* @returns {boolean}\n*/\n\n/**\n * Copy items out of one array into another.\n * @param {GenericArray} source Array with items to copy\n * @param {GenericArray} target Array to which to copy\n * @param {ConditionCallback} conditionCb Callback passed the current item;\n * will move item if evaluates to `true`\n * @returns {void}\n */\nconst moveToAnotherArray = function (source, target, conditionCb) {\n const il = source.length;\n for (let i = 0; i < il; i++) {\n const item = source[i];\n if (conditionCb(item)) {\n target.push(source.splice(i--, 1)[0]);\n }\n }\n};\n\nJSONPath.prototype.vm = {\n /**\n * @param {string} expr Expression to evaluate\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {any} Result of evaluated code\n */\n runInNewContext (expr, context) {\n const keys = Object.keys(context);\n const funcs = [];\n moveToAnotherArray(keys, funcs, (key) => {\n return typeof context[key] === 'function';\n });\n const values = keys.map((vr, i) => {\n return context[vr];\n });\n\n const funcString = funcs.reduce((s, func) => {\n let fString = context[func].toString();\n if (!(/function/u).test(fString)) {\n fString = 'function ' + fString;\n }\n return 'var ' + func + '=' + fString + ';' + s;\n }, '');\n\n expr = funcString + expr;\n\n // Mitigate http://perfectionkills.com/global-eval-what-are-the-options/#new_function\n if (!(/(['\"])use strict\\1/u).test(expr) &&\n !keys.includes('arguments')\n ) {\n expr = 'var arguments = undefined;' + expr;\n }\n\n // Remove last semi so `return` will be inserted before\n // the previous one instead, allowing for the return\n // of a bare ending expression\n expr = expr.replace(/;\\s*$/u, '');\n\n // Insert `return`\n const lastStatementEnd = expr.lastIndexOf(';');\n const code = (lastStatementEnd > -1\n ? expr.slice(0, lastStatementEnd + 1) +\n ' return ' + expr.slice(lastStatementEnd + 1)\n : ' return ' + expr);\n\n // eslint-disable-next-line no-new-func\n return (new Function(...keys, code))(...values);\n }\n};\n\nexport {JSONPath};\n"],"names":["hasOwnProp","Object","prototype","hasOwnProperty","push","arr","item","slice","unshift","NewError","value","avoidNew","name","Error","JSONPath","opts","expr","obj","callback","otherTypeCallback","this","e","optObj","_typeof","json","path","resultType","flatten","wrap","call","sandbox","preventEval","parent","parentProperty","TypeError","autostart","args","ret","evaluate","currParent","currParentProperty","currResultType","currPreventEval","currSandbox","currOtherTypeCallback","Array","isArray","toPathString","exprList","toPathArray","length","shift","_hasParentSelector","result","_trace","filter","ea","isParentSelector","hasArrExpr","reduce","rslt","valOrPath","_this2","_getPreferredOutput","concat","undefined","pointer","toPointer","_handleCallback","fullRetObj","type","preferredOutput","val","parentPropName","literalPriority","retObj","loc","x","addRet","elems","forEach","t","_walk","m","l","_x","v","p","par","pr","cb","_this3","test","_slice","indexOf","_eval","replace","addType","valueType","includes","Number","isFinite","locProp","split","part","rett","tmp","tl","tt","splice","f","n","i","keys","len","parts","step","parseInt","start","end","Math","max","min","code","_v","_vname","_$_parentProperty","_$_parent","_$_property","_$_path","_$_root","_$_v","vm","runInNewContext","console","log","message","cache","pathArr","toString","subx","$0","$1","prop","ups","join","map","exp","match","context","funcs","source","target","conditionCb","il","moveToAnotherArray","key","values","vr","funcString","s","func","fString","lastStatementEnd","lastIndexOf","_construct","Function"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index-browser-umd.min.cjs","sources":["../src/jsonpath.js","../src/jsonpath-browser.js"],"sourcesContent":["const {hasOwnProperty: hasOwnProp} = Object.prototype;\n\n/**\n* @typedef {null|boolean|number|string|object|JSON[]} JSON\n*/\n\n/**\n * Copies array and then pushes item into it.\n * @param {GenericArray} arr Array to copy and into which to push\n * @param {any} item Array item to add (to end)\n * @returns {GenericArray} Copy of the original array\n */\nfunction push (arr, item) {\n arr = arr.slice();\n arr.push(item);\n return arr;\n}\n/**\n * Copies array and then unshifts item into it.\n * @param {any} item Array item to add (to beginning)\n * @param {GenericArray} arr Array to copy and into which to unshift\n * @returns {GenericArray} Copy of the original array\n */\nfunction unshift (item, arr) {\n arr = arr.slice();\n arr.unshift(item);\n return arr;\n}\n\n/**\n * Caught when JSONPath is used without `new` but rethrown if with `new`\n * @extends Error\n */\nclass NewError extends Error {\n /**\n * @param {any} value The evaluated scalar value\n */\n constructor (value) {\n super(\n 'JSONPath should not be called with \"new\" (it prevents return ' +\n 'of (unwrapped) scalar values)'\n );\n this.avoidNew = true;\n this.value = value;\n this.name = 'NewError';\n }\n}\n\n/**\n* @typedef {PlainObject} ReturnObject\n* @property {string[]} path\n* @property {JSON} value\n* @property {PlainObject|GenericArray} parent\n* @property {string} parentProperty\n*/\n\n/**\n* @callback JSONPathCallback\n* @param {string|PlainObject} preferredOutput\n* @param {\"value\"|\"property\"} type\n* @param {ReturnObject} fullRetObj\n* @returns {void}\n*/\n\n/**\n* @callback OtherTypeCallback\n* @param {JSON} val\n* @param {string[]} path\n* @param {PlainObject|GenericArray} parent\n* @param {string} parentPropName\n* @returns {boolean}\n*/\n\n/* eslint-disable max-len -- Can make multiline type after https://github.com/syavorsky/comment-parser/issues/109 */\n/**\n * @typedef {PlainObject} JSONPathOptions\n * @property {JSON} json\n * @property {string|string[]} path\n * @property {\"value\"|\"path\"|\"pointer\"|\"parent\"|\"parentProperty\"|\"all\"} [resultType=\"value\"]\n * @property {boolean} [flatten=false]\n * @property {boolean} [wrap=true]\n * @property {PlainObject} [sandbox={}]\n * @property {boolean} [preventEval=false]\n * @property {PlainObject|GenericArray|null} [parent=null]\n * @property {string|null} [parentProperty=null]\n * @property {JSONPathCallback} [callback]\n * @property {OtherTypeCallback} [otherTypeCallback] Defaults to\n * function which throws on encountering `@other`\n * @property {boolean} [autostart=true]\n */\n/* eslint-enable max-len -- Can make multiline type after https://github.com/syavorsky/comment-parser/issues/109 */\n\n/**\n * @param {string|JSONPathOptions} opts If a string, will be treated as `expr`\n * @param {string} [expr] JSON path to evaluate\n * @param {JSON} [obj] JSON object to evaluate against\n * @param {JSONPathCallback} [callback] Passed 3 arguments: 1) desired payload\n * per `resultType`, 2) `\"value\"|\"property\"`, 3) Full returned object with\n * all payloads\n * @param {OtherTypeCallback} [otherTypeCallback] If `@other()` is at the end\n * of one's query, this will be invoked with the value of the item, its\n * path, its parent, and its parent's property name, and it should return\n * a boolean indicating whether the supplied value belongs to the \"other\"\n * type or not (or it may handle transformations and return `false`).\n * @returns {JSONPath}\n * @class\n */\nfunction JSONPath (opts, expr, obj, callback, otherTypeCallback) {\n // eslint-disable-next-line no-restricted-syntax\n if (!(this instanceof JSONPath)) {\n try {\n return new JSONPath(opts, expr, obj, callback, otherTypeCallback);\n } catch (e) {\n if (!e.avoidNew) {\n throw e;\n }\n return e.value;\n }\n }\n\n if (typeof opts === 'string') {\n otherTypeCallback = callback;\n callback = obj;\n obj = expr;\n expr = opts;\n opts = null;\n }\n const optObj = opts && typeof opts === 'object';\n opts = opts || {};\n this.json = opts.json || obj;\n this.path = opts.path || expr;\n this.resultType = opts.resultType || 'value';\n this.flatten = opts.flatten || false;\n this.wrap = hasOwnProp.call(opts, 'wrap') ? opts.wrap : true;\n this.sandbox = opts.sandbox || {};\n this.preventEval = opts.preventEval || false;\n this.parent = opts.parent || null;\n this.parentProperty = opts.parentProperty || null;\n this.callback = opts.callback || callback || null;\n this.otherTypeCallback = opts.otherTypeCallback ||\n otherTypeCallback ||\n function () {\n throw new TypeError(\n 'You must supply an otherTypeCallback callback option ' +\n 'with the @other() operator.'\n );\n };\n\n if (opts.autostart !== false) {\n const args = {\n path: (optObj ? opts.path : expr)\n };\n if (!optObj) {\n args.json = obj;\n } else if ('json' in opts) {\n args.json = opts.json;\n }\n const ret = this.evaluate(args);\n if (!ret || typeof ret !== 'object') {\n throw new NewError(ret);\n }\n return ret;\n }\n}\n\n// PUBLIC METHODS\nJSONPath.prototype.evaluate = function (\n expr, json, callback, otherTypeCallback\n) {\n let currParent = this.parent,\n currParentProperty = this.parentProperty;\n let {flatten, wrap} = this;\n\n this.currResultType = this.resultType;\n this.currPreventEval = this.preventEval;\n this.currSandbox = this.sandbox;\n callback = callback || this.callback;\n this.currOtherTypeCallback = otherTypeCallback || this.otherTypeCallback;\n\n json = json || this.json;\n expr = expr || this.path;\n if (expr && typeof expr === 'object' && !Array.isArray(expr)) {\n if (!expr.path && expr.path !== '') {\n throw new TypeError(\n 'You must supply a \"path\" property when providing an object ' +\n 'argument to JSONPath.evaluate().'\n );\n }\n if (!(hasOwnProp.call(expr, 'json'))) {\n throw new TypeError(\n 'You must supply a \"json\" property when providing an object ' +\n 'argument to JSONPath.evaluate().'\n );\n }\n ({json} = expr);\n flatten = hasOwnProp.call(expr, 'flatten') ? expr.flatten : flatten;\n this.currResultType = hasOwnProp.call(expr, 'resultType')\n ? expr.resultType\n : this.currResultType;\n this.currSandbox = hasOwnProp.call(expr, 'sandbox')\n ? expr.sandbox\n : this.currSandbox;\n wrap = hasOwnProp.call(expr, 'wrap') ? expr.wrap : wrap;\n this.currPreventEval = hasOwnProp.call(expr, 'preventEval')\n ? expr.preventEval\n : this.currPreventEval;\n callback = hasOwnProp.call(expr, 'callback') ? expr.callback : callback;\n this.currOtherTypeCallback = hasOwnProp.call(expr, 'otherTypeCallback')\n ? expr.otherTypeCallback\n : this.currOtherTypeCallback;\n currParent = hasOwnProp.call(expr, 'parent') ? expr.parent : currParent;\n currParentProperty = hasOwnProp.call(expr, 'parentProperty')\n ? expr.parentProperty\n : currParentProperty;\n expr = expr.path;\n }\n currParent = currParent || null;\n currParentProperty = currParentProperty || null;\n\n if (Array.isArray(expr)) {\n expr = JSONPath.toPathString(expr);\n }\n if ((!expr && expr !== '') || !json) {\n return undefined;\n }\n\n const exprList = JSONPath.toPathArray(expr);\n if (exprList[0] === '$' && exprList.length > 1) { exprList.shift(); }\n this._hasParentSelector = null;\n const result = this\n ._trace(\n exprList, json, ['$'], currParent, currParentProperty, callback\n )\n .filter(function (ea) { return ea && !ea.isParentSelector; });\n\n if (!result.length) { return wrap ? [] : undefined; }\n if (!wrap && result.length === 1 && !result[0].hasArrExpr) {\n return this._getPreferredOutput(result[0]);\n }\n return result.reduce((rslt, ea) => {\n const valOrPath = this._getPreferredOutput(ea);\n if (flatten && Array.isArray(valOrPath)) {\n rslt = rslt.concat(valOrPath);\n } else {\n rslt.push(valOrPath);\n }\n return rslt;\n }, []);\n};\n\n// PRIVATE METHODS\n\nJSONPath.prototype._getPreferredOutput = function (ea) {\n const resultType = this.currResultType;\n switch (resultType) {\n case 'all': {\n const path = Array.isArray(ea.path)\n ? ea.path\n : JSONPath.toPathArray(ea.path);\n ea.pointer = JSONPath.toPointer(path);\n ea.path = typeof ea.path === 'string'\n ? ea.path\n : JSONPath.toPathString(ea.path);\n return ea;\n } case 'value': case 'parent': case 'parentProperty':\n return ea[resultType];\n case 'path':\n return JSONPath.toPathString(ea[resultType]);\n case 'pointer':\n return JSONPath.toPointer(ea.path);\n default:\n throw new TypeError('Unknown result type');\n }\n};\n\nJSONPath.prototype._handleCallback = function (fullRetObj, callback, type) {\n if (callback) {\n const preferredOutput = this._getPreferredOutput(fullRetObj);\n fullRetObj.path = typeof fullRetObj.path === 'string'\n ? fullRetObj.path\n : JSONPath.toPathString(fullRetObj.path);\n // eslint-disable-next-line node/callback-return\n callback(preferredOutput, type, fullRetObj);\n }\n};\n\n/**\n *\n * @param {string} expr\n * @param {JSON} val\n * @param {string[]} path\n * @param {PlainObject|GenericArray} parent\n * @param {string} parentPropName\n * @param {JSONPathCallback} callback\n * @param {boolean} hasArrExpr\n * @param {boolean} literalPriority\n * @returns {ReturnObject|ReturnObject[]}\n */\nJSONPath.prototype._trace = function (\n expr, val, path, parent, parentPropName, callback, hasArrExpr,\n literalPriority\n) {\n // No expr to follow? return path and value as the result of\n // this trace branch\n let retObj;\n if (!expr.length) {\n retObj = {\n path,\n value: val,\n parent,\n parentProperty: parentPropName,\n hasArrExpr\n };\n this._handleCallback(retObj, callback, 'value');\n return retObj;\n }\n\n const loc = expr[0], x = expr.slice(1);\n\n // We need to gather the return value of recursive trace calls in order to\n // do the parent sel computation.\n const ret = [];\n /**\n *\n * @param {ReturnObject|ReturnObject[]} elems\n * @returns {void}\n */\n function addRet (elems) {\n if (Array.isArray(elems)) {\n // This was causing excessive stack size in Node (with or\n // without Babel) against our performance test:\n // `ret.push(...elems);`\n elems.forEach((t) => {\n ret.push(t);\n });\n } else {\n ret.push(elems);\n }\n }\n if ((typeof loc !== 'string' || literalPriority) && val &&\n hasOwnProp.call(val, loc)\n ) { // simple case--directly follow property\n addRet(this._trace(x, val[loc], push(path, loc), val, loc, callback,\n hasArrExpr));\n // eslint-disable-next-line unicorn/prefer-switch -- Part of larger `if`\n } else if (loc === '*') { // all child properties\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n addRet(this._trace(unshift(m, _x), v, p, par, pr, cb,\n true, true));\n }\n );\n } else if (loc === '..') { // all descendent parent properties\n // Check remaining expression with val's immediate children\n addRet(\n this._trace(x, val, path, parent, parentPropName, callback,\n hasArrExpr)\n );\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n // We don't join m and x here because we only want parents,\n // not scalar values\n if (typeof v[m] === 'object') {\n // Keep going with recursive descent on val's\n // object children\n addRet(this._trace(\n unshift(l, _x), v[m], push(p, m), v, m, cb, true\n ));\n }\n }\n );\n // The parent sel computation is handled in the frame above using the\n // ancestor object of val\n } else if (loc === '^') {\n // This is not a final endpoint, so we do not invoke the callback here\n this._hasParentSelector = true;\n return {\n path: path.slice(0, -1),\n expr: x,\n isParentSelector: true\n };\n } else if (loc === '~') { // property name\n retObj = {\n path: push(path, loc),\n value: parentPropName,\n parent,\n parentProperty: null\n };\n this._handleCallback(retObj, callback, 'property');\n return retObj;\n } else if (loc === '$') { // root only\n addRet(this._trace(x, val, path, null, null, callback, hasArrExpr));\n } else if ((/^(-?\\d*):(-?\\d*):?(\\d*)$/u).test(loc)) { // [start:end:step] Python slice syntax\n addRet(\n this._slice(loc, x, val, path, parent, parentPropName, callback)\n );\n } else if (loc.indexOf('?(') === 0) { // [?(expr)] (filtering)\n if (this.currPreventEval) {\n throw new Error('Eval [?(expr)] prevented in JSONPath expression.');\n }\n this._walk(\n loc, x, val, path, parent, parentPropName, callback,\n (m, l, _x, v, p, par, pr, cb) => {\n if (this._eval(l.replace(/^\\?\\((.*?)\\)$/u, '$1'), v[m], m, p, par, pr)) {\n addRet(this._trace(unshift(m, _x), v, p, par, pr, cb,\n true));\n }\n }\n );\n } else if (loc[0] === '(') { // [(expr)] (dynamic property/index)\n if (this.currPreventEval) {\n throw new Error('Eval [(expr)] prevented in JSONPath expression.');\n }\n // As this will resolve to a property name (but we don't know it\n // yet), property and parent information is relative to the\n // parent of the property to which this expression will resolve\n addRet(this._trace(unshift(\n this._eval(\n loc, val, path[path.length - 1],\n path.slice(0, -1), parent, parentPropName\n ),\n x\n ), val, path, parent, parentPropName, callback, hasArrExpr));\n } else if (loc[0] === '@') { // value type: @boolean(), etc.\n let addType = false;\n const valueType = loc.slice(1, -2);\n switch (valueType) {\n case 'scalar':\n if (!val || !(['object', 'function'].includes(typeof val))) {\n addType = true;\n }\n break;\n case 'boolean': case 'string': case 'undefined': case 'function':\n // eslint-disable-next-line valid-typeof\n if (typeof val === valueType) {\n addType = true;\n }\n break;\n case 'integer':\n if (Number.isFinite(val) && !(val % 1)) {\n addType = true;\n }\n break;\n case 'number':\n if (Number.isFinite(val)) {\n addType = true;\n }\n break;\n case 'nonFinite':\n if (typeof val === 'number' && !Number.isFinite(val)) {\n addType = true;\n }\n break;\n case 'object':\n // eslint-disable-next-line valid-typeof\n if (val && typeof val === valueType) {\n addType = true;\n }\n break;\n case 'array':\n if (Array.isArray(val)) {\n addType = true;\n }\n break;\n case 'other':\n addType = this.currOtherTypeCallback(\n val, path, parent, parentPropName\n );\n break;\n case 'null':\n if (val === null) {\n addType = true;\n }\n break;\n /* c8 ignore next 2 */\n default:\n throw new TypeError('Unknown value type ' + valueType);\n }\n if (addType) {\n retObj = {path, value: val, parent, parentProperty: parentPropName};\n this._handleCallback(retObj, callback, 'value');\n return retObj;\n }\n // `-escaped property\n } else if (loc[0] === '`' && val && hasOwnProp.call(val, loc.slice(1))) {\n const locProp = loc.slice(1);\n addRet(this._trace(\n x, val[locProp], push(path, locProp), val, locProp, callback,\n hasArrExpr, true\n ));\n } else if (loc.includes(',')) { // [name1,name2,...]\n const parts = loc.split(',');\n for (const part of parts) {\n addRet(this._trace(\n unshift(part, x), val, path, parent, parentPropName, callback,\n true\n ));\n }\n // simple case--directly follow property\n } else if (\n !literalPriority && val && hasOwnProp.call(val, loc)\n ) {\n addRet(\n this._trace(x, val[loc], push(path, loc), val, loc, callback,\n hasArrExpr, true)\n );\n }\n\n // We check the resulting values for parent selections. For parent\n // selections we discard the value object and continue the trace with the\n // current val object\n if (this._hasParentSelector) {\n for (let t = 0; t < ret.length; t++) {\n const rett = ret[t];\n if (rett && rett.isParentSelector) {\n const tmp = this._trace(\n rett.expr, val, rett.path, parent, parentPropName, callback,\n hasArrExpr\n );\n if (Array.isArray(tmp)) {\n ret[t] = tmp[0];\n const tl = tmp.length;\n for (let tt = 1; tt < tl; tt++) {\n t++;\n ret.splice(t, 0, tmp[tt]);\n }\n } else {\n ret[t] = tmp;\n }\n }\n }\n }\n return ret;\n};\n\nJSONPath.prototype._walk = function (\n loc, expr, val, path, parent, parentPropName, callback, f\n) {\n if (Array.isArray(val)) {\n const n = val.length;\n for (let i = 0; i < n; i++) {\n f(i, loc, expr, val, path, parent, parentPropName, callback);\n }\n } else if (val && typeof val === 'object') {\n Object.keys(val).forEach((m) => {\n f(m, loc, expr, val, path, parent, parentPropName, callback);\n });\n }\n};\n\nJSONPath.prototype._slice = function (\n loc, expr, val, path, parent, parentPropName, callback\n) {\n if (!Array.isArray(val)) { return undefined; }\n const len = val.length, parts = loc.split(':'),\n step = (parts[2] && Number.parseInt(parts[2])) || 1;\n let start = (parts[0] && Number.parseInt(parts[0])) || 0,\n end = (parts[1] && Number.parseInt(parts[1])) || len;\n start = (start < 0) ? Math.max(0, start + len) : Math.min(len, start);\n end = (end < 0) ? Math.max(0, end + len) : Math.min(len, end);\n const ret = [];\n for (let i = start; i < end; i += step) {\n const tmp = this._trace(\n unshift(i, expr), val, path, parent, parentPropName, callback, true\n );\n // Should only be possible to be an array here since first part of\n // ``unshift(i, expr)` passed in above would not be empty, nor `~`,\n // nor begin with `@` (as could return objects)\n // This was causing excessive stack size in Node (with or\n // without Babel) against our performance test: `ret.push(...tmp);`\n tmp.forEach((t) => {\n ret.push(t);\n });\n }\n return ret;\n};\n\nJSONPath.prototype._eval = function (\n code, _v, _vname, path, parent, parentPropName\n) {\n if (code.includes('@parentProperty')) {\n this.currSandbox._$_parentProperty = parentPropName;\n code = code.replace(/@parentProperty/gu, '_$_parentProperty');\n }\n if (code.includes('@parent')) {\n this.currSandbox._$_parent = parent;\n code = code.replace(/@parent/gu, '_$_parent');\n }\n if (code.includes('@property')) {\n this.currSandbox._$_property = _vname;\n code = code.replace(/@property/gu, '_$_property');\n }\n if (code.includes('@path')) {\n this.currSandbox._$_path = JSONPath.toPathString(path.concat([_vname]));\n code = code.replace(/@path/gu, '_$_path');\n }\n if (code.includes('@root')) {\n this.currSandbox._$_root = this.json;\n code = code.replace(/@root/gu, '_$_root');\n }\n if ((/@([.\\s)[])/u).test(code)) {\n this.currSandbox._$_v = _v;\n code = code.replace(/@([.\\s)[])/gu, '_$_v$1');\n }\n try {\n return this.vm.runInNewContext(code, this.currSandbox);\n } catch (e) {\n // eslint-disable-next-line no-console\n console.log(e);\n throw new Error('jsonPath: ' + e.message + ': ' + code);\n }\n};\n\n// PUBLIC CLASS PROPERTIES AND METHODS\n\n// Could store the cache object itself\nJSONPath.cache = {};\n\n/**\n * @param {string[]} pathArr Array to convert\n * @returns {string} The path string\n */\nJSONPath.toPathString = function (pathArr) {\n const x = pathArr, n = x.length;\n let p = '$';\n for (let i = 1; i < n; i++) {\n if (!(/^(~|\\^|@.*?\\(\\))$/u).test(x[i])) {\n p += (/^[0-9*]+$/u).test(x[i]) ? ('[' + x[i] + ']') : (\"['\" + x[i] + \"']\");\n }\n }\n return p;\n};\n\n/**\n * @param {string} pointer JSON Path\n * @returns {string} JSON Pointer\n */\nJSONPath.toPointer = function (pointer) {\n const x = pointer, n = x.length;\n let p = '';\n for (let i = 1; i < n; i++) {\n if (!(/^(~|\\^|@.*?\\(\\))$/u).test(x[i])) {\n p += '/' + x[i].toString()\n .replace(/~/gu, '~0')\n .replace(/\\//gu, '~1');\n }\n }\n return p;\n};\n\n/**\n * @param {string} expr Expression to convert\n * @returns {string[]}\n */\nJSONPath.toPathArray = function (expr) {\n const {cache} = JSONPath;\n if (cache[expr]) { return cache[expr].concat(); }\n const subx = [];\n const normalized = expr\n // Properties\n .replace(\n /@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\\(\\)/gu,\n ';$&;'\n )\n // Parenthetical evaluations (filtering and otherwise), directly\n // within brackets or single quotes\n .replace(/[['](\\??\\(.*?\\))[\\]']/gu, function ($0, $1) {\n return '[#' + (subx.push($1) - 1) + ']';\n })\n // Escape periods and tildes within properties\n .replace(/\\[['\"]([^'\\]]*)['\"]\\]/gu, function ($0, prop) {\n return \"['\" + prop\n .replace(/\\./gu, '%@%')\n .replace(/~/gu, '%%@@%%') +\n \"']\";\n })\n // Properties operator\n .replace(/~/gu, ';~;')\n // Split by property boundaries\n .replace(/['\"]?\\.['\"]?(?![^[]*\\])|\\[['\"]?/gu, ';')\n // Reinsert periods within properties\n .replace(/%@%/gu, '.')\n // Reinsert tildes within properties\n .replace(/%%@@%%/gu, '~')\n // Parent\n .replace(/(?:;)?(\\^+)(?:;)?/gu, function ($0, ups) {\n return ';' + ups.split('').join(';') + ';';\n })\n // Descendents\n .replace(/;;;|;;/gu, ';..;')\n // Remove trailing\n .replace(/;$|'?\\]|'$/gu, '');\n\n const exprList = normalized.split(';').map(function (exp) {\n const match = exp.match(/#(\\d+)/u);\n return !match || !match[1] ? exp : subx[match[1]];\n });\n cache[expr] = exprList;\n return cache[expr].concat();\n};\n\nexport {JSONPath};\n","import {JSONPath} from './jsonpath.js';\n\n/**\n* @callback ConditionCallback\n* @param {any} item\n* @returns {boolean}\n*/\n\n/**\n * Copy items out of one array into another.\n * @param {GenericArray} source Array with items to copy\n * @param {GenericArray} target Array to which to copy\n * @param {ConditionCallback} conditionCb Callback passed the current item;\n * will move item if evaluates to `true`\n * @returns {void}\n */\nconst moveToAnotherArray = function (source, target, conditionCb) {\n const il = source.length;\n for (let i = 0; i < il; i++) {\n const item = source[i];\n if (conditionCb(item)) {\n target.push(source.splice(i--, 1)[0]);\n }\n }\n};\n\nJSONPath.prototype.vm = {\n /**\n * @param {string} expr Expression to evaluate\n * @param {PlainObject} context Object whose items will be added\n * to evaluation\n * @returns {any} Result of evaluated code\n */\n runInNewContext (expr, context) {\n const keys = Object.keys(context);\n const funcs = [];\n moveToAnotherArray(keys, funcs, (key) => {\n return typeof context[key] === 'function';\n });\n const values = keys.map((vr, i) => {\n return context[vr];\n });\n\n const funcString = funcs.reduce((s, func) => {\n let fString = context[func].toString();\n if (!(/function/u).test(fString)) {\n fString = 'function ' + fString;\n }\n return 'var ' + func + '=' + fString + ';' + s;\n }, '');\n\n expr = funcString + expr;\n\n // Mitigate http://perfectionkills.com/global-eval-what-are-the-options/#new_function\n if (!(/(['\"])use strict\\1/u).test(expr) &&\n !keys.includes('arguments')\n ) {\n expr = 'var arguments = undefined;' + expr;\n }\n\n // Remove last semi so `return` will be inserted before\n // the previous one instead, allowing for the return\n // of a bare ending expression\n expr = expr.replace(/;\\s*$/u, '');\n\n // Insert `return`\n const lastStatementEnd = expr.lastIndexOf(';');\n const code = (lastStatementEnd > -1\n ? expr.slice(0, lastStatementEnd + 1) +\n ' return ' + expr.slice(lastStatementEnd + 1)\n : ' return ' + expr);\n\n // eslint-disable-next-line no-new-func\n return (new Function(...keys, code))(...values);\n }\n};\n\nexport {JSONPath};\n"],"names":["hasOwnProp","Object","prototype","hasOwnProperty","push","arr","item","slice","unshift","NewError","value","avoidNew","name","Error","JSONPath","opts","expr","obj","callback","otherTypeCallback","this","e","optObj","_typeof","json","path","resultType","flatten","wrap","call","sandbox","preventEval","parent","parentProperty","TypeError","autostart","args","ret","evaluate","currParent","currParentProperty","currResultType","currPreventEval","currSandbox","currOtherTypeCallback","Array","isArray","toPathString","exprList","toPathArray","length","shift","_hasParentSelector","result","_trace","filter","ea","isParentSelector","hasArrExpr","reduce","rslt","valOrPath","_this2","_getPreferredOutput","concat","undefined","pointer","toPointer","_handleCallback","fullRetObj","type","preferredOutput","val","parentPropName","literalPriority","retObj","loc","x","addRet","elems","forEach","t","_walk","m","l","_x","v","p","par","pr","cb","_this3","test","_slice","indexOf","_eval","replace","addType","valueType","includes","Number","isFinite","locProp","split","part","rett","tmp","tl","tt","splice","f","n","i","keys","len","parts","step","parseInt","start","end","Math","max","min","code","_v","_vname","_$_parentProperty","_$_parent","_$_property","_$_path","_$_root","_$_v","vm","runInNewContext","console","log","message","cache","pathArr","toString","subx","$0","$1","prop","ups","join","map","exp","match","context","funcs","source","target","conditionCb","il","moveToAnotherArray","key","values","vr","funcString","s","func","fString","lastStatementEnd","lastIndexOf","_construct","Function"],"mappings":"mhFAAA,IAAuBA,EAAcC,OAAOC,UAArCC,eAYP,SAASC,EAAMC,EAAKC,UAChBD,EAAMA,EAAIE,SACNH,KAAKE,GACFD,EAQX,SAASG,EAASF,EAAMD,UACpBA,EAAMA,EAAIE,SACNC,QAAQF,GACLD,MAOLI,oaAIWC,oIAEL,+FAGCC,UAAW,IACXD,MAAQA,IACRE,KAAO,yBAXGC,QA0EvB,SAASC,EAAUC,EAAMC,EAAMC,EAAKC,EAAUC,QAEpCC,gBAAgBN,cAEP,IAAIA,EAASC,EAAMC,EAAMC,EAAKC,EAAUC,GACjD,MAAOE,OACAA,EAAEV,eACGU,SAEHA,EAAEX,MAIG,iBAATK,IACPI,EAAoBD,EACpBA,EAAWD,EACXA,EAAMD,EACNA,EAAOD,EACPA,EAAO,UAELO,EAASP,GAAwB,WAAhBQ,EAAOR,MAC9BA,EAAOA,GAAQ,QACVS,KAAOT,EAAKS,MAAQP,OACpBQ,KAAOV,EAAKU,MAAQT,OACpBU,WAAaX,EAAKW,YAAc,aAChCC,QAAUZ,EAAKY,UAAW,OAC1BC,MAAO5B,EAAW6B,KAAKd,EAAM,SAAUA,EAAKa,UAC5CE,QAAUf,EAAKe,SAAW,QAC1BC,YAAchB,EAAKgB,cAAe,OAClCC,OAASjB,EAAKiB,QAAU,UACxBC,eAAiBlB,EAAKkB,gBAAkB,UACxCf,SAAWH,EAAKG,UAAYA,GAAY,UACxCC,kBAAoBJ,EAAKI,mBAC1BA,GACA,iBACU,IAAIe,UACN,sFAKW,IAAnBnB,EAAKoB,UAAqB,KACpBC,EAAO,CACTX,KAAOH,EAASP,EAAKU,KAAOT,GAE3BM,EAEM,SAAUP,IACjBqB,EAAKZ,KAAOT,EAAKS,MAFjBY,EAAKZ,KAAOP,MAIVoB,EAAMjB,KAAKkB,SAASF,OACrBC,GAAsB,WAAfd,EAAOc,SACT,IAAI5B,EAAS4B,UAEhBA,GAKfvB,EAASZ,UAAUoC,SAAW,SAC1BtB,EAAMQ,EAAMN,EAAUC,cAElBoB,EAAanB,KAAKY,OAClBQ,EAAqBpB,KAAKa,eACzBN,EAAiBP,KAAjBO,QAASC,EAAQR,KAARQ,aAETa,eAAiBrB,KAAKM,gBACtBgB,gBAAkBtB,KAAKW,iBACvBY,YAAcvB,KAAKU,QACxBZ,EAAWA,GAAYE,KAAKF,cACvB0B,sBAAwBzB,GAAqBC,KAAKD,kBAEvDK,EAAOA,GAAQJ,KAAKI,MACpBR,EAAOA,GAAQI,KAAKK,OACQ,WAAhBF,EAAOP,KAAsB6B,MAAMC,QAAQ9B,GAAO,KACrDA,EAAKS,MAAsB,KAAdT,EAAKS,WACb,IAAIS,UACN,mGAIFlC,EAAW6B,KAAKb,EAAM,cAClB,IAAIkB,UACN,+FAINV,EAAQR,EAARQ,KACFG,EAAU3B,EAAW6B,KAAKb,EAAM,WAAaA,EAAKW,QAAUA,OACvDc,eAAiBzC,EAAW6B,KAAKb,EAAM,cACtCA,EAAKU,WACLN,KAAKqB,oBACNE,YAAc3C,EAAW6B,KAAKb,EAAM,WACnCA,EAAKc,QACLV,KAAKuB,YACXf,EAAO5B,EAAW6B,KAAKb,EAAM,QAAUA,EAAKY,KAAOA,OAC9Cc,gBAAkB1C,EAAW6B,KAAKb,EAAM,eACvCA,EAAKe,YACLX,KAAKsB,gBACXxB,EAAWlB,EAAW6B,KAAKb,EAAM,YAAcA,EAAKE,SAAWA,OAC1D0B,sBAAwB5C,EAAW6B,KAAKb,EAAM,qBAC7CA,EAAKG,kBACLC,KAAKwB,sBACXL,EAAavC,EAAW6B,KAAKb,EAAM,UAAYA,EAAKgB,OAASO,EAC7DC,EAAqBxC,EAAW6B,KAAKb,EAAM,kBACrCA,EAAKiB,eACLO,EACNxB,EAAOA,EAAKS,QAEhBc,EAAaA,GAAc,KAC3BC,EAAqBA,GAAsB,KAEvCK,MAAMC,QAAQ9B,KACdA,EAAOF,EAASiC,aAAa/B,KAE3BA,GAAiB,KAATA,IAAiBQ,OAIzBwB,EAAWlC,EAASmC,YAAYjC,GAClB,MAAhBgC,EAAS,IAAcA,EAASE,OAAS,GAAKF,EAASG,aACtDC,mBAAqB,SACpBC,EAASjC,KACVkC,OACGN,EAAUxB,EAAM,CAAC,KAAMe,EAAYC,EAAoBtB,GAE1DqC,QAAO,SAAUC,UAAaA,IAAOA,EAAGC,2BAExCJ,EAAOH,OACPtB,GAA0B,IAAlByB,EAAOH,QAAiBG,EAAO,GAAGK,WAGxCL,EAAOM,QAAO,SAACC,EAAMJ,OAClBK,EAAYC,EAAKC,oBAAoBP,UACvC7B,GAAWkB,MAAMC,QAAQe,GACzBD,EAAOA,EAAKI,OAAOH,GAEnBD,EAAKxD,KAAKyD,GAEPD,IACR,IAVQxC,KAAK2C,oBAAoBV,EAAO,IAFdzB,EAAO,QAAKqC,IAiB7CnD,EAASZ,UAAU6D,oBAAsB,SAAUP,OACzC9B,EAAaN,KAAKqB,sBAChBf,OACH,UACKD,EAAOoB,MAAMC,QAAQU,EAAG/B,MACxB+B,EAAG/B,KACHX,EAASmC,YAAYO,EAAG/B,aAC9B+B,EAAGU,QAAUpD,EAASqD,UAAU1C,GAChC+B,EAAG/B,KAA0B,iBAAZ+B,EAAG/B,KACd+B,EAAG/B,KACHX,EAASiC,aAAaS,EAAG/B,MACxB+B,MACJ,YAAc,aAAe,wBACzBA,EAAG9B,OACT,cACMZ,EAASiC,aAAaS,EAAG9B,QAC/B,iBACMZ,EAASqD,UAAUX,EAAG/B,oBAEvB,IAAIS,UAAU,yBAI5BpB,EAASZ,UAAUkE,gBAAkB,SAAUC,EAAYnD,EAAUoD,MAC7DpD,EAAU,KACJqD,EAAkBnD,KAAK2C,oBAAoBM,GACjDA,EAAW5C,KAAkC,iBAApB4C,EAAW5C,KAC9B4C,EAAW5C,KACXX,EAASiC,aAAasB,EAAW5C,MAEvCP,EAASqD,EAAiBD,EAAMD,KAgBxCvD,EAASZ,UAAUoD,OAAS,SACxBtC,EAAMwD,EAAK/C,EAAMO,EAAQyC,EAAgBvD,EAAUwC,EACnDgB,OAIIC,aACC3D,EAAKkC,cACNyB,EAAS,CACLlD,KAAAA,EACAf,MAAO8D,EACPxC,OAAAA,EACAC,eAAgBwC,EAChBf,WAAAA,QAECU,gBAAgBO,EAAQzD,EAAU,SAChCyD,MAGLC,EAAM5D,EAAK,GAAI6D,EAAI7D,EAAKT,MAAM,GAI9B8B,EAAM,YAMHyC,EAAQC,GACTlC,MAAMC,QAAQiC,GAIdA,EAAMC,SAAQ,SAACC,GACX5C,EAAIjC,KAAK6E,MAGb5C,EAAIjC,KAAK2E,OAGG,iBAARH,GAAoBF,IAAoBF,GAChDxE,EAAW6B,KAAK2C,EAAKI,GAErBE,EAAO1D,KAAKkC,OAAOuB,EAAGL,EAAII,GAAMxE,EAAKqB,EAAMmD,GAAMJ,EAAKI,EAAK1D,EACvDwC,SAED,GAAY,MAARkB,OACFM,MACDN,EAAKC,EAAGL,EAAK/C,EAAMO,EAAQyC,EAAgBvD,GAC3C,SAACiE,EAAGC,EAAGC,EAAIC,EAAGC,EAAGC,EAAKC,EAAIC,GACtBZ,EAAOa,EAAKrC,OAAO9C,EAAQ2E,EAAGE,GAAKC,EAAGC,EAAGC,EAAKC,EAAIC,GAC9C,GAAM,YAGf,GAAY,OAARd,EAEPE,EACI1D,KAAKkC,OAAOuB,EAAGL,EAAK/C,EAAMO,EAAQyC,EAAgBvD,EAC9CwC,SAEHwB,MACDN,EAAKC,EAAGL,EAAK/C,EAAMO,EAAQyC,EAAgBvD,GAC3C,SAACiE,EAAGC,EAAGC,EAAIC,EAAGC,EAAGC,EAAKC,EAAIC,GAGF,WAAhBnE,EAAO+D,EAAEH,KAGTL,EAAOa,EAAKrC,OACR9C,EAAQ4E,EAAGC,GAAKC,EAAEH,GAAI/E,EAAKmF,EAAGJ,GAAIG,EAAGH,EAAGO,GAAI,WAOzD,CAAA,GAAY,MAARd,cAEFxB,oBAAqB,EACnB,CACH3B,KAAMA,EAAKlB,MAAM,GAAI,GACrBS,KAAM6D,EACNpB,kBAAkB,GAEnB,GAAY,MAARmB,SACPD,EAAS,CACLlD,KAAMrB,EAAKqB,EAAMmD,GACjBlE,MAAO+D,EACPzC,OAAAA,EACAC,eAAgB,WAEfmC,gBAAgBO,EAAQzD,EAAU,YAChCyD,EACJ,GAAY,MAARC,EACPE,EAAO1D,KAAKkC,OAAOuB,EAAGL,EAAK/C,EAAM,KAAM,KAAMP,EAAUwC,SACpD,GAAK,0CAA6BkC,KAAKhB,GAC1CE,EACI1D,KAAKyE,OAAOjB,EAAKC,EAAGL,EAAK/C,EAAMO,EAAQyC,EAAgBvD,SAExD,GAA0B,IAAtB0D,EAAIkB,QAAQ,MAAa,IAC5B1E,KAAKsB,sBACC,IAAI7B,MAAM,yDAEfqE,MACDN,EAAKC,EAAGL,EAAK/C,EAAMO,EAAQyC,EAAgBvD,GAC3C,SAACiE,EAAGC,EAAGC,EAAIC,EAAGC,EAAGC,EAAKC,EAAIC,GAClBC,EAAKI,MAAMX,EAAEY,QAAQ,6KAAkB,MAAOV,EAAEH,GAAIA,EAAGI,EAAGC,EAAKC,IAC/DX,EAAOa,EAAKrC,OAAO9C,EAAQ2E,EAAGE,GAAKC,EAAGC,EAAGC,EAAKC,EAAIC,GAC9C,YAIb,GAAe,MAAXd,EAAI,GAAY,IACnBxD,KAAKsB,sBACC,IAAI7B,MAAM,mDAKpBiE,EAAO1D,KAAKkC,OAAO9C,EACfY,KAAK2E,MACDnB,EAAKJ,EAAK/C,EAAKA,EAAKyB,OAAS,GAC7BzB,EAAKlB,MAAM,GAAI,GAAIyB,EAAQyC,GAE/BI,GACDL,EAAK/C,EAAMO,EAAQyC,EAAgBvD,EAAUwC,SAC7C,GAAe,MAAXkB,EAAI,GAAY,KACnBqB,GAAU,EACRC,EAAYtB,EAAIrE,MAAM,GAAI,UACxB2F,OACH,SACI1B,GAAS,CAAC,SAAU,YAAY2B,WAAgB3B,MACjDyB,GAAU,aAGb,cAAgB,aAAe,gBAAkB,WAE9C1E,EAAOiD,KAAQ0B,IACfD,GAAU,aAGb,WACGG,OAAOC,SAAS7B,IAAUA,EAAM,IAChCyB,GAAU,aAGb,SACGG,OAAOC,SAAS7B,KAChByB,GAAU,aAGb,YACkB,iBAARzB,GAAqB4B,OAAOC,SAAS7B,KAC5CyB,GAAU,aAGb,SAEGzB,GAAOjD,EAAOiD,KAAQ0B,IACtBD,GAAU,aAGb,QACGpD,MAAMC,QAAQ0B,KACdyB,GAAU,aAGb,QACDA,EAAU7E,KAAKwB,sBACX4B,EAAK/C,EAAMO,EAAQyC,aAGtB,OACW,OAARD,IACAyB,GAAU,uBAKR,IAAI/D,UAAU,sBAAwBgE,MAE5CD,SACAtB,EAAS,CAAClD,KAAAA,EAAMf,MAAO8D,EAAKxC,OAAAA,EAAQC,eAAgBwC,QAC/CL,gBAAgBO,EAAQzD,EAAU,SAChCyD,OAGR,GAAe,MAAXC,EAAI,IAAcJ,GAAOxE,EAAW6B,KAAK2C,EAAKI,EAAIrE,MAAM,IAAK,KAC9D+F,EAAU1B,EAAIrE,MAAM,GAC1BuE,EAAO1D,KAAKkC,OACRuB,EAAGL,EAAI8B,GAAUlG,EAAKqB,EAAM6E,GAAU9B,EAAK8B,EAASpF,EACpDwC,GAAY,SAEb,GAAIkB,EAAIuB,SAAS,KAAM,0oBACZvB,EAAI2B,MAAM,qCACE,KAAfC,UACP1B,EAAO1D,KAAKkC,OACR9C,EAAQgG,EAAM3B,GAAIL,EAAK/C,EAAMO,EAAQyC,EAAgBvD,GACrD,yCAKPwD,GAAmBF,GAAOxE,EAAW6B,KAAK2C,EAAKI,IAEhDE,EACI1D,KAAKkC,OAAOuB,EAAGL,EAAII,GAAMxE,EAAKqB,EAAMmD,GAAMJ,EAAKI,EAAK1D,EAChDwC,GAAY,OAOpBtC,KAAKgC,uBACA,IAAI6B,EAAI,EAAGA,EAAI5C,EAAIa,OAAQ+B,IAAK,KAC3BwB,EAAOpE,EAAI4C,MACbwB,GAAQA,EAAKhD,iBAAkB,KACzBiD,EAAMtF,KAAKkC,OACbmD,EAAKzF,KAAMwD,EAAKiC,EAAKhF,KAAMO,EAAQyC,EAAgBvD,EACnDwC,MAEAb,MAAMC,QAAQ4D,GAAM,CACpBrE,EAAI4C,GAAKyB,EAAI,WACPC,EAAKD,EAAIxD,OACN0D,EAAK,EAAGA,EAAKD,EAAIC,IACtB3B,IACA5C,EAAIwE,OAAO5B,EAAG,EAAGyB,EAAIE,SAGzBvE,EAAI4C,GAAKyB,UAKlBrE,GAGXvB,EAASZ,UAAUgF,MAAQ,SACvBN,EAAK5D,EAAMwD,EAAK/C,EAAMO,EAAQyC,EAAgBvD,EAAU4F,MAEpDjE,MAAMC,QAAQ0B,WACRuC,EAAIvC,EAAItB,OACL8D,EAAI,EAAGA,EAAID,EAAGC,IACnBF,EAAEE,EAAGpC,EAAK5D,EAAMwD,EAAK/C,EAAMO,EAAQyC,EAAgBvD,QAEhDsD,GAAsB,WAAfjD,EAAOiD,IACrBvE,OAAOgH,KAAKzC,GAAKQ,SAAQ,SAACG,GACtB2B,EAAE3B,EAAGP,EAAK5D,EAAMwD,EAAK/C,EAAMO,EAAQyC,EAAgBvD,OAK/DJ,EAASZ,UAAU2F,OAAS,SACxBjB,EAAK5D,EAAMwD,EAAK/C,EAAMO,EAAQyC,EAAgBvD,MAEzC2B,MAAMC,QAAQ0B,QACb0C,EAAM1C,EAAItB,OAAQiE,EAAQvC,EAAI2B,MAAM,KACtCa,EAAQD,EAAM,IAAMf,OAAOiB,SAASF,EAAM,KAAQ,EAClDG,EAASH,EAAM,IAAMf,OAAOiB,SAASF,EAAM,KAAQ,EACnDI,EAAOJ,EAAM,IAAMf,OAAOiB,SAASF,EAAM,KAAQD,EACrDI,EAASA,EAAQ,EAAKE,KAAKC,IAAI,EAAGH,EAAQJ,GAAOM,KAAKE,IAAIR,EAAKI,GAC/DC,EAAOA,EAAM,EAAKC,KAAKC,IAAI,EAAGF,EAAML,GAAOM,KAAKE,IAAIR,EAAKK,WACnDlF,EAAM,GACH2E,EAAIM,EAAON,EAAIO,EAAKP,GAAKI,EAAM,CACxBhG,KAAKkC,OACb9C,EAAQwG,EAAGhG,GAAOwD,EAAK/C,EAAMO,EAAQyC,EAAgBvD,GAAU,GAO/D8D,SAAQ,SAACC,GACT5C,EAAIjC,KAAK6E,aAGV5C,IAGXvB,EAASZ,UAAU6F,MAAQ,SACvB4B,EAAMC,EAAIC,EAAQpG,EAAMO,EAAQyC,GAE5BkD,EAAKxB,SAAS,0BACTxD,YAAYmF,kBAAoBrD,EACrCkD,EAAOA,EAAK3B,QAAQ,mBAAqB,sBAEzC2B,EAAKxB,SAAS,kBACTxD,YAAYoF,UAAY/F,EAC7B2F,EAAOA,EAAK3B,QAAQ,WAAa,cAEjC2B,EAAKxB,SAAS,oBACTxD,YAAYqF,YAAcH,EAC/BF,EAAOA,EAAK3B,QAAQ,aAAe,gBAEnC2B,EAAKxB,SAAS,gBACTxD,YAAYsF,QAAUnH,EAASiC,aAAatB,EAAKuC,OAAO,CAAC6D,KAC9DF,EAAOA,EAAK3B,QAAQ,SAAW,YAE/B2B,EAAKxB,SAAS,gBACTxD,YAAYuF,QAAU9G,KAAKI,KAChCmG,EAAOA,EAAK3B,QAAQ,SAAW,YAE9B,+EAAeJ,KAAK+B,UAChBhF,YAAYwF,KAAOP,EACxBD,EAAOA,EAAK3B,QAAQ,gFAAgB,sBAG7B5E,KAAKgH,GAAGC,gBAAgBV,EAAMvG,KAAKuB,aAC5C,MAAOtB,SAELiH,QAAQC,IAAIlH,GACN,IAAIR,MAAM,aAAeQ,EAAEmH,QAAU,KAAOb,KAO1D7G,EAAS2H,MAAQ,GAMjB3H,EAASiC,aAAe,SAAU2F,WACxB7D,EAAI6D,EAAS3B,EAAIlC,EAAE3B,OACrBqC,EAAI,IACCyB,EAAI,EAAGA,EAAID,EAAGC,IACb,iLAAsBpB,KAAKf,EAAEmC,MAC/BzB,GAAM,aAAcK,KAAKf,EAAEmC,IAAO,IAAMnC,EAAEmC,GAAK,IAAQ,KAAOnC,EAAEmC,GAAK,aAGtEzB,GAOXzE,EAASqD,UAAY,SAAUD,WACrBW,EAAIX,EAAS6C,EAAIlC,EAAE3B,OACrBqC,EAAI,GACCyB,EAAI,EAAGA,EAAID,EAAGC,IACb,iLAAsBpB,KAAKf,EAAEmC,MAC/BzB,GAAK,IAAMV,EAAEmC,GAAG2B,WACX3C,QAAQ,KAAO,MACfA,QAAQ,MAAQ,cAGtBT,GAOXzE,EAASmC,YAAc,SAAUjC,OACtByH,EAAS3H,EAAT2H,SACHA,EAAMzH,UAAgByH,EAAMzH,GAAMgD,aAChC4E,EAAO,GAoCP5F,EAnCahC,EAEdgF,QACG,sGACA,QAIHA,QAAQ,wLAA2B,SAAU6C,EAAIC,SACvC,MAAQF,EAAKxI,KAAK0I,GAAM,GAAK,OAGvC9C,QAAQ,uCAA2B,SAAU6C,EAAIE,SACvC,KAAOA,EACT/C,QAAQ,MAAQ,OAChBA,QAAQ,KAAO,UAChB,QAGPA,QAAQ,KAAO,OAEfA,QAAQ,+CAAqC,KAE7CA,QAAQ,OAAS,KAEjBA,QAAQ,UAAY,KAEpBA,QAAQ,sBAAuB,SAAU6C,EAAIG,SACnC,IAAMA,EAAIzC,MAAM,IAAI0C,KAAK,KAAO,OAG1CjD,QAAQ,UAAY,QAEpBA,QAAQ,cAAgB,IAEDO,MAAM,KAAK2C,KAAI,SAAUC,OAC3CC,EAAQD,EAAIC,MAAM,oBAChBA,GAAUA,EAAM,GAAWR,EAAKQ,EAAM,IAAjBD,YAEjCV,EAAMzH,GAAQgC,EACPyF,EAAMzH,GAAMgD,UClqBvBlD,EAASZ,UAAUkI,GAAK,CAOpBC,yBAAiBrH,EAAMqI,OACbpC,EAAOhH,OAAOgH,KAAKoC,GACnBC,EAAQ,IAnBK,SAAUC,EAAQC,EAAQC,WAC3CC,EAAKH,EAAOrG,OACT8D,EAAI,EAAGA,EAAI0C,EAAI1C,IAEhByC,EADSF,EAAOvC,KAEhBwC,EAAOpJ,KAAKmJ,EAAO1C,OAAOG,IAAK,GAAG,IAetC2C,CAAmB1C,EAAMqC,GAAO,SAACM,SACE,mBAAjBP,EAAQO,UAEpBC,EAAS5C,EAAKiC,KAAI,SAACY,EAAI9C,UAClBqC,EAAQS,MAGbC,EAAaT,EAAM3F,QAAO,SAACqG,EAAGC,OAC5BC,EAAUb,EAAQY,GAAMtB,iBACtB,WAAa/C,KAAKsE,KACpBA,EAAU,YAAcA,GAErB,OAASD,EAAO,IAAMC,EAAU,IAAMF,IAC9C,IAKG,qBAAuBpE,KAH7B5E,EAAO+I,EAAa/I,IAIfiG,EAAKd,SAAS,eAEfnF,EAAO,6BAA+BA,OASpCmJ,GAHNnJ,EAAOA,EAAKgF,QAAQ,yEAAU,KAGAoE,YAAY,KACpCzC,EAAQwC,GAAoB,EAC5BnJ,EAAKT,MAAM,EAAG4J,EAAmB,GAC/B,WAAanJ,EAAKT,MAAM4J,EAAmB,GAC7C,WAAanJ,SAGZqJ,EAAKC,WAAYrD,WAAMU,oBAAUkC"} \ No newline at end of file diff --git a/dist/index-node-cjs.cjs b/dist/index-node-cjs.cjs index 7129860..c75d20e 100644 --- a/dist/index-node-cjs.cjs +++ b/dist/index-node-cjs.cjs @@ -12,7 +12,7 @@ const { hasOwnProperty: hasOwnProp } = Object.prototype; /** -* @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject +* @typedef {null|boolean|number|string|object|JSON[]} JSON */ /** @@ -60,8 +60,8 @@ class NewError extends Error { } /** * @typedef {PlainObject} ReturnObject -* @property {string} path -* @property {JSONObject} value +* @property {string[]} path +* @property {JSON} value * @property {PlainObject|GenericArray} parent * @property {string} parentProperty */ @@ -76,8 +76,8 @@ class NewError extends Error { /** * @callback OtherTypeCallback -* @param {JSONObject} val -* @param {string} path +* @param {JSON} val +* @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @returns {boolean} @@ -306,8 +306,8 @@ JSONPath.prototype._handleCallback = function (fullRetObj, callback, type) { /** * * @param {string} expr - * @param {JSONObject} val - * @param {string} path + * @param {JSON} val + * @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @param {JSONPathCallback} callback diff --git a/dist/index-node-esm.js b/dist/index-node-esm.js index ce2bc22..29d2a0f 100644 --- a/dist/index-node-esm.js +++ b/dist/index-node-esm.js @@ -4,7 +4,7 @@ const { hasOwnProperty: hasOwnProp } = Object.prototype; /** -* @typedef {null|boolean|number|string|PlainObject|GenericArray} JSONObject +* @typedef {null|boolean|number|string|object|JSON[]} JSON */ /** @@ -52,8 +52,8 @@ class NewError extends Error { } /** * @typedef {PlainObject} ReturnObject -* @property {string} path -* @property {JSONObject} value +* @property {string[]} path +* @property {JSON} value * @property {PlainObject|GenericArray} parent * @property {string} parentProperty */ @@ -68,8 +68,8 @@ class NewError extends Error { /** * @callback OtherTypeCallback -* @param {JSONObject} val -* @param {string} path +* @param {JSON} val +* @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @returns {boolean} @@ -298,8 +298,8 @@ JSONPath.prototype._handleCallback = function (fullRetObj, callback, type) { /** * * @param {string} expr - * @param {JSONObject} val - * @param {string} path + * @param {JSON} val + * @param {string[]} path * @param {PlainObject|GenericArray} parent * @param {string} parentPropName * @param {JSONPathCallback} callback